AngriffMarkov(probabilistisch) — Umfassender Betrieb
Referenzdokument des ProjektsTime2Crack
Empfänger: Entwickler, Sicherheitswissenschaftler, Fortgeschrittene
Inhalt
1. Überblick
AngriffMarkovist ein Passwort-Cracking-Verfahren probabilistisch und statistisch die Kandidaten generiert, indem sie sich auf die beobachteten Frequenzen des Übergangs zwischen Zeichen in realen menschlichen Passwörtern verlassen. Statt alle möglichen Kombinationen in alphabetischer Reihenfolge zu testen - wie die Rohkraft tut - sortiert sie Kandidaten aus dem wahrscheinlichsten zumindest, Konzentration der Berechnungsaufwand, wo menschliche Passwörter tatsächlich liegen.
Einfach : Angreifer mit ausreichender GPU und ModellMarkovgut ausgebildet wird testen "letmein", "p@ssword" und "sun2024" vor dem Testen "aaaaaaaaaa", "aaaaab" oder "xqzfkw" - denn Menschen erstellen Passwörter, die wie Wörter aussehen, nicht weißes Rauschen. Gemessene Effizienz : Forschung von Dürmuth et al. (2015) auf dem RockYou corpus (14 Millionen Passwörter) zeigt, dass ein ModellMarkovOrdnung 5 reduziert den eigentlichen Suchraum 0,6% des Bruttoraums für Passwörter mit typischer menschlicher Struktur — eine Reduzierung von 99,4 %.2. Historischer und akademischer Hintergrund
2.1 Ursprung
AnwendungMarkovPasswörter knacken predates formale akademische Publikationen. Offensive Sicherheitspraktizierende verwendet ähnliche Modelle aus den 2000er Jahren, aber strenge Formalisierung stammt hauptsächlich aus den 2010er Jahren.
Chronologie der Meilensteine : JahrVeranstaltung -------------- 2005Nakashima & Oyama: erste formale Anwendung von n-Grammen auf Passwörter 2009Weir et al. (IEEE S&P):PCFG— direkte Wettbewerber, Positionsstrukturwahrscheinlichkeiten 2012Ma et al. (USENIX Security): Vergleichende Studie von probabilistischen Modellen auf 70M Passwörtern 2013Durmuth: erste OMEN-Analysen auf mehreren corpus 2015Dürmuth, Angelstorf, Horsch, Nürnberger, Rüegge: OMEN (ESORICS 2015) — wichtige akademische Referenz 2016Wheeler (zxcvbn) bestätigt die Wirksamkeit von n-Grammen bei der Schätzung der tatsächlichen Entropie 2018OMEN+: verbesserte Version mit Glättung und Interpolation 2019–2022Hybride ArbeitMarkov+ neuronale Netze (PassGAN, FuzzyPSM)2.2 Referenzkörper
ModellausbildungMarkovbasierend auf Passwort-Datenbanken von bekannten Datenlecks:
- RockYou (2009) : 14,3 Millionen einfache Passwörter — universelle Referenzkorpus
Diese Korpus zeigen die tatsächliche statistische Verteilung menschlicher Passwörter, die sich radikal von einer einheitlichen Verteilung unterscheidet.
3. Mathematische Grundlagen:Markov
3.1 Formelle Definition
Eine Kette vonMarkovOrdnung k.o. auf einem Alphabet k.o. Vorherige Zeichen:
P(cₙ | c₁c₂...cₙ₋₁) = P(cₙ | cₙ₋ₖ...cₙ₋₁)
Für Passwörter enthält es in der Regel 95 bedruckbare ASCII-Zeichen (26 unteres Gehäuse + 26 oberes Gehäuse + 10 Ziffern + 33 Symbole).
Ordnung 1 (Programm) :P("password") = P("p") × P("a"|"p") × P("s"|"a") × P("s"|"s") × ...
Bestellung 5 (optimal nach Dürmuth 2015) :
P("password") = P("p") × P("a"|"p") × P("s"|"pa") × P("s"|"pas")
× P("w"|"pass") × P("o"|"passw") × P("r"|"passwo")
× P("d"|"passwor")
Order 5 erfasst Kontexte wie "nach "passw", die wahrscheinlichste Folge ist "o" — Informationen, die für ein Auftragsmodell 1 nicht zugänglich sind.
3.2 Die Übergangsmatrix
Für eine Ordnung von 1 über 95 Zeichen ist die Übergangsmatrix Größe 95 × 95 = 9,025 Eingänge. Für Bestellung 5 geht es 955 × 95 = ~7.7 × 1010 theoretische Eingänge — aber die Mehrheit der Ordnung n-Grammen 5 erscheint nie in den tatsächlichen Daten. Implementierungen verwenden hohle Datenstrukturen (tries, hash maps), um nur beobachtete n-Grammen zu speichern.
3.3 Log-Wahrscheinlichkeit und Sortierung
Um schwimmende Overruns auf 8+-Kennwörtern zu vermeiden (Verbindlichkeiten in der Größenordnung von 10-20), arbeiten die Werkzeuge in log Wahrscheinlichkeiten :
log P("password") = log P("p") + log P("a"|"p") + log P("s"|"a") + ...
Dieser Wert ist ErgebnisMarkov Die Kandidaten werden in absteigender Reihenfolge der Partitur erzeugt, d.h. die wahrscheinlichsten zumindest wahrscheinlich.
3.4 Warum Ordnung 5?
Empirische Forschung (Dürmuth 2015, bestätigt von Ma et al. 2012) zeigt:
4. Architektur eines CrackersMarkov
4.1 Hauptkomponenten
┌─────────────────────────────────────────────────────────────┐
│ OUTIL DE CRACKING MARKOV │
├─────────────────┬───────────────────┬───────────────────────┤
│ Phase │ Composant │ Rôle │
├─────────────────┼───────────────────┼───────────────────────┤
│ Entraînement │ Corpus Parser │ Lit les mots de passe │
│ │ N-gram Counter │ Compte les transitions│
│ │ Probability Table │ Normalise en probas │
│ │ Model Serializer │ Sauvegarde le modèle │
├─────────────────┼───────────────────┼───────────────────────┤
│ Génération │ Candidate Gen │ Énumère par score │
│ │ Length Controller │ Filtre par longueur │
│ │ Threshold Filter │ Coupe les improbables │
├─────────────────┼───────────────────┼───────────────────────┤
│ Attaque │ Hash Engine │ Compare aux cibles │
│ │ GPU Interface │ Hashcat backend │
└─────────────────┴───────────────────┴───────────────────────┘
4.2 Integration mit Hashcat
Die in der Praxis am weitesten verbreitete Umsetzung ist über Hashcat stdin mode (-a 0 mit einem externen Generator oder über Python-Module als statsgen (aus dem PACK-Toolkit):
# Exemple d'attaque Markov pratique
python statsgen.py rockyou.txt --output markovModell.stats
python maskgen.py markovmodel.stats | hashcat -a 0 -m 1000 targethashes.txt
Dedizierte Werkzeuge wie OMEN (offen)MarkovSchätzung der nächsten Passwörter) direkt erstellen Listen von sortierten Kandidaten.
5. Phase 1 — Aufbau eines echten Passworttrainings
5.1. Extraktion von n-Grammen
Für jedes Passwort im Korpus werden alle n-Grammen extrahiert (mit einem Startmarker). ^ und Ende $)
Beispiel mit "Hallo" (Bestellung 2):
^h, he, el, ll, lo, o$
Beispiel mit "P@ss1!" (Bestellung 2):
^P, P@, @s, ss, s1, 1!, !$
5.2 Zählung und Standardisierung
Für jeden Kontext (n-1 vorherige Zeichen) werden die Vorkommnisse jedes folgenden Zeichens gezählt und normalisiert:
Contexte "pa" → {s: 847, r: 12, t: 8, l: 3, ...}
→ P(s|pa) = 847/870 = 0.973
→ P(r|pa) = 12/870 = 0.014
Diese Verteilungen zeigen menschliche Sprachgewohnheiten: nach "pa", schreiben Menschen massiv "s" (Passwort, Pass, pablo...).
Glätten
Das Problem der unbeobachteten n-Grammen: wenn "xq" nie in den Korpus erscheint, P(c)xq) = 0 für jede c — die die Generation blockiert.
Das Glatteing ermöglicht es dem Modell auch, Kandidaten aus dem Trainingskorpus zu generieren – entscheidend, um leicht neue Passwörter abzudecken.
5.4 Was das Modell lernt
Nach dem Training auf RockYou, ein ModellMarkovBestellen 5 interniert Muster wie:
6. Phase 2 — Ordentliche Kandidatengeneration
6.1 Das Problem der Notenaufzählung
Kandidaten in absteigender Reihenfolge der Wahrscheinlichkeit generierenMarkovWir können nicht einfach die Wahrscheinlichkeiten aller möglichen Kandidaten (948 x 6 × 1015 für 8 Tanks) berechnen und dann aussortieren.
Die Lösung: Heuristische Suche mit Prioritätsschwanz Der Algorithmus ist ähnlich wie Dijkstra:
^a, ^p, ^1...Dieser Ansatz sorgt für eine annähernd abnehmende Sortierung, ohne den gesamten Raum zu merken.
6.2. Schwellenschwelle
Um zu vermeiden, Milliarden von unwahrscheinlichen Kandidaten zu erzeugen, Mindestpunkt darunter wird ein Teilkandidat eliminiert (Lattung).
Si log P(candidatpartiel) < THRESHOLD → abandon de cette branche
Schwelle ist ein kritischer Parameter: zu hoch → Sie vermissen Passwörter an der Grenze; zu niedrig → Sie generieren zu viele Kandidaten und verlangsamen den Angriff.
6.3 Längenmanagement
ModelleMarkovwerden geschult und im Allgemeinen betrieben durch feste LängeEin typischer Angriff:
Längenverteilung in RockYou: 8 Tanks = 24%, 7 Tanks = 21%, 9 Tanks = 12%, 6 Tanks = 10%...
7. Reducing Research Space: Der Schlüssel zur Effektivität
7.1 Empirische Quantifizierung (Dürmuth 2015)
Für ein Passwort von 8 Zeichen mit dem vollständigen Alphabet (94 Tanks):
MethodeForschungsraumVerringerungsfaktor ---------------------------------------------- Bruttowertschöpfung948 6 × 10151× (Referenz) MarkovOrdnung 1~3 × 1015 ~~2× MarkovOrdnung 3~6 × 1013 ~~100× MarkovOrdnung 5~3.6 × 1010 ~~166 000× ~ MarkovOrdnung 5 (typischer Mensch)~4 × 107 ~~150 million×Der Unterschied zwischen "reduziertem Raum" und "typischer menschlicher Raum" lässt sich dadurch erklären, dass echte menschliche Passwörter in höchstwahrscheinlich Je nach Modell.
7.2 Warum Menschen vorhersehbar sind
Die vonMarkov:
Sprachzwänge Passwörter werden von vorhandenen Wörtern abgeleitet. "letmein", "sunshine", "iloveyou" folgen phonotischen Regeln des Englischen - die Übergänge von Buchstaben sind sehr wahrscheinlich. Kognitive Einschränkungen Menschen erinnern sich nicht an wirklich zufällige Sequenzen. Ein zufälliges Passwort wie "xqzfw9@" wird selten spontan gewählt. Kulturelle Muster Diese Muster schaffen hohe Dichte Cluster im Passwortraum. Vorhersehbare Substitutionen Diese Veränderungen sind so häufig, dass sie Teil des Modells sind. Position der Zahlen und Symbole : Die Zahlen am Ende des Passworts (passwd123) sind 10× häufiger als die Zahlen am Anfang. Suffix-Symbole (passwd!) sind 5× häufiger als in der zentralen Position.7.3 Der Fall von Tastaturmustern
Keyboard-Sequenzen (qwerty, asdf, zxcv, 1234, azerty...) sind besonders gefährdet.
InTime2CrackDiese Unterscheidung ist nicht mehr eine feste Ebene.MarkovV2 umfasst kbPat als Signal in einem Rangschätzer (markovExpectedGuesses) dann kontinuierlich zwischen "menschlichen" und "randomähnlichen" Regimen interpolieren.
8. Notable Variationen und Implementierungen
8.1 OMEN (offenMarkovSchätzung der nächsten Passwörter)
Von : Dürmuth, Angelstorf, Horsch, Nürnberger, Rüegge (ESORICS 2015) Verfügbarkeit : Open Source (GitHub) Wichtigste Innovation : optimierte Terminierung durch Level-Score (Zusammenfassung durch Wahrscheinlichkeitsstufen)OMEN verwendet eine Diskretisierung von Wahrscheinlichkeiten in Insgesamt die Erzeugung beschleunigen:
Dieser Ansatz löst elegant das Problem der ordentlichen Aufzählung ohne teure Priorität Schwanz.
8.2 OMEN+
Erweiterung von OMEN mit:
Gemeldete Leistung: +15 bis +20% gekrackte Passwörter vs original OMEN mit gleichem Budget.
8.3 Statsgen / PACK (Passwortanalyse und Cracking Kit)
Von : Peter Kacherginsky (iphelix) Ansatz : leichter als OMEN, erzeugt Hashcat kompatible Masken und Statistiken Typische Verwendung : Analyse einer Reihe von geknackten Passwörtern zur Anpassung zukünftiger Angriffe8.4 John TheRipper — ModusMarkov
John TheRipper integriert ein ModusMarkovgeb. (entwickelt von Samuele Giovanni Tonon):
john --markov --min-length=6 --max-length=8 hashes.txt
Parameter --markov-threshold (0-400): steuert die Abschaltschwelle. 150 = empfohlener Standardparameter.
ModeMarkovJtR verwendet in Dateien vorkalkulierte Statistiken .mkv (markov stats files) generiert von calcstat.
ModelleMarkovHybriden
Markov+ Regeln : Kandidaten generierenMarkov, dann anwenden Hashcat Transformation Regeln Markov+ Wörterbuch : Passwörter verwendenMarkovals Grundlage für Hybridangriffe Markov+PCFG : die probabilistische Ordnung kombinierenMarkovmit struktureller BelastungPCFGDiese Hybridisierungen werden in professionellen Cracking-Konfigurationen verwendet, um die Budgetabdeckung von CPU/GPU zu maximieren.
8.6 Moderne Sprachmodelle (LLM/LSTM) — Nachfolger vonMarkov
LSTM- und Transformer-Netzwerke sind als Verallgemeinerungen derMarkov:
PassGAN (2017), FLA (2019), PassBERT (2022) übertrifft die ModelleMarkovKlassiker von 20-30 % in Rissrate auf moderne corpus.
9. Verhalten gegen verschiedene Arten von Passwörtern
9.1 Passwörter aus natürlichen Wörtern
Beispiele : Sonnenschein, Salat, Drachen, Iloveyou Schwachstelle : extrem Mechanik : Das Modell gibt den Sequenzen des aktuellen Englischen eine sehr hohe Wahrscheinlichkeit zu. Diese Wörter erscheinen im 0,001 % generierte Kandidaten. Zeit : Millisekunden auf MD5/SHA-19.2 Wörter mit Leetspeak-Ersetzungen
Beispiele : p@sw0rd, L3tm3In, $unsh1ne Schwachstelle : hoch Mechanik Das Modell hat gelernt, dass "@" oft "p" folgt (weil "p@ss..." im Korpus sehr häufig ist), dass "0" oft "w" folgt (w0rd...), etc. Die häufigsten Substitutionen sind in die Übergangswahrscheinlichkeit integriert. Zeit : Sekunden bis Minuten9.3 Wörter mit digitalem Suffix
Beispiele : Passwort123, sunshine2024, dragon1! Schwachstelle : hoch Mechanik Die numerischen Suffixe sind so häufig, dass das Modell eine hohe Wahrscheinlichkeit für den Buchstaben → Übergänge am Ende der Sequenz hat. "123", "1", "2024", "12" sind die wahrscheinlichsten Suffixe. Zeit : Sekunden bis ein paar Minuten9.4 Vorname und richtige Namen
Beispiele : Thomas92, AnneM@rie, NICOLAS Schwachstelle mittel bis hoch Mechanik : Gemeinsame Namen (auf Englisch) sind im Referenzkorpus gut vertreten. Weniger häufige Namen in Englisch corpus (Französisch, Polnisch, etc.) profitieren weniger vom Modell. Zeit : Minuten bis Stunden je nach Beliebtheit des Vornamens9.5 Passwörter der scheinbaren zufälligen Struktur, aber mnemotechnic
Beispiele : Tr0ub4dor&3 (Artikel XKCD), Il0v3myC@t! Schwachstelle mittel Mechanik Diese Passwörter haben eine menschliche Struktur (Basiswort + Substitution + Suffix), aber die Basis und spezifische Transformationen sind nicht in der Spitze der KandidatenMarkov. Das Modell wird sie schließlich erreichen, aber sie fallen in 10-30% des Raumes. Zeit : Stunden bis Tage nach Länge und Hash-Algorithmus9.6 Tastatur Muster
Beispiele : qwerty, 1234567, azerty, qweasdzxc Schwachstelle : extrem (raus als natürliche Worte) Mechanik : Tastaturübergänge sind so im Korpus vertreten, dass das Modell sie zu den ersten Tausenden von Kandidaten zählt — manchmal die ersten Zehn. Zeit : Mikrosekunden bis Millisekunden9.7 wirklich zufällige Passwörter
Beispiele : xQz7@mK9, 4#pL$2nR, kRf9!Ws3 Schwachstelle : niedrig bis null Mechanik : Die Zeichenübergänge in diesen Passwörtern haben sehr geringe Wahrscheinlichkeiten in einem auf menschliche Passwörter trainierten Modell, die in den letzten Prozentsätzen des erzeugten Raumes gefunden werden. Verhalten : der AngriffMarkovDer eigentliche "Kosten" der Sicherheit ist grobe Entropie. Zeit : vergleichbar mit oder größer als Bruttokraft9.8 Passphrasen
Beispiele : Pferde-Batterie-Stapel-Korrekt, monchieneestlouisXIV Schwachstelle : Variable Komplexer Mechanismus :10. Integration inTime2CrackModellierung und Parameter
Allgemeine Berechnungslogik (v2)
Time2Crackjetzt ModellMarkovin erwartete Rendite (rank-basiert) anstatt mit festen Reduktionsfaktoren.
Berechnungslinie:
L/D/S,kbPat, seq, dt, rep, hybridVuln),charset Länge,budgetTime(rangestime, vitesseHash).10.2 Unicode Tokenization and Calibrated Profile by Language
Das ModellMarkovv2 verwendet Unicode-Klassen (\p{L}, \p{N}, andernfalls Symbol) und ein kalibriertes Profil pro Sprache (belastet seit data/markov-calibration.json, mit internem Rückfall).
Das Profil enthält:
skeletonRanks (L8D2, L8D2S1, ...),shapeRanks (LD, LDS, ...),tokenRanks nach Klasse/Länge,shapeMultipliers),signalMultipliers)10.3. Kontinuierliche Interpolation (Ende steiler Schwellen)
Das alte Modell verwendet Lager (0.003 / 0.006 / 0.25 / 0.9). Das v2 Modell ersetzt diese Logik durch kontinuierliche Interpolation zwischen:
humanRank (wahrscheinlicher struktureller Bereich),randomRank (Fläche in der Nähe von rohem, gebunden).Zufälliges Gewicht ist eine kontinuierliche Funktion der Länge, des Tanks und der Festigkeit menschlicher Signale, wodurch künstliche Diskontinuitäten vermieden werden.
10.4 Confidence and applicability score
Das Scoring-ModellTime2Crack(Funktion) annotateScenarioApplicability()) ZuweisungenMarkov:
case "markov":
return context.looksHuman ? 0.76 : 0.34;
looksHuman = true → Punkt 0.76 : der AngriffMarkovist sehr anwendbar, das Modell wird menschliche Regelmäßigkeiten ausnutzenlooksHuman = false → Score 0.34: anwendbar, aber ohne großen Vorteil gegenüber Brute Kraftcase "markov":
return Number(!!context.looksHuman) + Number(!!context.kbPat)
+ Number(!!context.seq) + Number(!!context.rep);
Jedes Signal des "menschlichen Charakters" des Passworts erhöht die offensichtliche Score vonMarkov.
10.5 Einstellen HF
mitMarkovv2 sind die Struktursignale bereits in den geschätzten Rang integriert. Die HF-Einstellung ist daher neutral fürMarkovum Doppelzählung zu vermeiden.
10.6 Priorität in der Krawatte
Wenn mehrere Angriffe ähnliche Zeiten geben (< 1ms Differenz),Time2Crackwählt die relevanteste nach semanischer Priorität aus:
const tieBreakPriority = {
// ...
markov: 8, // Statistical n-gram — broad coverage
// ...
};
Markovist ein nützlicher Komplement-Angriff, der statistische Regelmäßigkeiten ausnutzt. Es hat Vorrang vor der groben Kraft für Passwörter mit menschlicher Struktur, aber gibt Vorrang vor Wörterbuch und Hybrid-Angriffen, die direkter sind.
10.7 Ultra-weak Gehäuse
Für Ultra-Low-Passwörter (entdeckt von isWeakPassword()),MarkovZeit auf Basis eines Mindestplatzes (weakGuessTime) anstatt einer festen Konstante:
if (weak) {
rows.push({ ..., sec: weakGuessTime(a.rate), note: t("nWeakPassword"), cat: "markov" });
}
Begründung: ein ultra-niedriges Passwort (Passwort, 123456, qwerty...) ist im Top-100 absolut von Outer SpaceMarkov— es wird zunächst geprüft, die Genauigkeit der Berechnung ist irrelevant.
11. Vergleich mit anderen probabilistischen Angriffen
1.1.1MarkovvsPCFG
AbmessungenMarkovPCFG ------------------- AnalyseeinheitIndividuelle CharakterübergängeSegmentstrukturen (L/D/S) Informationen erfasstLokale Regularitäten (n-gram)Global (Grammatik) MachtNatürliche Wörter, kontinuierliche MusterWörter + Zahlen, zusammengesetzte Strukturen Begrenzungerfasst keine globalen StrukturenLokale Übergänge nicht erfassen ErgänzungIdeal für reine WorteIdeal für Password123 Optimales Beispiel"Sunshine"Sonnenschein #93 BestellungTime2CrackMarkov= 8,PCFG= 6PCFGgenauer, wenn die Struktur erkannt wird11.2Markovvs Regelbasierter Angriff
AbmessungenMarkovRegelmäßig ------------------------- AnsatzGeneration ab initio probabilisticTransformation eines vorhandenen Wörterbuchs DeckungAlle wahrscheinlichen PasswörterÜbersetzungen von Wörterbuchwörtern MachtSeltene oder leicht nichtdiktionäre WörterTraditionelle Transformationen bekannter Wörter BegrenzungWeniger wirksam als Diktator+Regeln für aktuelle MutationenKommt ganz von der Qualität des Wörterbuchs ausANHANGMarkovvs Neural-Netzwerke (PassGAN, LSTM)
AbmessungenMarkov(Ordner 5)Neuronales Netzwerk ----------------------------------- Komplexität(k ×) durch VorhersageO(n2 × d) (Transformer) Daten erforderlich1-10M Beispiele ausreichend10M-1B für gute Ergebnisse InterpretabilityInsgesamt (Versicherungstabellen)Schwarze Box AllgemeinesLimitiert auf den lokalen Kontext kGesamtpotenzial CrackrateSachgebiet+20-30% auf modernen Passwörtern Geschwindigkeit der ErzeugungSehr schnellLangsam11.4 Globale Positionierung
In einem professionellen Cracking-Workflow ist die typische Reihenfolge:
Markovoft Hintergrundlinie front brute force: es deckt effektiv menschliche Passwörter, die mehr gezielte Angriffe entkommen.
12. AngriffsbeschränkungenMarkov
12.1 Abhängigkeit vom Ausbildungskörper
Das Modell ist genauso gut wie seine Korpus. Ein Korpus dominiert von englischen Passwörtern (RockYou, LinkedIn) missversteht Regelmäßigkeiten:
12.2 Lange interpositionale Unabhängigkeit
Ein ModellMarkovBestellen 5 sieht nicht mehr als 5 Zeichen. Für ein Passwort von 12 Zeichen kann es das 12. Zeichen nicht mit dem 1. korrelieren. Eine Passphrase wie "stargate2004!" hat eine globale Struktur ("Wort + Jahr +!"), dieMarkovwird lokal wahrgenommen, aber nicht global —PCFGist hier besser.
12.3 Unempfindlichkeit gegenüber kompositorischen Strukturen
"HorseStapleBattery" (initial majusculum + 3 concatenated Wörter) ist schwierig fürMarkovweil die Zwischenwortübergänge (e→S, e→B) unerwartet sind.PCFGist besser geeignet.
12.4 Zufälliges Passwort ineffektivität
Ein Passwort, das von /dev/urandom mit 12+ alphanumerischen Zeichen hat keine Struktur ausgenutztMarkov. Die Zeit des AngriffsMarkovsich mit der brutalen Kraft auseinandersetzen.
12.5 Sensitivität zur aktualisierten Passwortrichtlinie
Hat eine Organisation strenge Regeln auferlegt (Länge ≥ 16, obligatorisches 1 Kapital + 1 Ziffer + 1 Symbol), können die resultierenden Passwörter eine andere Verteilung des Trainingskorpus haben — die Wirksamkeit des Modells zu reduzieren.
13. Wirksame Verteidigung
13.1 Was völlig neutralisiertMarkov
Zufällige Passwort-Generatoren : jeder Passwort-Manager (Bitwarden, 1Password, KeePass) mit einem kryptographisch sicheren Generator erzeugt Sequenzen ohne Struktur ausnutzbar durchMarkov. Ein Passwort von 16 zufälligen Zeichen ist nicht zu erreichen, unabhängig vom Angriff. Genug Länge mit Zufall : auch mit einem reduzierten Tank (nur a-z), 16 zufällige Zeichen repräsentieren 26^16Markoveinen bereits zufälligen Raum nicht wesentlich reduziert.13.2 Dies reduziert die Wirksamkeit derMarkov
Lange Passphrasen seltener Wörter : 4+ ungewöhnliche Wörter getrennt sind aus den Top-KandidatenMarkovbesonders wenn Wörter aus verschiedenen Sprachen oder spezialisierten Vokabeln kommen. Vermeiden Sie übliche Leetspeak-Ersatzstoffe : Die Substituionen a→@, e→3, etc. sind in das Modell integriert, aber nicht standardisierte Transformationen (a→ Vermeiden Sie Tastaturmuster und natürliche Wörter : die maximale SicherheitslückeMarkov.13.3 Was verteidigt nicht gegenMarkov
Komplexitätsanforderungen (Majuskule + Ziffer + Symbol) : wenn diese Elemente einem natürlichen Wort (P@ssw0rd!) hinzugefügt werden, erfasst das Modell diese Muster. falsche Sicherheit wahrgenommen. Grundlegende Leetspeak-Ersetzungen : vollständig vom Modell erfasst (Übersetzungen "@"→"s", "3"→"y"...). Digitale Suffixes/Präfixe : "Wort + 123" oder "Wort + 2024" Muster gehören zu den ersten getestet.13.4 Schlussempfehlung
Die wirksamste Verteidigung gegenMarkov(und jeder probabilistische Angriff)jede vorhersehbare menschliche Struktur beseitigen, die die Übertragung von Passwort-Erstellung auf einen sicheren Zufallsgenerator.
14. Referenzen
Akademiker (peer-reviewed)
Dürmuth, M., Angelstorf, F., Horsch, J., Nürnberger, S., & Rüegge, A. (2015). OMEN: Schnelleres Passwort-Guessing mit einer BestellungMarkovEnumerator. Engineering Secure Software und Systeme (ESSoS 2015), LNCS 8978, S. 119-132. → Hauptreferenz für die probabilistische KalibrierungMarkovverwendet inTime2Crack(RockYou 14M, Order 5) Ma, J., Yang, W., Luo, M., & Li, N. (2014). Eine Studie über probabilistische Passwort-Modelle. IEEE Symposium über Sicherheit und Datenschutz (S&P 2014). → Empirischer VergleichMarkov,PCFG, n-Grammen auf 70M Passwörtern Weir, M., Aggarwal, S., de Medeiros, B., & Glodek, B. (2009). Passwort-Tracking unter Verwendung probabilistischer kontextfreier Grammatik. IEEE Symposium über Sicherheit und Datenschutz (S&P 2009). → Gründungsarbeiten an strukturellen probabilistischen Methoden (Wettbewerber vonMarkov) Wheeler, D.L. (2016). zxcvbn: Low-Budget-Passwortstärkeschätzung. 25. USENIX Security Symposium. → Bestätigt die Wirksamkeit von n-Grammen für realistische Kennwortkraftschätzung Pasquini, D., Cianfriglia, M., Ateniese, G., & Bernaschi, M. (2021). Reduzierung von Bias in der Modellierung von Real-World-Passwortstärke über Deep Learning und Dynamic Dictionaries. 30. USENIX Security Symposium. → Quantitativer VergleichMarkovvs tiefes Lernen auf moderne corpus Hitaj, B., Gasti, P., Ateniese, G., & Perez-Cruz, F. (2019). PassGAN: Ein Deep Learning Approach für Passwort-Guessing. ACNS 2019. → Neural NachfolgerMarkov, Vergleichspunkt fürTime2CrackdescNeural
Open Source Implementierungen
OMEN https://github.com/RUB-SysSec/OMEN John TheRipper (Modus)Markov) http://www.openwall.com/john/doc/MARKOV.shtml PACK (statsgen/maskgen) https://github.com/iphelix/pack Hashcat http://hashcat.net/hashcat/Quellen von corpus
RockYou (2009) : 14,3M Passwörter aus dem RockYou Social Network Fehler Habe ich gesungen https://haveibeenpwned.com — ~14 Mrd. aggregierte Anmeldeinformationen (Troy Hunt) Sekundarbereich : https://github.com/danielmiessler/SecLists — Referenzwörterbücher und WortlistenWebquellen, die in der Anmeldung genannt werdenTime2Crack
Springer (Kapitel)Markov/probabilistische Rißbildung). https://link.springer.com/chapter/10.1007/978-3-319-24174-67 → Verwandte Quelle indescMarkov (app.js) zur effektiven Verringerung des Forschungsraums durch statistische Priorisierung.
ProjektdokumentTime2Crack— Letzte Aktualisierung : 2026-04-01 Basierend auf der Implementierung in app.js (Markovv2 rang-basiert) und akademische Publikationen zitiert