How to Prevent Brute Force Attacks

So verhindern Sie Brute-Force-Angriffe: 9 bewährte Kontrollen

Von Benish Parvaiz·

Um Brute-Force-Angriffe zu verhindern, fordern Sie eine Multi-Faktor-Authentifizierung bei jeder Anmeldung im Internet, begrenzen Sie die Anzahl fehlgeschlagener Versuche nach Konto, IP und global, blockieren Sie gehackte Passwörter, speichern Sie Hashes mit Argon2id oder bcrypt und warnen Sie bei ungewöhnlichen Anmeldefehlern. Überlagern Sie diese Steuerelemente, da nicht jede einzelne Variante gestoppt werden kann.

Öffnen Sie das Authentifizierungsprotokoll eines beliebigen SSH-Servers einige Stunden, nachdem er online gegangen ist, und Sie werden Folgendes sehen:

3. Okt. 02:14:07 web01 sshd[2231]: Passwort für Root von 203.0.113.45 Port 51022 ssh2 fehlgeschlagen
3. Okt. 02:14:09 web01 sshd[2233]: Passwort für Administrator von 198.51.100.17, Port 40318 ssh2, fehlgeschlagen
3. Okt. 02:14:11 web01 sshd[2236]: Fehlgeschlagenes Passwort für Ubuntu von 192.0.2.88 Port 33874 ssh2

Drei Benutzernamen, drei IPs, zwei Sekunden Abstand. Niemand tippt. Bots testen jede Anmeldeseite, jeden SSH-Port und jeden API-Endpunkt, den sie finden, und eine einzige erfolgreiche Vermutung führt direkt zuKontoübernahme. Im Folgenden finden Sie neun Kontrollen, sortiert nach Auswirkung, sowie Informationen dazu, wie Sie einen laufenden Angriff erkennen und darauf reagieren können.

So verhindern Sie Brute-Force-Angriffe: 9 Kontrollen, geordnet nach Auswirkung

  1. Erzwingen Sie die Multi-Faktor-Authentifizierung.Ein richtig erratenes oder durchgesickertes Passwort gewährt keinen Zugriff mehr.

  2. Ratenbegrenzung und Drosselung der Anmeldungen.Langsames Raten mit einer Geschwindigkeit, die es sinnlos macht.

  3. Befolgen Sie die NIST SP 800-63B-Passwortregeln.Bevorzugen Sie die Länge, blockieren Sie gehackte Passwörter und verzichten Sie auf die erzwungene Rotation.

  4. Hash-Passwörter mit Argon2id oder bcrypt.Eine gestohlene Datenbank sollte nicht zu einer geknackten Datenbank werden.

  5. Fügen Sie CAPTCHA und Bot-Erkennung selektiv hinzu.Fordern Sie nur verdächtigen Datenverkehr heraus.

  6. Härten Sie SSH-, RDP-, CMS-Anmeldungen und APIs.Schließen Sie die Dienste, auf die Angreifer zuerst stoßen.

  7. Verwenden Sie IP-Reputation, Georegeln und eine WAF.Unterbinden Sie bekanntermaßen schlechten Verkehr frühzeitig.

  8. Überwachen und melden Sie Authentifizierungsfehler.Fangen Sie, was der Prävention entgeht.

  9. Testen Sie Ihre eigene Abwehr.Vergewissern Sie sich, dass die Kontrollen funktionieren, bevor es ein Angreifer tut.

Sie haben wenig Zeit? Führen Sie zuerst die Kontrollen 1, 2 und 8 durch. MFA begrenzt den Schaden, die Geschwindigkeitsbegrenzung verlangsamt den Angriff und die Überwachung zeigt Ihnen, dass er stattfindet.

Warum sich die Prävention je nach Variante unterscheidet

How to Prevent Brute Force Attacks

Jede Variante wird durch eine andere Steuerung gestoppt. Sie sollten also wissen, mit welcher Sie es zu tun haben.

Variante

So funktioniert es

Protokollsignatur

Beste Kontrolle

Einfache rohe Gewalt

Viele Vermutungen gegen ein Konto

Viele Fehler, ein Benutzername

Drosselung, vorübergehende Sperre

Passwort-Sprühen

Ein paar gängige Passwörter für viele Konten

Ein oder zwei Fehler pro Konto

Pro-IP- und globale Limits, MFA

Credential Stuffing

Durchgesickerte Benutzername-Passwort-Paare erneut abgespielt

Hohes Volumen, rotierende IPs

MFA, Überprüfung von Sicherheitsverletzungen

Offline-Cracking

