SMS-2FA einführen: der komplette Sicherheitsleitfaden für Unternehmen
SMS als zweiter Login-Faktor hat einen Vorteil gegenüber Authenticator-Apps und Push: Es kommt immer an, auf jedem Telefon, ohne Installation und ohne Konto in einer Extra-App. Für die meisten SaaS-, Banking- und E-Commerce-Apps ist es der optimale Kompromiss zwischen Sicherheit und Reichweite. Dieser Leitfaden zeigt, wie man SMS-2FA sicher und missbrauchsresistent einführt.
Wann SMS-2FA sinnvoll ist (und wann nicht)
SMS eignet sich als 2FA überall, wo Reichweite und Einfachheit zählen: Panel-Login, Zahlungsbestätigung (PSD2 SCA), Nummernverifizierung bei der Registrierung, Autorisierung sensibler Vorgänge. Es ist auch der beste Fallback, wenn eine Push-Benachrichtigung nicht ankommt.
Ehrlich zu den Grenzen: Für Konten mit höchstem Risiko sind Hardware-Keys oder TOTP zu erwägen, da SMS theoretisch für SIM-Swapping anfällig ist. Für 95% der Geschäftsanwendungen bleibt SMS jedoch das beste Verhältnis aus Sicherheit und Conversion.
Architektur: OTP-Logik nicht selbst halten
Der häufigste Fehler ist das Erzeugen und Speichern von Codes in der eigenen Datenbank – unnötiges Risiko. Mit unserer 2FA-API erledigen Sie das mit zwei Aufrufen:
POST /otp/send → erzeugt und sendet den Code
POST /otp/verify → prüft den Code, gibt true/false zurückCodelänge (4, 6 oder 8 Ziffern) und Lebensdauer (30 Sekunden bis 10 Minuten) konfigurieren Sie selbst. 6 Ziffern und 5 Minuten sind ein sinnvoller Standard.
Rate-Limiting und Missbrauchsschutz
Ohne Limits wird 2FA zum Angriffsvektor – und zu einem teuren, da jede SMS Geld kostet. Setzen Sie mehrschichtigen Schutz ein:
- Limit pro Nummer – max. 3–5 Codes pro Stunde pro Nummer (schützt vor „SMS-Bombing").
- Cooldown – mindestens 30–60 Sekunden zwischen Code-Anfragen.
- Limit der Verifizierungsversuche – Sperre nach 3–5 falschen Codes gegen Brute-Force.
- Limit pro IP – begrenzen Sie die Nummern pro Adresse.
Unsere API hat eingebautes Rate-Limiting pro Nummer und ein vollständiges Audit-Log jedes OTP.
Zustellbarkeit = Sicherheit
Ein Code, der nicht ankommt, bedeutet einen ausgesperrten Nutzer – in der Praxis einen abgebrochenen Warenkorb oder ein Support-Ticket. Die mediane SMS-Zustellzeit in Polen liegt bei rund 2 Sekunden. Entscheidend ist die Routenqualität: Failover auf einen alternativen Betreiber rettet die Lage, wenn der erste Versuch scheitert. Als bei der UKE registrierter polnischer Betreiber haben wir direkte Anbindungen an die nationalen Netze.
Code-UX: kleine Details mit Wirkung
Sicherheit darf den Komfort nicht töten. Bewährt: Servicename und Code nahe am Anfang der Nachricht (iOS/Android-Autofill liest ihn); Präfix @domain #code für die Web-OTP-API; keinen Link und Code in einer SMS (schult Phishing). Setzen Sie das Absenderfeld auf Ihren Markennamen – siehe unseren Beitrag zur Sender-ID.
PSD2- und DSGVO-Konformität
Im Zahlungsverkehr ist SMS-OTP ein akzeptiertes Element der starken Kundenauthentifizierung (SCA) – kombiniert mit einem Wissensfaktor (Passwort/PIN) für volle PSD2-Konformität. Datenseitig: Wir verarbeiten Nummern nur auf EU-Servern, mit vollständigem AVV, und speichern Logs nur so lange, wie das Gesetz verlangt. Integrationsdetails in der Dokumentation, Testkonto mit 100 Gratis-SMS auf der Registrierungsseite.
FAQ
Muss ich OTP-Codes selbst erzeugen und speichern?+
Nein. /otp/send erzeugt und sendet den Code, /otp/verify validiert ihn. Sie halten keine Logik und keine Codes auf Ihrer Seite.
Wie schütze ich vor Flooding (SMS-Bombing)?+
Die API hat Rate-Limiting pro Nummer (z. B. 3–5 Codes/Stunde) und ein Audit-Log. Ergänzen Sie Cooldown, Limit falscher Versuche und Limit pro IP.
Erfüllt SMS-2FA die PSD2-SCA-Anforderungen?+
Ja. SMS-OTP ist ein akzeptiertes „Besitz"-Element der starken Kundenauthentifizierung. Kombinieren Sie es mit einem Wissensfaktor (Passwort).
Ist SMS-2FA trotz SIM-Swap-Risiko sicher?+
Für die meisten Geschäftsanwendungen ja – bestes Verhältnis aus Sicherheit und Conversion. Für Extremrisiko ergänzen Sie TOTP oder Hardware-Keys.