2FA und TOTP - funktioniert das auch ohne Dienstleister?
Trotz Recherche im Web fand ich bisher keine Beschreibung, die meine Unsicherheit ausgeräumt hätte.
Wenn ich denn schon 2FA + TOTP nutze, dann möchte ich wenigstens von Drittanbietern unabhängig sein. Geht das überhaupt? Oder muss ich z.B. FreeIPA oder andere nutzen, damit die TOTPs generiert werden?
Konkret: Ich betreibe mehrere Websites – bisher nur mit Username + Passwort. Beide sind 20-stellige Zufalls-Passworte, die mit KeePass generiert wurden. Bisher denke ich, dass das sicher genug ist, auch in der heutigen Zeit.
Jetzt hat mich ein IT-ler verunsichert und meinte, ich würde erst mit 2FA sicher gehen können in der heutigen Zeit. Also habe ich mir über F-Droid die App FreeOTP+ auf meinem Android installiert. In deren Beschreibung steht aber wieder etwas von Verbindungen zu Dienstleistern wie Google (ausgerechnet!!!) oder FreeIPA usw.
Solange ich keine Antwort auf die folgenden Fragen im Web oder hier im Forum finden kann, werde ich gewiss keine 2FA + TOTPs nutzen.
Fragen:
Wenn ich auf meinen Websites 2FA aktiviere und dann den Barcode in die App scanne, reicht das dann aus, dass die App beim nächsten Einloggen mir ein passendes OTP generiert?
Woher "weiß" meine Website, dass das OTP korrekt ist?
Und was ist, wenn mein Smartphone defekt wird? Wie komme ich dann noch an meine Websites, die ja dann auf einem OTP bestehen werden?
Wenn ich denn schon 2FA + TOTP nutze, dann möchte ich wenigstens von Drittanbietern unabhängig sein. Geht das überhaupt? Oder muss ich z.B. FreeIPA oder andere nutzen, damit die TOTPs generiert werden?
Konkret: Ich betreibe mehrere Websites – bisher nur mit Username + Passwort. Beide sind 20-stellige Zufalls-Passworte, die mit KeePass generiert wurden. Bisher denke ich, dass das sicher genug ist, auch in der heutigen Zeit.
Jetzt hat mich ein IT-ler verunsichert und meinte, ich würde erst mit 2FA sicher gehen können in der heutigen Zeit. Also habe ich mir über F-Droid die App FreeOTP+ auf meinem Android installiert. In deren Beschreibung steht aber wieder etwas von Verbindungen zu Dienstleistern wie Google (ausgerechnet!!!) oder FreeIPA usw.
Solange ich keine Antwort auf die folgenden Fragen im Web oder hier im Forum finden kann, werde ich gewiss keine 2FA + TOTPs nutzen.
Fragen:
Wenn ich auf meinen Websites 2FA aktiviere und dann den Barcode in die App scanne, reicht das dann aus, dass die App beim nächsten Einloggen mir ein passendes OTP generiert?
Woher "weiß" meine Website, dass das OTP korrekt ist?
Und was ist, wenn mein Smartphone defekt wird? Wie komme ich dann noch an meine Websites, die ja dann auf einem OTP bestehen werden?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 3175818212
Url: https://administrator.de/contentid/3175818212
Ausgedruckt am: 21.11.2024 um 18:11 Uhr
8 Kommentare
Neuester Kommentar
Zitat von @Mystery-at-min:
Nun, es muss auch einen Austausch geben. Nur irgendein Code hilft ja nicht. Irgendwie muss die App mit dem Auth-Backend der Seite usw verknüpft sein und diesen Code verifizieren.
Nun, es muss auch einen Austausch geben. Nur irgendein Code hilft ja nicht. Irgendwie muss die App mit dem Auth-Backend der Seite usw verknüpft sein und diesen Code verifizieren.
TOTP ist einfach ein privater Schlüssel, der vom Server generiert und i.d.R. per QR-Code mit einer beliebigen TOTP-Authenticator-App geteilt wird.
Danach kann in der App ein jeweils 30s lang gültiger Code generiert werden, der dann zusätzlich beim Login eingegeben wird.
Ist universell und funktioniert sogar in isolierten Netzwerken. Und erst recht ohne externen Dienstleister.
Und weil der Code nur 30s gültig ist, müssen die Webseite und die TOTP-App die gleiche Uhrzeit haben, weil sonst die Codes nicht passen.
Tipp, für Backup Du kannst den Code, der zum Generieren gescannt wird, auch speichern z.b. in KeePass.
Damit hast Du bei Smartphone Verlust ein Backup davon. Und es gibt auch KeePass Plugins, die dann Dir den 2FA Code alle 30 Sek neu berechnen, was dann den Sinn vom 2FA ein wenig aushebelt, aber so ist das nun mal.
Es gab auch mal die Möglichkeit diese Codes aus dem Google Authenticator Backup auszulesen, aber ich glaube, das wurde geändert.
Generell rate ich davon ab, seinen zweiten Faktor von einem Gerät abhängig machen.
Damit hast Du bei Smartphone Verlust ein Backup davon. Und es gibt auch KeePass Plugins, die dann Dir den 2FA Code alle 30 Sek neu berechnen, was dann den Sinn vom 2FA ein wenig aushebelt, aber so ist das nun mal.
Es gab auch mal die Möglichkeit diese Codes aus dem Google Authenticator Backup auszulesen, aber ich glaube, das wurde geändert.
Generell rate ich davon ab, seinen zweiten Faktor von einem Gerät abhängig machen.
Moin, erstmal solltest du dir überlegen was du denn unter "Sicher" überhaupt verstehst. Du kannst 20 Zeichen nutzen, du kannst 2FA nutzen,... - es ist immer nur eine Frage des Aufwandes. Dein ganzer Kram bringt dir nämlich mal so rein gar nix wenn der Angreifer gezielt vorgeht und ggf. deinen Rechner direkt übernimmt (oder teile deiner Infra).
"Sicher" ist in sofern nur die Dienste wirklich auf ein absolutes Minimum zu reduzieren - was aber eher unwahrscheinlich ist. Was passiert zB. wenn du bei deiner 2FA das Problem hast das jemand in der generierungs-SW nen Problem findet (und wie man schon öfters gesehen hat - selbst bei "Standard"-Implementierungen wie OpenSSL,... wurde nach zig Jahren noch was gefunden).. Andersrum glaube ich persönlich das heute ein gezielter Angriff auch gar nicht mehr gross über die Auth geht - entweder gegen das Gerät des Ziels oder gegen die Infra des Anbieters selbst (blöd wenn du 100 Zeichen als Passwort hast, 17 Auth-Faktoren -> der aber einfach zB. alle deine Daten "offen" auf den Server legt oder die sogar versehentlich im Web abrufbar macht).
Von daher ist einfach die Frage - wie Sicher willst du es haben und was ist für DICH der Mittelweg zwischen "Sicher" und "Machbar"? Zumal du ja auch bei 2FA noch immer irgendeinen Weg brauchst um ranzukommen - ist ja zB. blöd wenn du deinen Mail-Account per 2FA sicherst, das immer übers Handy entsperrst und im Urlaub irgendwo am A... der Welt wird dir das Handy geklaut/du verlierst est/geht kaputt... und du kommst mal an so gar nix mehr ran...
"Sicher" ist in sofern nur die Dienste wirklich auf ein absolutes Minimum zu reduzieren - was aber eher unwahrscheinlich ist. Was passiert zB. wenn du bei deiner 2FA das Problem hast das jemand in der generierungs-SW nen Problem findet (und wie man schon öfters gesehen hat - selbst bei "Standard"-Implementierungen wie OpenSSL,... wurde nach zig Jahren noch was gefunden).. Andersrum glaube ich persönlich das heute ein gezielter Angriff auch gar nicht mehr gross über die Auth geht - entweder gegen das Gerät des Ziels oder gegen die Infra des Anbieters selbst (blöd wenn du 100 Zeichen als Passwort hast, 17 Auth-Faktoren -> der aber einfach zB. alle deine Daten "offen" auf den Server legt oder die sogar versehentlich im Web abrufbar macht).
Von daher ist einfach die Frage - wie Sicher willst du es haben und was ist für DICH der Mittelweg zwischen "Sicher" und "Machbar"? Zumal du ja auch bei 2FA noch immer irgendeinen Weg brauchst um ranzukommen - ist ja zB. blöd wenn du deinen Mail-Account per 2FA sicherst, das immer übers Handy entsperrst und im Urlaub irgendwo am A... der Welt wird dir das Handy geklaut/du verlierst est/geht kaputt... und du kommst mal an so gar nix mehr ran...