Raten gegen gestohlene Hashes

Keine auf Ihren Systemen

Argon2id oder bcrypt, lange Passwörter

Durch das Sprühen werden Sperrungen pro Konto verhindert, da bei jedem Konto fast keine Ausfälle auftreten. Offline-Cracking hinterlässt überhaupt keine Spuren, weshalb Hashing auch dann wichtig ist, wenn Ihre Anmeldeseite perfekt ist.

Kontrolle 1: Multi-Faktor-Authentifizierung erzwingen

How to Prevent Brute Force Attacks

MFA steht an erster Stelle, weil es ein korrektes Passwort nicht mehr ausreicht. Nach Stärke sortiert:

  1. Passkeys und FIDO2-Schlüssel.Phishing-resistent, da die Anmeldeinformationen an die echte Domäne gebunden sind.

  2. Authentifizierungs-App TOTP.Solide, obwohl ein Live-Phishing-Proxy den Code weiterleiten kann.

  3. Push mit Nummernübereinstimmung.Blockiert blinde Genehmigungen.

  4. SMS-Codes.Am schwächsten, dem SIM-Tausch ausgesetzt. Nur als Fallback verwenden.

Bekämpfen Sie MFA-Müdigkeit, bei der Angreifer Push-Eingabeaufforderungen spammen, bis jemand zustimmt, mit Nummernabgleich, einer Obergrenze für Eingabeaufforderungen pro Stunde und Warnungen nach wiederholter Ablehnung. Rollout nach Explosionsradius: Admin-Panels und Cloud-Konsolen, dann E-Mail, VPN und Code-Hosting, dann alle anderen. Sperren Sie auch den Wiederherstellungspfad. Lassen Sie niemals zu, dass der Support MFA allein per E-Mail deaktiviert.

Kontrolle 2: Ratenbegrenzung und Drosselung von Anmeldeversuchen

How to Prevent Brute Force Attacks

Ein Bot, der 10.000 Passwörter pro Minute ausprobiert, ist eine Bedrohung. Bis 5 pro Minute gehalten wird es nicht. Drosseln Sie, bevor Sie sperren, denn durch harte Sperren können Angreifer echten Benutzern den Dienst verweigern.

  • Fehler 1 bis 3: keine Verzögerung

  • Fehler ab 4: 1, 2, 4, 8 Sekunden, begrenzt auf 60

  • Nach 10 Fehlern: 15-minütige Sperre plus E-Mail an den Kontoinhaber

Beschränkung auf drei Dimensionen, da jede Variante an einer anderen vorbeigeht: pro Konto (10 Fehler pro 15 Minuten), pro IP (20 Versuche pro Minute) und global (Alarm über 3x Basisfehler).

nginx

limit_req_zone $binary_remote_addr zone=login:10m rate=5r/m;

Standort /login {
    limit_req Zone=Login Burst=3 Nodelay;
    limit_req_status 429;
    Proxy_Pass http://app_backend;
}

Nginx sieht nur IPs, also verwenden Sie Redis-Zähler oder eine WAF für die Konto- und globale Ebene. Wenden Sie dieselben Beschränkungen für das Zurücksetzen von Passwörtern, die MFA-Eingabe (ein 6-stelliger Code hat nur 1.000.000 Kombinationen) und API-Anmelderouten an.

Kontrolle 3: Passwortregeln basierend auf NIST SP 800-63B festlegen

NIST ersetzte alte Komplexitätsregeln durch Leitlinien, die auf den Schätzungen der Angreifer basieren.

  • Bei MFA sind mindestens 8 Zeichen und bei Administratorkonten mindestens 15 Zeichen erforderlich. Erlauben Sie 64 oder mehr.

  • Lassen Sie erzwungene Mischungen aus Symbolen und Zahlen fallen.richtige PferdebatterieklammerschlägtP@ssw0rd!.

  • Überprüfen Sie neue Passwörter anhand der API „Have I Been Pwned Pwned Passwords“, die K-Anonymität verwendet, sodass das vollständige Passwort Ihr System nie verlässt.

  • Beenden Sie die geplante Rotation. Erzwingen Sie ein Zurücksetzen nur bei Anzeichen einer Kompromittierung, z. B. einer übergefundenen Übereinstimmung Dark-Web-Überwachung.

  • Erlauben Sie das Einfügen, damit Passwort-Manager funktionieren.

Wenn ein Prüfer dennoch eine Rotation verlangt, dokumentieren Sie die NIST-Begründung und wenden Sie die strengere Regel nur dort an, wo ein Rahmenwerk dies erfordert.

