Maske Saldırı - Kapsamlı Operasyon

Project reference document Time2Crack
Recipients: geliştiricileri, güvenlik araştırmacıları, gelişmiş kullanıcılar

İçerikler

  • Genel Bakış Genel Bakış Genel Bakış Genel Bakış Genel Bakış Genel Bakış Genel Bakış Genel Bakış
  • Tarihsel ve akademik arka plan
  • Kavramsal Vakıflar: Maskeler Neden Çalışıyor
  • Modern bir maske saldırısının mimarisi
  • Maske Syntax (Hashcat/JtR)
  • Keyspace azaltma: matematiksel ilke
  • Time2Crack'de Uygulama: addMaskAttacks()
  • Tarih algılama ve yapısal azalma
  • Yüksek sadakat kalibrasyonu
  • Benchmarks ve büyüklüğün emirleri
  • Maske örnekleri
  • brute kuvveti ile karşılaştırıldığında, hibrit ve PCFG
  • Maske saldırısının sınırları
  • Etkili savunmalar
  • Referanslar Referanslar

  • 1. Genel bakış

    Maske saldırısı, takip eden şifrelerden oluşur Kesin konum şekli Tüm olası kombinasyonlar yerine.

    Örnek: Tüm alanı test etmek yerine 8 karakter 95 sembolünden test edin (İngilizce).95^8), saldırgan, olası bir neden hedefler:

  • 5 küçük,
  • 2 basamak.
  • Ya Hashcat maskesi ?u?l?l?l?l?l?d?d.

    Merkezi fikir: insan şifreleri rastgele değildir. Sık sık yapılandırılmıştır (Thomas42, Marine2024, Bonjour!1Maske tam olarak bu normalliği kullanır.


    2. Tarihsel ve akademik arka plan

    2.1 Origins

    Maskelerin mantığı eskidir: ilk çatlak araçlardan operatörler, şifre politikalarının tekrarlanmış formatlar ürettiğini gözlemlediler.

    Industrialization geliyor:

  • John the Ripper (incremental modlar ve desenler)
  • Hashcat (super-opted GPU maske modları)
  • Büyük sızıntılar (RockYou, LinkedIn, Adobe), en sık yapıları tespit etti.
  • 2.2 Empirical validation

    Saldırgan/defensive literatür bir araya gelir: gerçek şifrelerin çok büyük bir kısmı basit kalıpları takip eder (word + basamaklar, başkent ilk + kelime + yıl vs.).

    Wheeler (USENIX 2016), ve olasılıksal çalışmalar (Markov/PCFG/OMEN), yapının brüt uzunluk olarak belirleyici olduğunu gösteriyor.


    3. Kavramsal Vakıflar: Maskeler Neden Çalışıyor

    3.1 İnsanlar yapılar yaratır, şansa göre değil

    Çoğu kullanıcı hafıza sırları oluşturur:

  • Bilinen kelime,
  • Ayrılma varyasyonu,
  • dijital ek,
  • Seçmeli son sembolü.
  • Bu strateji maskelerde öngörülebilir ve son derece sıkıştırılabilir.

    3.2 Karmaşıklık politikaları öngörülebilirliği artırır

    "1 sermaye, 1 haneli, 1 sembolü" türün bir kuralı rastgele değildir; sık sık istikrarlı desenlere doğru itir:

  • Mot123!
  • Prénom2024
  • Ville75#
  • Maske, bu diyagramları çok düşük bir maliyetle taramak için ideal bir araçtır.

    3.3 Etkili anahtar alanın azaltılması

    8. uzunlukta bir parola için:

  • Toplam kuvvet brüt95^8) 6.63e15 Adaylar,
  • Maske maske ?u?l?l?l?l?d?d = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 26 26.4 10^2 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 1.19e9 Adaylar.
  • İndirim birkaç milyon kez, ortak bir insan kalıbını kaplarken.


    4 Modern Maske Saldırısı Mimarisi

    Boru tipi:

    1) Profilage de la cible / du corpus
       -> structures fréquentes (L8D2, L6D4, U1L5D2, etc.)
    

    2) Aday maskelerin nesli -> olasılık tarafından sipariş edilen

    3) GPU infaz (Hashcat -a 3) -> yüksek hız paralel testleri

    4) Adaptif bir ayarlama -> Maskeleri yüksek tutuyoruz, zayıflığı yayıyoruz

    Başarı, önceliklerine göre brüt maske miktarına daha az bağlıdır.


    5. Maske Syntax (Hashcat/JtR)

    5.1 Temel sınıflar

  • ?l Küçük (küçük)a-z)
  • ?u : başkentler (A-Z)
  • ?d : Sayı (0-9)
  • ?s : yazdırılabilir sembolü
  • ?a : standart karışık alfabe (genellikle ?l?u?d?s)
  • 5.2 Örnekler

  • ?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!7
  • 5.3. Özel maskeler

    Hashcat, özel karakter setlerine izin verir (-1, -2, örneğin:

  • -1 ?l?uéèàç Latince diller için,
  • -2 0123456789!@# Potansiyel ekler için,
  • Sonra bir maske ?1?1?1?1?2?2.

  • 6. Keyspace azaltımı: matematiksel prensip

    Ya da uzun bir maske n Pozisyonal kartinalities ile c1, c2, ..., cn.

    Maskeli anahtar alanı:

    KMaske = Π(i)

    Zaman (budget modeli):

    T = Kmask / rate

    Bir naifte, çıplak bir model:

    KFull = cs^n

    Maske kazancı:

    Gain = Kfull / K_mask

    Daha güçlü pozisyon kısıtlamaları (örneğin, sonunda, kafadaki başkent) daha büyük kazanç.


    7. Time2Crack'de Uygulama: addMaskAttacks()

    Time2Crack maske mantığı uygular app.js :

  • fonksiyon: addMaskAttacks(rows, full, len, cs, kbPat, seq, weak, dt, pw)
  • Kategori: cat: "mask"
  • Ekran: aMask / not / nMaskPositional, nKBDetected, nSeqDetected, nDateDetected
  • 7.1. Maskeli anahtar alanı hesaplayın

    Kod, şifredeki her karakter türünin gerçek olaylarını sayır:

  • sermaye mektupları,
  • Küçük, küçük,
  • Sayılar, sayılar,
  • semboller.
  • Sonra inşa edildi:

    maskKS = 26^U 26 10^D 33. (İç sabitler ile ilgili)

    Bu modeller, yapısını yalnızca toplam uzunlukta değil, bir saldırgan tarafından bilmektir.

    7.2 Özel vakalar

  • weak : Tahmin weakGuessTime(a.rate) (minimum akışa bağlı aralığı),
  • dt (tarihi tespit edildi): azaltılabilirlik detectDateAndReduce(),
  • Aksi takdirde: standart konumsal anahtar alanı.
  • Zaman sonra tahmin edilir budgetTime(effectiveMaskGuesses, a.rate) ( Maske sıra faktörü ve Unicode / güncel işleme ile).


    8. Tarih algılama ve yapısal azalma

    Time2Crack belirli bir tarih işleme içerir (hasDate, detectDateAndReduce)

  • Yıl tespiti 1600-2099,
  • Tarih kalıplarının tespiti (DD/MM/YYYY, separator çeşitleri)
  • Büyük bir uzayın değiştirilmesi (10^dateCharsBir plausible set ()~200 années veya ~36500 dates).
  • Sonuç: Bir tür şifre Mot2024! Bu saldırgan uygulama ile tutarlıdır.


    9. Yüksek sadakat kalibrasyonu

    Yüksek sadakat modu aktif olduğunda, maske kategorisi ek bir multiplier alır. applyHighFidelityCalibration() :

  • Eğer klavye desen / tarih: ek azaltma faktörü,
  • Aksi takdirde: muhafazakar tahmin.
  • Intuition: Bu sinyaller test edilen maskeler çizgisinde erken bir sıralama olasılığını artırır.


    10. Benchmarks ve büyüklüğün emirleri

    Boyutlu siparişler (12x RTX 4090):

    AlgorithmApprox akışı oranı oranı1. 9 aday için zaman ------:---: MD5~2.03 TH /s~0.0005 SHA-1~610 GH /s~0.0016 SHA-256~272 GH /s~0.0037 NTLM~3.46 TH /s~0.0003 bcrypt (cost 10)~69 kH /s-4.0 h Argon2id~800 H /s~14.5 gün

    Okuma:

  • Hızlı, maske ezici,
  • Yavaşça hash, sık desenlerde çok tehlikeli kalır, ancak maliyet beton olur.

  • 11. Maskenin beton örnekleri

    11.1 Thomas42

  • İlgili maske: ?u?l?l?l?l?l?d?d
  • Keyspace: 26 26^4 10^2 ( Boyut siparişi ~1e9)
  • NTLM/MD5: neredeyse anında.
  • 11.2 summer2024

  • İlgili maske: ?l?l?l?l?l?l?d?d?d?d
  • Eğer yıl tespit edilirse, keskin azalma (yıllar plausible << 10^4).
  • 11.3 Marine!7

  • İlgili maske: ?u?l?l?l?l?l?s?d
  • Kurumsal politikalarda çok yaygın bir model.

  • 12. Crude Force, Hybrid ve PCFG ile Karşılaştırma

    Saldırı Saldırı SaldırıGüçlü noktaLow point --------- Gross powerKapsamlı kapsama alanıÜstel maliyet Maske Maskeİnsan yapılarında Mükemmel VerimlilikKötü maske seçimi için hassas Hybrid/rulesKelimelerde Çok İyi + mutasyonlarTemel bir kelimeye bağlı olarak PCFGGGKüresel gramer yakalayınTren / iş için daha pahalı

    Uygulamada operatörler genellikle maske + kuralları + olasılıksal birleştirir.


    13. Maske Saldırısı

  • Doğru maskeye bağlı olarak Kötü bir maske seti hızlıca verim kaybediyor.
  • Düşük genelleştirme dış yapısı dışında : Gerçekten rastgele bir şifre üzerinde, avantaj kaybolur.
  • Maskeler çok geniş geniş geniş kapsamlı patlama : ?a Uzun uzunlukta tekrarlanan geri dönüş, brute kuvvetine yakındır.
  • Katılımcı dil kapsamı : Unicode/kritik alfabeler özel oyunlar gerektirir.

  • 14. Etkili savunma

    14.1 Kullanıcı tarafı

  • Bir şifre yöneticisi kullanın,
  • Uzun rastgele şifreler (>= 16),
  • Tamamen önlemek desenler Mot+année, Prénom+chiffres, Majuscule+mot+symbole.
  • 14.2. Sistem tarafı

  • Argon2id ile depolama (veya yüksek maliyet bcrypt)
  • Sistematik MFA,
  • Anlaşmaz şifreleri engellemek,
  • anomalilerin bağlantı ve tespiti.
  • 14.3 Politika

  • öncelik uzunluğu ve uzlaşma kontrolü,
  • Tahmin edilebilir kalıpları destekleyen saf kozmetik karmaşıklığı kurallarını azaltır.

  • 15. Bibliografik referanslar

    Akademik kaynaklar

    Wheeler, D.L. (2016). zxcvbn: Low-Budget Password Strength tahmin. 25. USENIX Güvenlik Sempozyumu. Weir, M., Aggarwal, S., de Medeiros, B., & Glodek, B. (2009). Probabilistic Context-Free Grammars kullanarak şifre izleme. IEEE Güvenlik ve Gizlilik Sempozyumu. Dürmuth, M., Angelstorf, F., Horsch, J., et al. (2015). OMEN: Daha hızlı bir şifre sipariş edilmiş bir Markov Enumerator kullanarak tahmin edin. ESSoS. Ur, B., Kelley, P. G., Komanduri, S., et al. (2012). Parolanız Nasıl Ölçür? USENIX Security.

    Endüstri ve teknik kaynaklar

    Hashcat Wiki.
    Maske saldırısı (-a 3). https://hashcat.net/wiki/ Hashcat (benchmarks). https://hashcat.net/hashcat/ Hive Systems (Password Table). https://www.hivesystems.io/password-table

    Web kaynakları Time2Crack uygulamasında atıfta bulundu

    USENIX Security 2016 (Wheeler). https://www.usenix.org/conference/usenixsecurity16/teknik-sessions/presentation/wheeler
    Time2Crack Project için üretilen doküman - Version 1.0 - 2026-04-01 Kaynak kodu: app.js (işlevler) addMaskAttacks, detectDateAndReduce, hasDate, budgetTime, applyHighFidelityCalibration)*