Maskeraanval Uitgebreide bewerking
Projectreferentiedocument Time2Crack
Ontvangers: ontwikkelaars, security onderzoekers, geavanceerde gebruikers
Inhoud
addMaskAttacks()1. Overzicht
Masker aanval bestaat uit het testen van wachtwoorden die een precieze positievorm in plaats van alle mogelijke combinaties.
Voorbeeld: in plaats van het testen van alle ruimte 8 tekens van 95 symbolen (95^8De aanvaller richt zich op een motief zoals:
- 1 kapitaal,
Ofwel de Hashcat masker ?u?l?l?l?l?l?d?d.
Het centrale idee: menselijke wachtwoorden zijn niet willekeurig. Ze zijn vaak gestructureerd (Thomas42, Marine2024, Bonjour!1Het masker gebruikt precies deze regelmaat.
2. Historische en academische achtergrond
2.1 Oorsprong
De logica van maskers is oud: vanaf de eerste kraak tools, operators waargenomen dat het wachtwoord beleid produceren repetitieve formaten.
Industrialisatie wordt geleverd met:
2.2 Empirische validatie
De offensieve/defensieve literatuur komt samen: een zeer grote fractie van echte wachtwoorden volgt eenvoudige patronen (woord + cijfers, hoofdletter + woord + jaar, enz.).
Wheeler (USENIX 2016) en de probabilistische werken (Markov/PCFG/VROUWEN) tonen aan dat de structuur even doorslaggevend is als de brutolengte.
3. Conceptuele Stichtingen: Waarom Maskers Werk
3.1 Mensen genereren structuren, niet toevallig
De meeste gebruikers bouwen geheugengeheimen:
Deze strategie is voorspelbaar en zeer comprimerend in maskers.
3.2 Complexiteitsbeleid vergroot de voorspelbaarheid
Een regel van het type "1 kapitaal, 1 cijfer, 1 symbool" legt geen randomiteit op; hij duwt vaak naar stabiele patronen:
Mot123!Prénom2024Ville75#Het masker is het ideale hulpmiddel om door deze diagrammen te bladeren tegen een zeer lage kosten.
3.3 Vermindering van de effectieve sleutelruimte
Voor een wachtwoord van lengte 8:
95^8) 6.63e15 kandidaten;?u?l?l?l?l?d?d = 26 26^4 10^2 = 1.19e9 kandidaten.De vermindering is een paar miljoen keer, terwijl de dekking van een gemeenschappelijk menselijk patroon.
4. Architectuur van een moderne maskeraanval
Type pijpleiding:
1) Profilage de la cible / du corpus
-> structures fréquentes (L8D2, L6D4, U1L5D2, etc.)
2) Generatie van kandidaatmaskers
-> besteld naar waarschijnlijkheid
3) GPU-uitvoering (Hashcat -a 3)
-> parallelle tests met hoge snelheid
4) Adaptieve aanpassing
-> we houden de maskers hoog, we verspreiden de zwakken
Succes hangt minder af van het bruto aantal maskers dan van hun prioriteiten.
5. Mask Syntax (Hashcat/JtR)
5.1 Basisklassen
?l : klein (a-z)?u : hoofdletters (A-Z)?d Aantal (0-9)?s : printbaar symbool?a : standaard gemengd alfabet (vaak ?l?u?d?s)5.2 Voorbeelden
?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. Aangepaste maskers
Hashcat maakt aangepaste tekensets mogelijk (-1, -2, enz.), bijvoorbeeld:
-1 ?l?uéèàç voor Latijnse talen,-2 0123456789!@# voor mogelijke achtervoegsels,?1?1?1?1?2?2.6. Keyspace reductie: wiskundig principe
Of een masker van lengte n met positiekardinaliteiten c1, c2, ..., cn.
De gemaskerde sleutelruimte is:
Kmasker = Π(i)
Tijd (begrotingsmodel):
T = Kmask / rate
In een naïef, ongemaskerd model:
Kvol = cs^n
De maskerwinst is:
Gain = Kfull / K_mask
Hoe sterker de positiebeperkingen (bv. cijfers aan het eind, kapitaal in het hoofd), hoe groter de winst.
7. Implementatie in Time2Crack: addMaskAttacks()
Time2Crack implementeert masker logica in app.js :
addMaskAttacks(rows, full, len, cs, kbPat, seq, weak, dt, pw)cat: "mask"aMask / noot nMaskPositional, nKBDetected, nSeqDetected, nDateDetected7.1. Berekening van de gemaskerde sleutelruimte
De code telt de werkelijke gebeurtenissen van elk karaktertype in het wachtwoord:
Vervolgens gebouwd:
maskKS = 26^U 26 10^D 33^S (bij benadering via interne constanten)
Deze modellen zijn een aanvaller die de structuur per type kent, niet alleen de totale lengte.
7.2 Bijzondere gevallen
weak : raming via weakGuessTime(a.rate) (minimaal stroomafhankelijk bereik),dt (opgemerkte datum): vermindering via detectDateAndReduce(),De tijd wordt dan geschat door budgetTime(effectiveMaskGuesses, a.rate) (met masker rang factor en Unicode / datum verwerking).
8. Datumdetectie en structurele reductie
Time2Crack omvat een specifieke datumverwerking (hasDate, detectDateAndReduce) :
1600-2099,DD/MM/YYYY, scheidingsvarianten),10^dateChars) door een plausibele verzameling (~200 années of ~36500 dates).Consequentie: een type wachtwoord Mot2024! Dit komt overeen met beledigende praktijken.
9. Kwalificatie van hoge trouw
Wanneer de hoge betrouwbaarheid modus actief is, ontvangt de masker categorie een extra multiplier in applyHighFidelityCalibration() :
Intuïtie: Deze signalen verhogen de kans op een vroege ranking in de lijn van maskers getest.
10. Benchmarks en orden van grootte
Orders van omvang (profiel 12x RTX 4090):
AlgoritmeOngeveer debietTijd voor 1ste 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 NTLM~3,46 TH/s~0.0003 s bcrypt (kosten 10)~69 kH/s4,0 uur Argon2id~800 H/s~14,5 dagenLezen:
11. Concrete voorbeelden van masker kraken
11,1 Thomas42
?u?l?l?l?l?l?d?d26 26^4 10^2 (orde van grootte ~1e9)11,2 summer2024
?l?l?l?l?l?l?d?d?d?d10^4).11.3 Marine!7
?u?l?l?l?l?l?s?d12. Vergelijking met ruwe kracht, hybride en PCFG
AanvallenSterk puntLaag punt --------- BrutosterkteUitgebreide dekkingexponentiële kosten MaskerUitstekende efficiëntie op menselijke structurenGevoelig voor slechte maskerkeuze Hybride/regelsZeer goed op woorden + mutatiesAfhankelijk van een basiswoord PCFGWereldwijde grammatica vastleggenMeer kosten voor het trainen/werkenIn de praktijk combineren operators vaak masker + regels + probabilistisch.
13. Beperkingen van maskeraanval
?a Herhaald op lange lengte keert dicht bij de brute kracht.14. Doeltreffende verdediging
14.1 Gebruikerszijde
Mot+année, Prénom+chiffres, Majuscule+mot+symbole.14.2. Systeemzijde
14.3 Beleid
15. Bibliografische referenties
Academici
Wheeler (2016). zxcvbn: Low-Budget Wachtwoord Sterkteschatting. 25e USENIX Security Symposium. Weir, M., Aggarwal, S., de Medeiros, B., & Glodek, B. (2009). Wachtwoord volgen Met behulp van Probabistic Context-Free Grammatica. IEEE Symposium over beveiliging en privacy. Dürmuth, M., Angelstorf, F., Horsch, J., et al. (2015). VROUWEN: Sneller wachtwoord raden met behulp van een bestelde Markov teller. EssoS. Ur, B., Kelley, P.G., Komanduri, S., et al. (2012). Hoe meet uw wachtwoord? USENIX Security.Industriële en technische bronnen
Hashcat Wiki. Maskeraanval (-a 3). https://hashcat.net/wiki/ Hashcat (benchmarks). https://hashcat.net/hashcat/ Hive Systems (wachtwoordtabel). https://www.hivesystems.io/password-tableWebbronnen geciteerd in de Time2Crack-toepassing
USENIX Security 2016 (Wheeler). https://www.usenix.org/conference/usenixsecurity16/technical-sessions/presentation/wheelerDocument gegenereerd voor Time2Crack Project Versie 1.0 Versie 2026-04-01 Broncode:
app.js (functies addMaskAttacks, detectDateAndReduce, hasDate, budgetTime, applyHighFidelityCalibration)