Kontrolle 4: Hash-Passwörter, um Offline-Angriffe zu stoppen

Ratenbegrenzungen haben keine Auswirkung, sobald ein Angreifer Ihre Datenbank in Besitz nimmt. Eine moderne GPU testet Milliarden von MD5-Vermutungen pro Sekunde, sodass schnelle Hashes innerhalb von Stunden erfolgen. Hier istVerstehen, wie Hashing funktioniertzahlt sich aus. Verwenden Sie einen langsamen, speicherintensiven Algorithmus:

  1. Argon2id.Die aktuelle OWASP-Empfehlung.

  2. verschlüsseln.Starke Alternative.

  3. bcrypt.Kampferprobt, Kostenfaktor 12 oder höher.

  4. PBKDF2.Nur dort, wo die Compliance es erfordert, bei 600.000 oder mehr Iterationen.

Verwenden Sie niemals MD5, SHA-1 oder SHA-256 allein. Bibliotheken kümmern sich um das Salzen, also schreiben Sie es niemals selbst. Stellen Sie den Arbeitsfaktor auf etwa 250 bis 500 ms pro Hash ein und wiederholen Sie den Hash bei der nächsten Anmeldung, wenn sich die Einstellungen verbessern.

Python

aus argon2 PasswordHasher importieren
ph = PasswordHasher(time_cost=2, memory_cost=19456, parallelism=1)
gespeichert = ph.hash(Passwort)
ph.verify(stored, password) # wird bei Nichtübereinstimmung ausgelöst

Überprüfen Sie die Parameter vor dem Versand anhand des aktuellen OWASP-Passwortspeicher-Spickzettels.

Kontrolle 5: CAPTCHA und Bot-Erkennung selektiv hinzufügen

CAPTCHA sorgt für Reibung, nicht für eine Wand. Lösungsdienste verkaufen von Menschen gelöste Herausforderungen günstig, und KI-Modelle lösen mittlerweile viele Bildrätsel. Lösen Sie risikobedingte Herausforderungen aus: drei oder mehr Ausfälle, ein neues Gerät oder Land, Hosting-Provider-IPs oder Headless-Browser-Signaturen. Cloudflare Turnstile, hCaptcha und reCAPTCHA v3 bewerten das Risiko unsichtbar. Kombinieren Sie sie mit Geräte-Fingerprinting und Timing-Analyse und bieten Sie eine zugängliche Alternative für Benutzer, die visuelle Herausforderungen nicht bewältigen können.

Kontrolle 6: Stärken Sie die von Angreifern am meisten betroffenen Dienste

SSH.Entfernen Sie das Passwort und Brute-Force hat nichts zu erraten.

PasswortAuthentifizierungsnr
PermitRootLogin-Nr
AllowUsers stellt den Administrator bereit
MaxAuthTries 3

Schlüssel generieren mitssh-keygen -t ed25519, bestätigen Sie die Schlüsselanmeldung in einer zweiten Sitzung und laden Sie dannneu sshd. Fügen Sie Fail2ban als unterstützende Ebene hinzu. Das Ändern des Ports reduziert das Protokollrauschen, stellt jedoch keine Kontrolle dar.

RDP.Geben Sie niemals Port 3389 frei. Platzieren Sie ihn hinter einem VPN oder Gateway (sehen Sie, wieZTNA und VPN zu modernen Sicherheitsstrategien passen), aktivieren Sie die Authentifizierung auf Netzwerkebene, fordern Sie MFA und legen Sie eine Sperrrichtlinie von 5 Ausfällen für 15 Minuten fest.

WordPress und CMS.Anmeldeversuche begrenzen,blockieren /xmlrpc.php(es istsystem.multicallMethode testet Hunderte von Passwörtern pro Anfrage), beschränken/wp-login.phpnach IP und erzwingen Sie Administrator-MFA.

APIs.Legen Sie mitGrenzwerte pro Schlüssel und pro IP fest 429Antworten, verwenden 332 Byte oder längere Zufallsschlüssel, verfallen Token innerhalb einer Stunde und geben identische Fehler für falsche Benutzernamen und Passwörter zurück.

Kontrolle 7: Verwenden Sie IP-Reputation, Georegeln und eine WAF

