Frage:
Ist das Anzeigen der verbleibenden Kennwortwiederholung ein Sicherheitsrisiko?
Ahmet Arslan
2019-01-16 14:11:53 UTC
view on stackexchange narkive permalink

Einige Websites zeigen eine verbleibende Anzahl von Kennwortwiederholungen an, wenn ich mehr als zweimal falsche Kennwörter eingebe. Zum Beispiel wird angezeigt, dass noch 3 Wiederholungsversuche verbleiben, bis mein Konto gesperrt wird. Ist das aus Sicherheitsgründen gefährlich?

Eine Überlegung ist, dass dadurch leicht festgestellt werden kann, ob auf der Site ein Benutzername vorhanden ist.Dies kann unerwünscht sein, wenn Benutzernamen E-Mails sind und die Website etwas Persönliches wie foot-fetish.com ist. Sie können dies vermeiden, indem Sie eine gefälschte Nummer für nicht vorhandene Konten zurückgeben
Wäre es für einen Hacker so unplausibel schwierig, die Anzahl der fehlgeschlagenen Versuche zu zählen, bevor er die Nachricht über das gesperrte Konto erhält?Nach dieser Logik sollten Sie sich fragen, ob die Anzeige der Meldung "Konto gesperrt" ein Sicherheitsrisiko darstellt.
@MonkeyZeus Wenn jedoch eine Nummer angezeigt wird, weiß der Hacker, wann er aufhören muss, bevor das Konto gesperrt wird und der fehlgeschlagene Versuch bemerkt wird.Sie können dann einige Zeit warten, bis sich der Eigentümer angemeldet und den Zähler zurückgesetzt hat.
@BlackJack Nicht unbedingt.Wenn der Benutzer 2 Versuche direkt vor dem ersten Versuch des Hackers unternahm, würde ich wirklich hoffen, dass er nicht glaubt, dass ein einzelner Fehler zu einem gesperrten Konto führt.Auf jeden Fall wurde von OP kein Bedrohungsmodell erwähnt, so dass eine offene Vermutung wie diese wirklich nichts bewirkt ...
Warum hat niemand daran gedacht, dass die Anzahl der erneuten Versuche auf der IP- oder Geräteerkennung basieren könnte?
@Nightwolf Das habe ich auch gedacht, anstatt nach Kontonamen.
Sperren Sie keine Konten, sondern die IP-Adresse, die die fehlgeschlagenen Zugriffsversuche ausführt.[fail2ban] (http://www.fail2ban.org) ist dein Freund dort.
@paj28 Ich glaube nicht, dass dies das von Ihnen erwähnte Problem löst.Das Problem wird lediglich auf jede mögliche E-Mail-Adresse ausgedehnt (soweit der Angreifer dies beurteilen kann).
nein nein nein ... sperren Sie IPs NICHT für WEBSITE-Anmeldungen.SSH?Sicher.Aber viele Unternehmen / Schulen / Apartmentkomplexe / Hotels / usw. NAT ihren gesamten internen Raum durch eine einzige IP, und Sie könnten eine Menge nicht verbundener Benutzer blockieren, indem Sie durch IP verbieten.
@nightwolf, weil dies eine schreckliche Idee ist, die entweder trivial überwunden werden kann (z. B. wenn sie per Cookie ausgeführt wird) oder zu einem Denial-of-Service gegen jemanden (z. B. Geräte-ID anhand der Mac-Adresse) oder gegen eine ganze Reihe von Personen (IP-Adresse) führen kann.
@RobMoir Das Sperren von IP kann zum Schutz vor Brute-Force-Versuchen beitragen, indem die IP für 5 Minuten gesperrt wird.Die Anzeige der Anzahl der verfügbaren Versuche vor dem temporären Verbot erscheint völlig vernünftig, ebenso wie die verbleibende Sperrzeit.Wenn ein legitimer Benutzer eine missbrauchte IP erhält, wird ihm höchstens 5 Minuten verweigert, und es ist dann klar, dass er fortfahren soll.Dies hängt natürlich von Ihrem Bedrohungsmodell ab.
@Nightwolf Ich verstehe das.Aber wie gehen Sie mit den Problemen um, auf die Angelo und ich hingewiesen haben?Ich könnte mit sehr geringem Aufwand trivial etwa 7500 Personen von der Nutzung Ihres Dienstes ausschließen, wenn Sie nach IP-Adresse blockieren.
@RobMoir Mein Vorschlag ist also einfach zu beachten, dass es derzeit eine zeitgesteuerte Sperre gibt und eine Zwei-Faktor-Authentifizierung erforderlich ist, um sich anzumelden (E-Mail-Link und Passwort / Handy und Passwort), bis die zeitgesteuerte Sperre abläuft.
Ein Gegner kann einfach die Anzahl der Wiederholungen überprüfen, indem er einen zufälligen anderen Benutzer und möglicherweise eine andere IP-Adresse auswählt.Es ist sehr wahrscheinlich, dass die meisten Benutzer immerhin die maximale Anzahl von Wiederholungsversuchen haben, da sie sich erst nach dem Anmelden abmelden würden. Wenn diese Informationen durch "Durchsickern" Ihr System verwundbar machen, sind Sie in Schwierigkeiten, unabhängig davon, ob Sie sie anzeigen odernicht.
Acht antworten:
Sean Werkema
2019-01-16 21:52:42 UTC
view on stackexchange narkive permalink

Das Sperren von Konten ist in erster Linie eine schlechte Idee. Es scheint, als würden Sie Ihre Organisation sicherer machen, indem Sie "schlechte Leute" fernhalten, die Passwörter mit brutaler Gewalt "erraten" Angriffe, aber was hast du wirklich gelöst? Selbst mit dieser Richtlinie und einer perfekten Benutzerbasis, die niemals Sicherheitsfehler macht, kann ein Angreifer einen Denial-of-Service-Angriff auf Ihr Unternehmen ausführen, indem er wiederholt das Kennwort "aaa" verwendet, um die Konten kritischer Benutzer zu sperren. Überlegen Sie, was passiert, wenn Ihr Angreifer eine Kopie der Liste der Benutzernamen für Ihre gesamte IT-Abteilung erhält: Plötzlich wird die IT selbst - die Organisation, die sonst andere Benutzer entsperren könnte - selbst vollständig heruntergefahren.

Überlegen Sie immer, was das Bedrohungsmodell ist, bevor Sie eine Richtlinie implementieren. Ein "Bösewicht", der entschlossen ist, Ihre Organisation zu verletzen, findet alternative Angriffsmethoden. Ihre Aussperrungspolitik wird nicht einmal einen nationalstaatlichen Akteur (wie Russland oder China oder die NSA) beunruhigen. Ein entschlossener Hacker wird einfach andere Wege finden (wie Social Engineering). und es wird nur legitimen Benutzern Ihres Dienstes schaden, egal wie niedrig oder hoch Sie den Sperrzähler setzen.

Moral der Geschichte: Sperren Sie keine Konten. Stattdessen Machen Sie das, was Apple mit dem iPhone macht: Jeder Anmeldeversuch verdoppelt die Anmeldeverzögerung, sodass Sie nach etwa einem Dutzend Fehlern zwischen jedem weiteren Versuch eine Stunde warten müssen. Das ist lang genug, um zu verhindern, dass "böse Jungs" Brute-Force-Angriffe ausführen, aber immer noch kurz genug, damit ein legitimer Benutzer diese Stunde damit verbringen kann, sein Passwort herauszufinden und es nach dem Mittagessen richtig einzugeben - oder sich an die IT zu wenden und entschuldigend um Hilfe zu bitten . (In ähnlicher Weise können "Flooding" -Richtlinien häufig auf IP-Adressebene in Ihrer Firewall implementiert werden, nicht nur auf Benutzerkontoebene in Ihrer Software, wenn Sie Bedenken haben, dass ein dedizierter Angreifer versucht, viele verschiedene Konten brutal zu erzwingen .)

Und wenn Sie keine Konten sperren, müssen Sie keinen Zähler haben - oder anzeigen .

[ siehe auch: diese hervorragende Antwort auf eine ähnliche Frage ]

Solide Beratung.Obwohl ich diese Sperrkonten immer noch nenne, ist es nur eine kurze Zeitüberschreitung
Ich stimme dem für Lock-and-Forget-Implementierungen zu, aber kurzzeitige Sperren (die nach einigen Minuten automatisch wieder entsperrt werden) können für ratenbegrenzende Brute-Force-Angriffe hilfreich sein.
Sofern Sie sich keine kontinuierliche aktive Überwachung durch lebende Menschen rund um die Uhr leisten können - genug lebende Menschen, um das Worst-Case-Szenario auch um 3 Uhr morgens am Weihnachtstag zu bewältigen -, ist Ihre Implementierung eine Art Set-it-und-vergiss es und sollte daher immer noch keine Kontosperrungen verwenden.Und das ist so ziemlich jeder Service da draußen.
Und vergessen Sie nicht, dass einige von uns aufgrund einer Reihe noch verrückterer Gesetze * verpflichtet * sind, Sperren für fehlgeschlagene Anmeldeversuche durchzusetzen.Es gibt einen Grund, warum sogar das NIST eine Sperrklausel enthält (großzügig hoch bei 100 Versuchen).Denn meistens ist es die Regierung, die von uns verlangt, die Aussperrungen durchzuführen.
Sollten Sie jedoch eine Anzeige haben, die den Benutzer darüber informiert, wie lange die Anmeldeverzögerung für den nächsten Versuch dauern wird?
Ich würde ein Captcha für einen Benutzer anzeigen lassen, der viele fehlgeschlagene Anmeldeversuche hat.Sollte den meisten Missbrauch stoppen.
Das schrittweise Erhöhen der Sperrzeiten ist auf einem physischen Gerät sinnvoll.Aber man sollte immer noch nicht einmal das auf einem Konto tun, auf das über das Internet zugegriffen werden kann.Der Angreifer kann weiterhin Kennwortversuche senden, auch wenn das Konto gesperrt ist. Jedes Mal, wenn die Sperre abläuft, hat der legitime Benutzer nur eine kurze Zeit, in der er sich anmelden kann, bevor der Angreifer die Sperre erneut veranlasst.Sperren Sie stattdessen IP-Adressen und Präfixe, wenn mehrere Adressen in einem Präfix gesperrt wurden.
Dieser 'aaa'-DoS-Angriff ist interessanterweise spezifisch.Sie haben nicht wirklich eine tatsächliche Vorgeschichte eines solchen Angriffs, oder?Vielleicht ein Referenzzeiger für mich zum Nachschlagen?Ich würde gerne darüber lesen.
@MichaelEricOberlin: Anekdotisch hatten wir einen Fall von einem Benutzer mit einem ständig gesperrten Konto.Nach vielen Stunden der Untersuchung stellte sich heraus, dass es sich um einen Mitarbeiter / eine Nemesis des Benutzers handelte, der es trotz des Benutzers weiter tat.Es war nicht unternehmensweit, erfordert aber auch keine Expertenkenntnisse, um jemanden auszusperren, den Sie möchten.
Funktioniert das gleiche Prinzip der Sperrung nicht bei Apple, wo Sie den Sperrzähler effektiv hochfahren können, bis sich die Benutzer längere Zeit nicht anmelden können?Vielleicht nicht dauerhaft, aber dennoch ein wirkungsvoller Denial-of-Service, nein?
Für ein Online-System hilft die Verdoppelung der Sperrzeit nicht wirklich.Es ist schon ärgerlich genug, für ein paar Tage mit Ihrer gesamten IT-Abteilung ausgesperrt zu sein, aber es ist auch nicht so schwer, Ihren Angriff in zunehmenden Abständen zu wiederholen und Ihr Team dennoch mehr oder weniger unbegrenzt auszusperren.
@kasperd die Sperre könnte an eine bestimmte IP gebunden sein, anstatt mit dem Konto verbunden zu sein, nicht wahr?Verwerfen Sie einfach Datenverkehr dieses Typs von dieser Quelle, anstatt mit ihm zu interagieren.
Wir sperren Konten, in denen ich arbeite, aber wir verwenden auch einen Dienst, um bestimmte Geräte und IP-Adressen zu blockieren, um die hier beschriebene Situation zu verhindern. Oder zumindest auf eine Weise, die uns wichtig ist.Dies gilt nur für externe Konten, die sich bei dem von uns bereitgestellten Service anmelden, und nicht für interne Mitarbeiterkonten.Interne Konten können hier einfach zurückgesetzt und untersucht werden.Der Punkt ist jedoch, dass es Dienste gibt, die verdächtige IP-Adressen und Geräte blockieren können. Daher sollte das Sperren nicht allgemein ausgeschlossen werden.
(1) Ein Sicherheitssystem, das Konten sperrt, ohne dass ein "Wundermittel" für den Zugang besteht (z. B. Konsolenanmeldungen werden niemals gesperrt, da der Server physisch gesichert ist), ist natürlich grundlegend defekt.Wir sollten also davon ausgehen, dass ein schlechter (oder schelmischer) Benutzer, der die Konten der IT-Mitarbeiter sperrt, trotzdem eine Möglichkeit hat, einzusteigen.Wie [Flater] (https://security.stackexchange.com/q/201566/34757#comment404075_201596) und [Jasper] (https://security.stackexchange.com/q/201566/34757#comment404086_201596) sagen,Ist es nicht genauso schlimm, das IT-Personal für eine Stunde auszusperren?… (Fortsetzung)
(Fortsetzung)… (2) Es scheint mir, dass Ihr letzter Satz nicht viel Sinn macht.Wenn Sie die Anmeldeverzögerung nach jedem fehlgeschlagenen Versuch verdoppeln, behalten Sie die fehlgeschlagenen Anmeldungen weiterhin im Auge.Die Tatsache, dass Sie * 2 ^ n * anstatt * n * speichern, macht es nicht weniger zu einem Zähler.
@SeanWerkema Wenn die Anmeldeverzögerung zu hoch ist und ein Denial-of-Service-Angriff stattfindet, befinden sich so viele Anforderungen in der Warteschlange, dass der Server keine neuen Anforderungen mehr annehmen kann.Ist das nicht eine Möglichkeit?
@Andrew Mein Kommentar schlug vor, IP-Adressen (und in einigen Fällen Präfixe) zu sperren.Aber verwerfen Sie den Verkehr auf keinen Fall.Man sollte immer noch mit einer entsprechenden Fehlermeldung antworten. Versuche nur nicht, den Benutzernamen oder das Passwort zu überprüfen, bevor du die Fehlermeldung sendest, wenn sich die Client-IP in einem gesperrten Bereich befindet.
Das Verdoppeln der Anmeldezeit ist besser als das vollständige Sperren von Konten, aber es ist immer noch ein Denial-of-Service.Der Umgang mit einer doppelten Anmeldezeit ist für einen Gegner, der den Prozess gefälschter Anmeldungen automatisiert, keine große Unannehmlichkeit.
"ein nationalstaatlicher Akteur (wie Russland oder China oder die NSA)" - Interessante Gruppe von * Nationen *.
Für DoS-Administratorbenutzer könnten diese Konten auf andere Weise geschützt werden, z.Whitelist zu den IPs des Unternehmens.
@Scott: Ich habe früher ein leeres Root-Passwort mit dieser Theorie dahinter ausgeführt.Ich hatte Securetty aufgerüstet, so dass Remote-Logins als Root einfach nicht möglich waren.
@kasperd-IP-Level-Blöcke wirken sich auf Personen aus, die ein VPN verwenden, um auf Ihren Dienst zuzugreifen (ich erhalte dies regelmäßig, da ich regelmäßig ein VPN verwende und es sehr ärgerlich ist).
Ich erinnere mich, dass sich die Kinder in der High School gegenseitig aussperrten, indem sie das falsche Passwort erraten.Jemand wurde schlau und sperrte den Lehrer auch aus, damit er keine Konten entsperren konnte.Ich bin sicher, dass einige dies absichtlich getan haben, um eine Entschuldigung dafür zu haben, nicht zu arbeiten, obwohl die Reife vermutlich bis zum Eintritt der Menschen in den Arbeitsplatz gestiegen sein sollte.
@LoganPickup VPN hat nichts damit zu tun.Vielmehr geht es um zwei andere Dinge: ** 1. ** Möglicherweise haben Sie sich für einen Anbieter entschieden, der viele missbräuchliche Kunden hat.** 2. ** Möglicherweise haben Sie einen Anbieter ausgewählt, der NAT verwendet.
@northerner Was macht es aus, wenn die Reife gestiegen ist?Wir sprechen über ein Szenario, in dem jeder im Internet Sie angreifen kann.Und irgendwo im Internet finden Sie mindestens eine Person, die nicht reif ist, und vielleicht sogar jemanden, der geradezu schändlich ist.
Ich habe immer aus diesem Grund vor Kontosperrungen gewarnt.Sie sind nicht nur ein Ärgernis für Benutzer, die sich seit einiger Zeit nicht mehr angemeldet haben und sich nicht erinnern können, welche Variation ihres Kennworts sie verwendet haben, sondern vor allem (aus Sicherheitsgründen) erstellen sie einen serösen DoS-Vektor.Ein Freund von mir hat einmal eine Web-App mit einer aggressiven Sperrrichtlinie entwickelt (gegen meinen Rat an ihn).Um meinen Standpunkt nach Hause zu bringen (und mich mit meinem Freund anzulegen), habe ich ihn aus seiner eigenen App ausgeschlossen, indem ich nur seine E-Mail-Adresse und eine Reihe gefälschter Passwörter verwendet habe.
Ich hasse die immer größer werdenden Auszeiten.Wenn sie verwendet werden, benötigen sie ein Limit, andernfalls haben Sie immer noch einen Denial-of-Service, wenn auch nur für einen Benutzer.
Silver
2019-01-16 15:24:42 UTC
view on stackexchange narkive permalink

Dies hängt von Ihrem Sperrmechanismus ab. Wenn ungültige Anmeldungen nach einiger Zeit zurückgesetzt werden UND ein gesperrtes Konto nicht entsperrt wird, kann das Anzeigen eines Zählers einem Angreifer helfen, ein Konto nicht zu sperren. Ein erfahrener Angreifer hat jedoch die Sperrrichtlinie im Voraus festgelegt und berücksichtigt dies beim Erraten des Kennworts. Die Auswirkungen sind also begrenzt.

Wenn Sie sich zum Schutz Ihres Anmeldemechanismus darauf verlassen, fehlt der Punkt. Sie sollten eine angemessene Kennwortrichtlinie und eine entsprechende Sperrrichtlinie haben. Wenn die Kennwortrichtlinie stark ist, muss ein Angreifer eine große Anzahl von Vermutungen anstellen, bevor er sie richtig macht. Wenn Sie nach 20 Versuchen ein Konto sperren, besteht nur eine geringe Wahrscheinlichkeit, dass Sie kompromittiert werden.

Sie müssen sich fragen: Was bringt es, diese Informationen einem echten Benutzer anzuzeigen? Dieses Problem mit der Sperrung tritt häufig auf, weil die Anzahl der Versuche zu niedrig eingestellt ist. 3 oder 5 sind übliche Entscheidungen. NIST (derzeit aufgrund der Schließung der Regierung nicht verfügbar, daher noch kein direkter Verweis) schlägt weniger als 100 Versuche vor.

NIST hat einen Punkt: Denken Sie an ein Passwort, das kein Angreifer in 3 erraten wird Versuche, die sie aber in 100 Versuchen erraten werden. Alle Angreifer verwenden unterschiedliche Wörterbücher und Ansätze. Wenn ein Passwort unsicher ist, um 100 Vermutungen standzuhalten, kann es auch mit weniger Versuchen verletzt werden - obwohl dies weniger wahrscheinlich ist. Daher ist eine gute Kennwortrichtlinie ein Muss.

Ich werde die NIST-Referenzen hinzufügen, wenn die Site wieder hochgefahren wird. Troy Hunt hat einige gute Blog-Beiträge, die Passwort- und Anmeldemechanismen zusammenfassen. Er ist auch ein Fan der NIST-Richtlinien.

Sie suchen nach der NIST-Sonderpublikation 800-63, die normalerweise hier zu sehen ist (Hotlink zum entsprechenden Abschnitt): https://pages.nist.gov/800-63-3/sp800-63b.html#throttle NatürlichDa sie sich besonders bemüht haben, diesen Server in den Wartungsmodus zu versetzen, anstatt nur wegzugehen (murren), müssen Sie die Wayback-Maschine verwenden, um sie jetzt zu sehen: https://web.archive.org/web/20181223021935 / https: //pages.nist.gov/800-63-3/sp800-63b.html#throttle
Was ich mag, ist, sich mindestens das letzte fehlgeschlagene Passwort (Hashes) zu merken.Und wenn derselbe verwendet wird, erhöhen Sie den Fehlerzähler nicht.Dies hilft bei falsch erinnerten oder geskripteten Clients erheblich, den Täter nicht regelmäßig auszusperren.
Wenn ein Angreifer nur 1000 Mal raten muss, um Ihr Passwort zu erhalten, handelt es sich nicht um ein sicheres Passwort.
@Qwertie, Ich werde es in eine vage Beschreibung ändern;)
jamesdlin
2019-01-19 07:26:40 UTC
view on stackexchange narkive permalink

Grundsätzlich sollte es kein Sicherheitsrisiko sein. Wenn dies der Fall wäre, würden Sie sich auf Sicherheit durch Dunkelheit (versteckte Informationen) verlassen.

Das Ausblenden einer Zählung wäre bestenfalls eine geringfügige Unannehmlichkeit für einen Gegner.

Im Gegensatz dazu kann das Ausblenden einer Zählung eine erhebliche Unannehmlichkeit für legitime Benutzer sein. Es ist nicht ungewöhnlich, dass ich manchmal das falsche Passwort eingebe und es dann noch einige Male erneut eingebe, vorausgesetzt, ich habe einen Tippfehler gemacht. Wenn ich weiß, dass ich mit einem anderen falschen Versuch ausgesperrt werde, werde ich mein Passwort nachschlagen und es kopieren / einfügen oder sorgfältig eingeben. Wenn ich mich jedoch unabsichtlich von meinem Konto sperre, muss ich jetzt eine Menge zusätzlicher Probleme auf mich nehmen, um es freizuschalten.

Tom K.
2019-01-16 19:50:51 UTC
view on stackexchange narkive permalink

Um eine andere Perspektive zu geben: Für einen erfahrenen Angreifer spielt es keine Rolle .

Wie werden Online-Konten heute normalerweise 1 sup>? Es gibt zwei Varianten einer Technik, die häufig verwendet werden.

Datenbanken mit Kennwort-Hashes (oder Kennwörtern im Klartext) werden gestohlen und von Angreifern offline geknackt. Nach dem erfolgreichen Knacken eines Hashs wird beim ersten Versuch das richtige Kennwort an den Anmeldemechanismus gesendet, sodass dieses Steuerelement unwirksam ist.

Dies kann entweder die Datenbank des betreffenden Dienstes oder em sein > die Datenbank eines anderen Dienstes. Leider neigen die Benutzer dazu, ihre Passwörter mit mehreren Diensten wiederzuverwenden, sodass die Wahrscheinlichkeit hoch ist, dass ein Passwort, sobald es mit einer E-Mail-Adresse übereinstimmt, auf einer anderen Site verwendet werden kann. Ein Angreifer hat möglicherweise zwei oder drei Kennwörter zur Auswahl, aber wahrscheinlich nicht 20. Auch dieses Steuerelement ist unwirksam.

Welche Sicherheitsstufe legt dieses Steuerelement fest? Die Stufe, die erforderlich ist, um sich vor unerfahrenen Script-Kiddies, böswilligen Ex-Partnern und neugierigen Eltern zu schützen, die sich Ihr persönliches Konto ansehen und fünf Passwörter nach dem Zufallsprinzip ausprobieren möchten. Nicht mehr, aber nicht weniger.


1 Dann gibt es natürlich auch andere Techniken, die "fortgeschrittener" sind, wie Keylogging, (Speer-) Phishing, MitM usw., die dies ebenfalls sind durch dieses Steuerelement nicht gemildert. sup>

Security Beast
2019-01-16 14:22:23 UTC
view on stackexchange narkive permalink

Damit sind nur zwei Szenarien möglich, aber das Risiko einer Kontosperrzeit wird eher über die Sperrzeit angezeigt.

ZB

  • kann die Hydra einmal konfigurieren oder ein anderes Tool, um die Anmeldung brutal zu erzwingen und nach 3 Versuchen zu warten. Wenn Sie nicht genügend Sperrzeit haben, kann dies zu einer Kontokompromittierung führen.

  • Wenn Sie ungefähr 30 Minuten Sperrzeit haben, können wir das Tool für Brute Force konfigurieren und warten Sie nach drei Versuchen, bis das Kennwort geknackt ist.

Um daraus zu schließen, besteht kein Risiko darin, einen Kontosperrversuch anzuzeigen.

jfran3
2019-01-16 15:29:04 UTC
view on stackexchange narkive permalink

Je weniger Informationen Sie einem Angreifer geben, desto besser. Wie bereits erwähnt, kann ein Tool so konfiguriert werden, dass es die entsprechende Zeit wartet. Es ist nicht unbedingt ideal, ihnen die Informationen für diese Konfiguration zu geben.

Sie müssen dies jedoch mit den Bedürfnissen Ihrer Benutzer in Einklang bringen. Finden Sie, dass die Systemadministratoren übermäßig viel Zeit damit verbringen, Konten zu entsperren, weil Ihre Benutzer sie weiterhin sperren? Wenn dies der Fall ist, zeigt Ihre Analyse möglicherweise, dass Sie mehr Nutzen daraus ziehen, wenn Sie Ihren Benutzern die Anzahl der Wiederholungsversuche anzeigen, damit diese wissen, wann sie warten müssen, bevor sie ihre Konten sperren. In anderen Fällen ist das Gegenteil der Fall, aber in beiden Fällen sollte die Antwort das Ergebnis einer objektiven Analyse der Kompromisse für das jeweilige System sein.

Ich hoffe, dies hilft.

Ich hatte Silvers Kommentar beim Posten nicht gesehen, aber ich würde die NIST-Richtlinien als gute Grundlage für den Anfang unterstützen.
Hugo
2019-01-16 19:32:38 UTC
view on stackexchange narkive permalink

Das Sicherheitsrisiko ist subjektiv. Es hängt davon ab, was Sie versuchen, um das Ziel der Sicherheitskontrolle und alle anderen vorhandenen Sicherheitskontrollen zu schützen, die das Risiko mindern oder kompensieren.

Basierend auf diesen verschiedenen Unternehmen / Unternehmen werden unterschiedliche Akzeptanz für das gleiche Risiko haben.

Wenn generisch angegeben wird, wie viele Versuche Sie noch haben, kann dies kein Risiko darstellen (z. B. PIN in Ihrer Smartcard, um Anrufe zu tätigen). In anderen Situationen kann dies ein Risiko sein (z. B. Versuch, dies zu tun) Brute-Force-Handyzugriff), bei dem Sie vor dem letzten Versuch anhalten und einige Zeit warten können, damit der Benutzer den Zähler mit einem gültigen Zugriff zurücksetzt ...

