wake-up-neo.com

Wie kann ich eine passwortlose Anmeldefunktion sicher implementieren?

Habe gerade ein neues Plugin gepostet: Keine weiteren Passwörter

Ich habe es derzeit als Beta markiert, da die Anmeldung auf einer Plattform ein heikles Problem darstellt und ich nicht möchte, dass etwas veröffentlicht wird, das möglicherweise Sicherheitslücken aufweist. Also hier ist meine Frage:

Ist es sicher?

Ich habe Folgendes getan, um die Sicherheit zu gewährleisten:

  1. Benutzername/Passwort werden nie hin- und hergereicht, nur der eindeutige Hash.
  2. Hash wird aus der Datenbank entfernt, sobald es verwendet wird. Alte Hashes, die noch nicht verwendet wurden, können nur dann verwendet werden, wenn die Datenbank gehackt wurde. In diesem Fall treten jedoch größere Probleme auf.
  3. Alle Datenbankabfragen des Hashs wurden maskiert, um XSS-Angriffe zu verhindern.
  4. nonce zu ajax call hinzugefügt.
  5. nonce und Bestätigung auf dem Mobilgerät hinzugefügt, um CSRF-Angriffe zu verhindern.

Hier habe ich eine vollständige Beschreibung von wie es funktioniert .

Nächste Version Ich hoffe, oauth über Twitter zu implementieren, da iOS jetzt hat es funktioniert in ...

Vielen Dank für Ihre Eingabe im Voraus.

Bearbeiten: Ich habe beschlossen, als zusätzliche Ebene eine Sitzungs-ID-Prüfung hinzuzufügen, um sicherzustellen, dass sich derselbe Browser anmeldet wie der Browser, der die QR-Code-Anmeldung initiiert hat.

10
jackreichert

(Ich bin ein Trottel für alternative Login-Schemata)

Einige Tipps zur DB-Flucht:

  • Sie verwenden mysql_real_escape_string() direkt. Die bevorzugte Methode ist die Verwendung von $wpdb->prepare() oder esc_sql().

  • UPDATE-Abfragen werden am besten von $wpdb->update() behandelt

5
scribu

Ich denke, es ist eine großartige Idee, aber wie immer ist die größte Schwäche der menschliche Faktor. In diesem Fall würde das Telefon selbst verloren gehen, gestohlen oder abgefangen. Haben Sie darüber nachgedacht, eine 2-Ebenen-Authentifizierung hinzuzufügen, beispielsweise einen SMS -Verifizierungscode (wie Google Mail usw.)? Oder eine Alternative, die einfacher ist, wäre ein Cookie + ein geheimes Wort.

Können Sie auch erwähnen, welcher Algorithmus den QR-Code auf Ihrer About-Seite generiert?

5
Wyck