Kantenfilterung ist ein Vorfilter und keine primäre Verteidigung. Ziehen Sie Reputations-Feeds wie AbuseIPDB und Spamhaus DROP hinzu, fordern Sie Hosting-Provider-Bereiche und Tor-Exit-Knoten auf Anmelderouten heraus und wenden Sie Georegeln dort an, wo sich Ihre Kunden konzentrieren. Verwenden Sie Step-up-MFA anstelle von harten Sperren, damit Reisende nicht ausgesperrt werden. Stellen Sie ratenbasierte WAF-Regeln (Cloudflare, AWS WAF oder ModSecurity) bereit und beginnen Sie im Zählmodus, bevor Sie zum Blockieren wechseln. Privat-Proxy-Netzwerke rotieren echte Heim-IPs und umgehen all dies, sodass MFA und die Drosselung pro Konto immer noch die Last tragen.

Kontrolle 8: Überwachung und Warnung bei Authentifizierungsfehlern

How to Prevent Brute Force Attacks

Die Prävention schlägt irgendwann fehl und ohne Überwachung sieht eine erfolgreiche Brute-Force-Anmeldung normal aus. GutÜberwachung der Cybersicherheitbeginnt mit den richtigen Protokollen: Windows-Ereignis-IDs 4625, 4624 und 4740; SSHauth.log401-Spitzen bei Web-Anmeldungen und Anmeldeprotokollen von Identitätsanbietern. Protokollieren Sie niemals Passwörter.

Schreiben Sie eine Erkennung pro Variante:

  • Brutale Gewalt:Mehr als 10 Fehler für ein Konto in 5 Minuten

  • Sprühen:Eine IP fällt bei mehr als 15 Benutzernamen innerhalb von 30 Minuten aus

  • Füllung:Anmeldevolumen über dem Dreifachen des Ausgangswerts mit einer hohen Fehlerquote

  • Kompromiss:eine erfolgreiche Anmeldung nach einem fehlgeschlagenen Burst. Rufen Sie jemanden dafür an.

  • MFA-Missbrauch:Drei oder mehr abgelehnte Push-Eingabeaufforderungen

index=wineventlog EventCode=4625
| bin _time span=30m
| Statistiken dc(TargetUserName) als Benutzer nach _time, IpAddress
| wobei Benutzer > 15

Wazuh ist ein kostenloser Ausgangspunkt mit integriertem SSH und Brute-Force-Regeln. Führen Sie Warnungen eine Woche lang im reinen Berichtsmodus aus und passen Sie sie an Ihre eigene Grundlinie an.

Kontrolle 9: Testen Sie Ihre eigene Verteidigung

Eine ungetestete Kontrolle ist eine Annahme. Testen Sie mit einem speziellen Testkonto nur Systeme, die Sie besitzen oder für die Sie eine schriftliche Testberechtigung haben. Hydra, Medusa und Burp Intruder decken Anmeldeformulare und -dienste ab, und Hashcat testet in einem Labor die Offline-Resistenz anhand einer Kopie Ihrer eigenen Hashes. Falten Sie dies in ein breiteresPenetrationstests und SchwachstellenbewertungDas Programm hält es nach einem Zeitplan.

Stellen Sie sicher, dass 15 schnelle Fehler Verzögerungen auslösen, ein Passwort über 30 Konten die Spray-Erkennung auslöst, ein korrektes Passwort ohne MFA verweigert wird, SSH Passwörter ablehnt und ein Fehler-Burst gefolgt von einem Erfolg Ihren Pager erreicht. Der Alarmtest ist genauso wichtig wie der Blocktest. Führen Sie den Test vierteljährlich und nach jeder Authentifizierungsänderung erneut durch.

Was während eines aktiven Angriffs zu tun ist

  1. Bestätigen Sie den Umfang.Identifizieren Sie Zielkonten, Quell-IPs und etwaige Erfolge nach einer Fehlerwelle.

  2. Blockieren Sie die Quelle.Verwenden Sie Firewall- oder WAF-Regeln oder blockieren Sie nach ASN oder Anforderungsmuster, wenn IPs rotieren. Schalten Sie die Zählmodusregeln auf „Blockieren“ um.

  3. Sperren Sie kompromittierte Konten.Setzen Sie Passwörter zurück, widerrufen Sie Sitzungen und überprüfen Sie den MFA-Besitz über einen anderen Kanal.

  4. Vorübergehend festziehen.Senken Sie die Schwellenwerte und fordern Sie eine MFA-Aufstockung. Entfernen Sie die Maßnahmen dann nach dem Angriff.

  5. Verfolgen Sie Aktivitäten nach dem Kompromiss.Suchen Sie nach neuen MFA-Geräten, Postfach-Weiterleitungsregeln, API-Schlüsseln und OAuth-Genehmigungen.

  6. Dokumentieren.Notieren Sie, welche Steuerung dies hätte stoppen sollen, und beheben Sie die Lücke. Überprüfen Sie die Fristen für die Meldung von Verstößen, wenn auf Daten zugegriffen wurde.