Sie sollten das Ziel der Sicherheitskontrolle überprüfen, was Sie versuchen zu schützen und welche Sicherheitskontrollen Sie eingerichtet haben, um abnormale Situationen zu kompensieren oder zumindest zu überwachen.

Auf dieser Grundlage können Sie entscheiden, ob es sich um ein akzeptables Risiko für Ihre Besonderheiten handelt oder nicht.

Brandhout
2019-01-20 03:44:34 UTC
view on stackexchange narkive permalink

Irgendwann war ich in einer Firma, in der nur ein paar Leute ihre Sicherheit testen mussten. Eines dieser Dinge, die diese Leute gefunden haben, ist, dass es keine Kontosperrung gab, wenn zu viele falsche Passwörter vorhanden waren. Zur großen Freude des CISO konnten sie jedoch nicht beweisen, dass sie tatsächlich einsteigen konnten, indem sie das Passwort brutal erzwangen. Der Grund dafür war, dass die Kontosperrung still war und etwa 15 Minuten dauerte.

Fragen Sie sich, was Sie durch die Anzeige einer solchen Nachricht gewinnen und was Sie dadurch an Sicherheit verlieren. Es ist absolut gültig, keine Benachrichtigung über das Sperren eines Kontos aufgrund zu vieler falscher Anmeldeversuche zu geben. Wenn Sie eine solche Nachricht geben, helfen Sie einem Angreifer nur dabei, herauszufinden, wann er seine Zeit mit brutaler Gewalt verschwendet. Wenn Sie dies nicht tun, ist es weniger wahrscheinlich, dass sie es herausfinden, aber es kann zu mehr Anrufen / E-Mails an Ihren Helpdesk führen, was kostspielig sein kann. Eine FAQ oder Hilfeseite kann dies reduzieren.

