Mask Attack — Umfassende Operation
Referenzdokument des ProjektsTime2Crack
Empfänger: Entwickler, Sicherheitswissenschaftler, Fortgeschrittene
Inhalt
addMaskAttacks()1. Überblick
Maskenangriff besteht aus dem Test von Passwörtern, die einem präzise Positionsform statt aller möglichen Kombinationen.
Beispiel: Statt alle Raum 8 Zeichen aus 95 Symbolen zu testen (95^8), zielt der Angreifer auf ein wahrscheinliches Motiv wie:
- 1 Kapital,
Entweder die Hashcat Maske ?u?l?l?l?l?l?d?d.
Die zentrale Idee: menschliche Passwörter sind nicht zufällig. Sie sind oft strukturiert (Thomas42, Marine2024, Bonjour!1Die Maske nutzt genau diese Regelmäßigkeit aus.
2. Historischer und akademischer Hintergrund
2.1 Ursprung
Die Logik der Masken ist alt: aus den ersten Cracking-Tools beobachteten die Operatoren, dass die Passwortrichtlinien repetitive Formate erzeugen.
Industrialisierung kommt mit:
2.2 Empirische Validierung
Die offensive/defensive Literatur konvergiert: ein sehr großer Anteil an realen Passwörtern folgt einfachen Mustern (Wort + Ziffern, Haupt- + Wort + Jahr, etc.).
Wheeler (USENIX 2016), und die probabilistischen Werke (Markov/PCFG/OMEN), zeigen, dass die Struktur so entscheidend ist wie die Bruttolänge.
3. Konzeptionelle Stiftungen: Warum Masken funktionieren
3.1 Menschen erzeugen Strukturen, nicht zufällig
Die meisten Benutzer bauen Speichergeheimnisse:
Diese Strategie ist in Masken vorhersehbar und sehr komprimierbar.
3.2 Komplexitätspolitiken verbessern die Vorhersagbarkeit
Eine Regel des Typs "1 Hauptstadt, 1 Ziffer, 1 Symbol" verhängt keine Zufallskraft; sie drängt oft auf stabile Muster:
Mot123!Prénom2024Ville75#Die Maske ist das ideale Werkzeug, um diese Diagramme mit sehr niedrigen Kosten zu durchsuchen.
3.3 Reduzierung des effektiven Schlüsselraums
Für ein Passwort der Länge 8 :
95^8) 6.63e15 Kandidaten,?u?l?l?l?l?d?d = 26 26^4 10^2 = 1.19e9 Kandidaten.Die Reduktion ist mehrere Millionen Mal, während ein gemeinsames menschliches Muster bedeckt.
4. Architektur eines modernen Maskenangriffs
Art der Pipeline:
1) Profilage de la cible / du corpus
-> structures fréquentes (L8D2, L6D4, U1L5D2, etc.)
2) Generation der Kandidatenmasken
-> geordnet nach Wahrscheinlichkeit
3) GPU Ausführung (Hashcat -a 3)
-> Paralleltests mit hoher Geschwindigkeit
4) Anpassungsanpassung
-> wir halten die Masken hoch, wir verbreiten die Schwachen
Der Erfolg hängt weniger von der großen Menge an Masken ab als von ihrer Priorisierung.
5. Maske Syntax (Hashcat/JtR)
5.1 Basisklassen
?l : klein (a-z)?u : Kapitale (A-Z)?d : Nummer (0-9)?s : druckbares Symbol?a : Standard gemischtes Alphabet (oft) ?l?u?d?s)5.2 Beispiele
?u?l?l?l?l?d?d - > Thomas42?l?l?l?l?l?l?d?d?d?d - > summer2024?u?l?l?l?l?l?l?s?d - > Marine!75.3. Benutzerdefinierte Masken
Hashcat erlaubt benutzerdefinierte Zeichensätze (-1, -2, etc.), beispielsweise:
-1 ?l?uéèàç für lateinische Sprachen,-2 0123456789!@# für wahrscheinliche Suffixe,?1?1?1?1?2?2.6. Schlüsselraumreduktion: mathematisches Prinzip
Oder eine Maske der Länge n mit Positions-Kardinalitäten c1, c2, ..., cn.
Der maskierte Schlüsselbereich ist:
KMaske = D(i)
Zeit (Budgetmodell):
T = Kmask / rate
In einem naiven, unmaskierten Modell:
Kvoll = cs^n
Die Maske gewinnt:
Gain = Kfull / K_mask
Je stärker die Positionsbeschränkungen (z.B. Ziffern am Ende, Kapital im Kopf) sind, desto größer ist der Gewinn.
7. Implementierung inTime2Crack: addMaskAttacks()
Time2Crackdie Maskenlogik in app.js :
addMaskAttacks(rows, full, len, cs, kbPat, seq, weak, dt, pw)cat: "mask"aMask / Anmerkung nMaskPositional, nKBDetected, nSeqDetected, nDateDetected7.1. Berechnung des maskierten Schlüsselraums
Der Code zählt die tatsächlichen Ereignisse jedes Zeichentyps im Passwort:
Dann gebaut:
maskKS = 26^U 26 10^D 33^ (Annäherung über interne Konstanten)
Dies modelt einen Angreifer, der die Struktur nach Typ kennt, nicht nur die Gesamtlänge.
7.2 Sonderfälle
weak : Schätzung über weakGuessTime(a.rate) (kleiner strömungsabhängiger Bereich),dt (Datum erkannt): Reduktion über detectDateAndReduce(),Die Zeit wird dann von budgetTime(effectiveMaskGuesses, a.rate) (mit Masken-Rankfaktor und Unicode/Datum-Verarbeitung).
8. Datumserkennung und strukturelle Reduktion
Time2Crackeine bestimmte Datumsverarbeitung (hasDate, detectDateAndReduce)
1600-2099,DD/MM/YYYY, Trennvarianten),10^dateChars) durch einen plausiblen Satz (~200 années oder ~36500 dates)Folgen: ein Typ-Passwort Mot2024! Dies entspricht der Offensive-Praxis.
9. Hochsicherheitskalibrierung
Wenn der High-Fidelity-Modus aktiv ist, erhält die Maskenkategorie einen zusätzlichen Multiplikator in applyHighFidelityCalibration() :
Intuition: Diese Signale erhöhen die Wahrscheinlichkeit eines frühen Rankings in der Zeile der getesteten Masken.
10. Benchmarks und Größenordnungen
Größenordnungen (Profil 12x RTX 4090):
AlgorithmenCa.Zeit für 1. 9 Kandidaten ------ MD5~2.03 TH/s~0.0005 s SHA-1~610 GH/s~0.0016 s SHA-256~272 GH/s~0.0037 s NT2 ARBEITSLOSIGKEIT~3.46 TH/s~0.0003 s bcrypt (Kosten 10)~69 kH/s~4.0 h Argon2id~800 H/s~14.5 daysLesung:
11. Konkrete Beispiele für Maskenrisse
1.1.1 Thomas42
?u?l?l?l?l?l?d?d26 26^4 10^2 (Betrag der Größenordnung ~1e9)11.2 summer2024
?l?l?l?l?l?l?d?d?d?d10^4)ANHANG Marine!7
?u?l?l?l?l?l?s?d12. Vergleich mit Brutkraft, Hybrid undPCFG
AngriffStarker PunktNiedriger Punkt ------ BruttowertschöpfungUmfassende Abdeckungexponentielle Kosten MaskAusgezeichnete Effizienz bei menschlichen StrukturenSensibil für schlechte Maskenwahl Hybride/RuheSehr gut auf Wörtern + MutationenAbhängig von einem Grundwort PCFGglobale Grammatik erfassenMehr kostenaufwendig zu trainieren / zu betreibenIn der Praxis kombinieren Betreiber oft Maske + Regeln + probabilistisch.
13. Einschränkungen von Maskenangriff
?a Wiederholt auf lange Länge kehrt nahe der brutalen Kraft zurück.14. Wirksame Verteidigung
14.1 Benutzerseite
Mot+année, Prénom+chiffres, Majuscule+mot+symbole.14.2. Systemseite
14.3 Politik
15. Bibliographische Referenzen
Wissenschaftliche Quellen
Wheeler, D.L. (2016). zxcvbn: Low-Budget-Passwortstärkeschätzung. 25. USENIX Security Symposium. Weir, M., Aggarwal, S., de Medeiros, B., & Glodek, B. (2009). Passwort-Tracking unter Verwendung probabilistischer kontextfreier Grammatik. IEEE Symposium über Sicherheit und Datenschutz. Dürmuth, M., Angelstorf, F., Horsch, J., et al. (2015). OMEN: Schnelleres Passwort-Guessing mit einer BestellungMarkovEnumerator. ESSoS. Ur, B., Kelley, P. G., Komanduri, S., et al. (2012). Wie misst Ihr Passwort? USENIX Security.Industrielle und technische Quellen
Hashcat Wiki. MaskAngriff (-a 3). http://hashcat.net/wiki/ Hashcat (Benchmarks). http://hashcat.net/hashcat/ Hive Systems (Passworttabelle). https://www.hivesystems.io/password-tableWebquellen, die in der Anmeldung genannt werdenTime2Crack
USENIX Security 2016 (Wheeler). https://www.usenix.org/conference/usenixsecurity16/tech-sessions/presentation/wheelerProjektdokumentTime2Crack— Version 1.0 — 2026-04-01 Quellcode:
app.js (Funktionen) addMaskAttacks, detectDateAndReduce, hasDate, budgetTime, applyHighFidelityCalibration)*