Checkliste zur Brute-Force-Prävention

Mach es heute

  • Alle mit dem Internet verbundenen Logins auflisten

  • Aktivieren Sie MFA für Administrator-, E-Mail- und Cloud-Konten

  • Deaktivieren Sie SSH-Passwörter und schließen Sie öffentliches RDP

Machen Sie diese Woche

  • Anmelde-, Zurücksetzungs- und MFA-Endpunktratenbegrenzungen hinzufügen

  • Passwörter anhand von Verstoßlisten überprüfen

  • Legen Sie Benachrichtigungen für den Erfolg fest, nachdem es zu Fehlern kommt

Machen Sie dieses Quartal

  • Führen Sie einen autorisierten Test für jede Kontrolle durch

  • Alarmschwellenwerte anpassen

  • Hash-Work-Faktoren erneut vergleichen

Fazit

Brute-Force-Angriffe erfolgen automatisiert und kontinuierlich, daher muss auch die Verteidigung automatisch erfolgen. Priorisieren Sie MFA, mehrschichtige Ratenbegrenzung, starkes Hashing mit Verstoßprüfung und Benachrichtigungen bei Erfolg nach Fehler. Zusammengenommen erhöhen sie die Kosten für einen Angriff auf Sie, und zwar über die Ausgaben der meisten Bots hinaus.

Nächster Schritt heute:Listen Sie alle mit dem Internet verbundenen Anmeldungen auf und markieren Sie diejenigen, denen MFA und Ratenbegrenzung fehlen. Korrigieren Sie zuerst Admin-Panels, E-Mail und Fernzugriff.

Häufig gestellte Fragen

Wie lassen sich Brute-Force-Angriffe am effektivsten verhindern?

Phishing-resistente MFA wie Passkeys oder FIDO2-Schlüssel. Dadurch reicht ein korrektes Passwort nicht mehr aus, wodurch Raten, Ausstopfen und gefälschte Zugangsdaten neutralisiert werden. Kombinieren Sie es mit einer Ratenbegrenzung.

Verhindert die Kontosperrung Brute-Force-Angriffe?

Es stoppt das Erraten einzelner Konten, aber Angreifer können Sperren auslösen, um echte Benutzer zu blockieren, und es hilft nichts gegen das Versprühen von Passwörtern. Verwenden Sie progressive Verzögerungen sowie IP-spezifische und globale Limits.

Wie lange dauert es, ein Passwort brutal zu erzwingen?

Dies hängt von der Länge, dem Zeichensatz und dem Hash-Typ ab. Am wichtigsten ist die Länge, und schnelle Hashes wie MD5 fallen viel schneller ab als Argon2id. Testen Sie Ihre eigenen Hashes in einem Labor, anstatt einer generischen Zahl zu vertrauen.

Kann ein VPN oder die Änderung des Standardports Brute-Force-Angriffe stoppen?

Ein VPN eliminiert die öffentliche Sichtbarkeit, daher müssen Angreifer zunächst seine Authentifizierung bestehen. Durch das Wechseln des Ports wird nur das Scannergeräusch reduziert und das Gerät ist innerhalb von Minuten gefunden.

Was ist der Unterschied zwischen Brute Force und Credential Stuffing?

Brute-Force errät Passwörter. Credential Stuffing spielt echte durchgesickerte Paare erneut ab und setzt auf Wiederverwendung. Eindeutige Passwörter, Sicherheitslücken-Screening und MFA stoppen das Stuffing.

Woher weiß ich, ob ich brutal gezwungen werde?

Achten Sie auf Spitzen bei fehlgeschlagenen Anmeldungen, Fehler bei einer IP-Adresse bei vielen Benutzernamen, Ausprobieren eines Passworts bei vielen Konten und Sperrfluten. Ein Erfolg gleich nach dem Ausbruch eines Misserfolgs ist das schwerwiegendste Zeichen.

Reicht Fail2ban aus, um SSH zu schützen?

Nein. Verteilte Angriffe bleiben unter den Schwellenwerten. Deaktivieren Sie die Passwortauthentifizierung und die Anforderung von Schlüsseln und behalten Sie Fail2ban als unterstützende Ebene bei.

Bereit, sich schützen zu lassen?

Beginnen Sie noch heute Ihre Sicherheitsreise

Erhalten Sie eine kostenlose Beratung mit unseren Cybersicherheitsexperten. Keine Verpflichtung erforderlich.