Auch die Implementierung des Countdowns bedeutet wahrscheinlich mehr Code und mehr Code bedeutet mehr Fehler. Dies ist nicht etwas, was Sie in einem Sicherheitsmechanismus wollen. Fügen Sie hinzu, dass Sie es falsch implementieren. Dadurch können Angreifer möglicherweise Benutzernamen aufzählen, was doppelt problematisch ist, wenn es sich um E-Mail-Adressen handelt. Zum Teufel, wenn Sie es mit einem nicht signierten Cookie implementieren, kann es dem Angreifer tatsächlich die Möglichkeit geben, eine Sperrung zu verhindern.

Im Allgemeinen wird Ihre Sicherheit verbessert, wenn Ihre Fehlermeldungen so wenig Informationen wie möglich enthalten .

Ich bin ein Pentester.Wenn ich den Rat "Anmeldeversuche begrenzen" gebe und der Kunde antwortet "beweisen, dass es anfällig ist", wäre ich verärgert.Es ist eine Frage des Glücks, ob ich über diese Methode einsteigen kann.Möchten Sie sich auf das Glück verlassen, oder möchten Sie lieber Logik anwenden und feststellen, dass Sie tatsächlich pwned sind, wenn * einer * Ihrer Benutzer ein falsches Passwort festlegt und * ein * Angreifer Glück hat?Deshalb würde ich mich ärgern, wenn ich es beweisen müsste.Wenn ich dann später höre, dass es eine stille Aussperrung gab (also lassen Sie mich die Arbeit machen, weil Sie wissen, dass sie nicht erfolgreich sein kann), würde ich das Gefühl haben, dass Sie meine Zeit doppelt verschwendet haben.
Sie haben den Pentester also verärgert, jetzt wechseln wir in den Benutzermodus.Ich kann nicht auf mein Konto zugreifen, obwohl ich weiß, dass es eines der fünf Passwörter sein muss.Jetzt muss ich andere Schritte durchlaufen, um mein Konto wiederherzustellen.Später stelle ich fest, dass mein Passwort korrekt war, das System mich aber aufgrund zu vieler Versuche einfach nicht zugelassen hat.Anstatt Zeit damit zu verschwenden, verschiedene Passwörter auszuprobieren und der Website mehr und mehr mögliche Passwörter zu geben (was meinen Passwörtern mehr Aufmerksamkeit verschafft), wäre es sehr schön gewesen, wenn das System mir einfach gesagt hätte.
Betrachten wir zum Schluss die Situation als Angreifer.Wenn ich ein Konto erstellen kann, kann ich 100 falsche Versuche in meinem eigenen Konto versuchen (1. Anmeldeversuch in Firefox ausführen; 2. Als Curl aus der Entwickler-Symbolleiste kopieren; 3. Bash-Einzeiler verwenden: `for i in {1..100}; do ; done`) und dann sehen, ob ich mich noch anmelden kann.Nee!Es gibt also eine Sperre.Jetzt erstelle ich ein anderes Konto und schreibe ein ähnliches Skript, das zuerst einen ungültigen Versuch macht, dann zwei, dann drei ... und dazwischen überprüfe ich, ob ich mich noch anmelden kann.Dies alles dauert ungefähr fünf Minuten.Das Ausblenden der Wiederholungszahl ist kein wesentliches Hindernis.
@Luc Sie richtig die Anzahl der Wiederholungen zu verbergen, ist keine massive Hürde für einen entschlossenen Angreifer, aber es ist trotzdem eine Hürde.
Was ich in meiner Anekdote möglicherweise nicht klargestellt habe, ist, dass die Konten für einen kurzen Zeitraum stillschweigend gesperrt waren, so dass die Pentest-Feststellung falsch war, weshalb sie gebeten wurden, dies zu beweisen.Der Punkt war, dass das stille Sperren eines Kontos eine absolut gültige Methode ist, dies tatsächlich in der Praxis geschieht und zeigt, dass dies Ihrem Angreifer ein Hindernis hinzufügen kann.Sie haben völlig Recht, dass Kompromisse eingegangen werden müssen, und das ist keine perfekte Sicherheit, aber das ist immer der Fall.


Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 4.0-Lizenz, unter der er vertrieben wird.
Loading...