Blog

Benutzernamen-Enumeration vermeiden | Secure Code Warrior

October 9, 2017
Pieter De Cremer
Anmeldebildschirm mit Feldern für Benutzername und Passwort, wobei das Passwort durch Sternchen maskiert ist.

Ein Seitenkanalangriff liegt vor, wenn ein Hacker Informationen aus der physischen Implementierung eines Softwaresystems gewinnt, anstatt eine theoretische Schwachstelle im Algorithmus oder einen Fehler im Code der Software auszunutzen.

Ein Beispiel, das ich gerne verwende, um dies zu verdeutlichen, ist eine Methode zur Benutzernamen-Enumeration. Wenn Sie wissen möchten, was Benutzernamen-Enumeration ist oder warum sie gefährlich ist, besuchen Sie unsere Website für eine Videoerklärung oder spielen Sie eine Challenge, um zu sehen, ob Sie sie im Code identifizieren können.

Um zu verstehen, wie Benutzernamen-Enumeration durch einen Seitenkanalangriff durchgeführt werden kann, müssen Sie wissen, wie Passwörter in modernen Webanwendungen gehandhabt werden (oder zumindest sollten). Eine gute Webanwendung kennt Ihr Passwort nicht und speichert es nirgendwo. Woher weiß sie also, dass Ihre Eingabe korrekt ist? Nun, Ihr Passwort wird gehasht.

Eine Hash-Funktion ist eine mathematische Operation, die in eine Richtung leicht durchzuführen (wenn auch rechenintensiv), aber nur sehr schwer umkehrbar ist. Bei guten Hash-Algorithmen ist das Ergebnis einzigartig. Bei der Registrierung wird nur dieser Hash sicher gespeichert. Bei jedem Login hasht die Anwendung Ihre Eingabe und vergleicht das Ergebnis mit dem gespeicherten Hash. Mehr über sichere Passwortspeicherung erfahren Sie auf unserer Plattform.

Hacker in hooded sweatshirt accessing a screen showing user data with passwords and credit card numbers.

Das Hashing von Eingaben kostet Zeit, und Entwickler versuchen stets, ihren Code für eine reibungslose Nutzererfahrung zu optimieren. Eine Methode zur Beschleunigung ist das Überspringen des Hashings, wenn es nicht nötig ist. Wenn der Benutzername nicht existiert, kann das System sofort antworten und die langsame Berechnung überspringen. Ist der Benutzername korrekt, wird das Passwort gehasht und verglichen.

Sie ahnen vielleicht schon, wo das Problem liegt. Obwohl das Hashing nur Millisekunden dauert, kann ein Hacker diese Verzögerung nutzen, um festzustellen, ob der Benutzername korrekt war, da ein falscher Benutzername eine etwas schnellere Antwort liefert. Diese Art von Seitenkanalangriff nennt man Timing-Angriff. Er zeigt, dass sich nicht-funktionale Anforderungen manchmal widersprechen: Code kann nicht immer gleichzeitig schnell und sicher sein.

Auch wenn Passwörter perfekt gehandhabt werden und die Fehlermeldung generisch ist, bleibt das System anfällig. Die Lösung ist einfach: Hashen Sie das Passwort immer oder verzögern Sie die Antwort um die Zeit, die das Hashing in Anspruch genommen hätte.

Die gewonnenen Informationen können von einem Angreifer genutzt werden, um eine Liste der Systembenutzer zu erstellen. Diese Informationen dienen dann als Grundlage für weitere Angriffe auf die Webanwendung, beispielsweise durch Brute-Force oder das Ausprobieren von Standard-Benutzernamen und -Passwörtern.

https://www.owasp.org/index.php/Testing_for_User_Enumeration_and_Guessable_User_Account_(OWASP-AT-002)

Slogan

Kontrollieren Sie KI-gestützte Entwicklung, bevor sie in Produktion geht

Bewerten Sie KI-gestützte Risiken, setzen Sie Richtlinien für sicheren Code direkt beim Commit durch und beschleunigen Sie die sichere Bereitstellung über Ihren gesamten SDLC hinweg.

Demo buchen
Ressourcenbibliothek

Weitere Blogs entdecken

Erhalten Sie Zugang zu Experteninhalten über sichere Programmierung, KI-Governance und Software-Risikomanagement.

alle anzeigen
Fallstudie
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Supercharged Security Awareness: How Tournaments are Inspiring Developers at Erste Group

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Mehr erfahren
Fallstudie
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Security as culture: How Blue Prism cultivates world-class secure developers

Learn how Blue Prism, the global leader in intelligent automation for the enterprise, used Secure Code Warrior's agile learning platform to create a security-first culture with their developers, achieve their business goals, and ship secure code at speed

Mehr erfahren
Fallstudie
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Eine Sicherheitskultur: Wie Sage sein Champions-Programm aufgebaut hat

Erfahren Sie, wie Sage die Sicherheit durch einen flexiblen, beziehungsorientierten Ansatz gestärkt, über 200 Security Champions ausgebildet und eine messbare Risikoreduzierung erzielt hat.

Mehr erfahren
Blog
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Cybersecurity Awareness Month 2026: Das Verständnis von KI-Sicherheit ist entscheidend für die Unternehmensverteidigung

Wir haben einen Punkt erreicht, an dem die meisten führenden KI-Unternehmen öffentlich eine weltweite Verlangsamung der KI-Entwicklung gefordert haben, damit die Sicherheitsvorkehrungen Schritt halten können. Doch die Wahrheit ist: Ernsthafte Sicherheitsprobleme sind bereits Realität geworden. Dies bringt unzählige Sicherheitsverantwortliche und Führungsteams in eine dringliche Lage, da die finanziellen Kosten und Risiken durch die Implementierung von KI stetig steigen.

Mehr erfahren
Blog
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Enabler 8: Branding für Ihr Programm

Ein Programm für sicheres Programmieren braucht mehr als nur großartige Inhalte, um erfolgreich zu sein. Enabler 8 zeigt, wie Branding die Teilnahme zu einem begehrten, statusorientierten Erlebnis macht.

Mehr erfahren
Blog
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Jeder Mitarbeiter steht jetzt an vorderster Front der KI-Cybersicherheit

Die Unternehmenslandschaft wandelt sich mit einer Geschwindigkeit, die kaum jemand vorhergesehen hat, bis es zu spät war. Wir haben offiziell die Schwelle von handgeschriebenem Code und einfacher Copilot-Unterstützung hin zur Ära des Agentic Development Lifecycle (ADLC) überschritten. Während autonome KI-Agenten eine beispiellose Effizienz in vielen Bereichen versprechen, bringen sie auch eine völlig neue Klasse von Sicherheits- und Regulierungsrisiken mit sich.

Mehr erfahren

Sichere KI-gestützte Entwicklung vor dem Release

Erkennen Sie Entwicklerrisiken, setzen Sie Richtlinien durch und verhindern Sie Schwachstellen über den gesamten Softwareentwicklungszyklus hinweg.

Demo buchen
Keine Elemente gefunden.