Hashcat karma kedisinin birkaç saldırı modu

hashcat'te birden fazla saldırı modu vardır. Tüm yardımı görüntülemek için – help parametresini kullanın. Aşağıdaki gibi "Saldırı Modları" tablosunu görebilirsiniz:

# Mode
0 düz
1 Combination
3 Kaba kuvvet
6 Hibrit kelime listesi + maske
7 Hibrit maske + kelime listesi

1.Straight

Bu saldırı modu" Sözlük Saldırısı "olarak da bilinir. Söylenecek pek bir şey yok, sadece bir sözlük verildiğinde hashcat sözlüğün içeriğini satır satır okuyacak, her satırın karma değerini hesaplayacak ve hedef karma değeriyle karşılaştıracaktır.

Örnek:

     hashcat   -a   0   -m   400   örnek400.hash   örnek.dict 

2.kombinasyon

Baidu bana kombinasyonun bir isim olduğunu ve şu anlama geldiğini söyledi: "kombinasyon; konsorsiyum; şifre kombinasyonu; tulum ve iç çamaşırı". Bu saldırı modu aslında çok basittir, yani iki şifre sözlüğünün içeriğini birleştirir. Bu saldırı modunu kullanmak, iki şifre sözlüğünün belirtilmesini gerektirir. Diyelim ki iki şifre sözlüğümüz dict1.txt ve dict2.txt, içerikleri şu şekildedir:

     avcılık 
Kedi 
    Gökkuşağı 

ve

     paris 
    rock 

sonra komut:

     hashcat   -m   0   -a   1   hash.txt   dict1.txt   dict2.txt 

Aslında denenen sözlük:

     huntingparis 
Avcılık Kayası 
    kittyparis 
    kittyrock 
Gökkuşağı Paris 
    rainbowrock 

dict1.txt içindeki kelimeler solda, dict2.txt içindeki kelimeler sağda, toplam 3×2=6.

Bu modla ilgili parametreler şunlardır:

     -j,   - -rule-left 
    -k,   - -rule-right 

-j'den sonraki kural sol tarafa, -k'den sonraki kural ise sağa etki eder. -j' $-'parametresi eklenirse, o zaman denenen gerçek sözlük şudur:

     hunting-paris 
Avcılık Kayası 
kitty-paris'te 
    kitty-rock 
Yağmur-YayParis 
    rain-bowrock 

Parametre ekle-j '^!', O zaman denenen asıl sözlük şudur:

    ! avcıParis 
  ! avcılık 
  ! kittyparis 
  ! kittyrock 
  ! gökkuşağıParis 
  ! rainbowrock 

-k'^ >' parametresini ekleyin, ardından denenen gerçek sözlük şu şekildedir:

     hunting > paris 
Avcılık Kayalar 
kitty, paris. 
kitty, kaya. 
    Yağmur 
    rain > bowrock 

Bu kural nedir? "$" ve "^" kullanımı düzenli ifadelere benzer, yani düzenli midir? Aslında hayır. hashcat'in kuralları kendiliğinden uygulanır, bu da büyük bir içerik parçasıdır. Ayrıntılar için bkz. Kural Tabanlı Saldırı

3.Brute-force

Verilen karakter kümesinin çeşitli kombinasyonlarını deneyin. Resmi hashcat wikisine göre bu yöntem modası geçmiş ve yerini tamamen maske saldırısı aldı, dolayısıyla hiçbir araştırma yapılmamaktadır,

4. maske saldırısı

Bu nispeten yeni bir saldırı yöntemidir. Örnek aşağıdaki gibidir:

     hashcat   -a   3   -m   0   md5.hash  ? Ben mi? Ben mi? Ben mi? Ben mi? l 

Her ne kadar "Saldırı Modları" tablosuna göre-a 3 kaba kuvvete karşılık gelse de aslında-a 3 maske saldırısını kullanır. Maske saldırısı gelişmiş bir kaba kuvvet olarak görülebilir.

-m parametresi karma fonksiyon türünü belirtmek için kullanılır ve md5 değeri md5.hash dosyasında saklanır. Anahtar son dize "? l? l? l? l? l? l" dir. Böyle bir dizeye maske denir.

Maske, birkaç yer tutucudan oluşan bir dizedir. "? l" bir yer tutucudur; burada "?", "l" yi değiştirmek için kullanılan bir anahtar kelimedir. "? l", "? l" ye ek olarak bir karakter kümesini temsil eder. "? u", "? d", "? h", "? h", "? s", "? a" ve "? b" aşağıdaki tabloda gösterildiği gibi karakter kümesini temsil eder.

0 – 0xff
? Charset
l ABCDEFGHIJKLMNOPQRSTUVWXYZ
u ABCDEFGHIJKLMNOPQRSTUVWXYZ
d 0123456789
H 0123456789abcdef
H 0123456789abcdef
s ! "#$% & ' () * +, -. /:; < = >? @ [\] ^_` ~ {|}
a ? Ben mi? Sen mi? d mi? s
b

Böylece, "? l? l? l? l? l? l" aslında şifre sözlüğüne eşdeğer olduğunu anlıyoruz:

 aaaaa 
aaaab 
... 
zzzzz 

Aynı şekilde "? l? u? d" şifre sözlüğüne eşdeğerdir:

     aA0 
aA1 
  ... 
    
  ... 
    zZ9 

Yukarıdaki tablodaki karakter kümesi hashcat'a yerleştirilmiştir, ayrıca karakter kümesini kendimiz de belirtebiliriz:

     - -custom-charset1= karakter kümesi1 
    - -custom-charset2= karakter kümesi 2 
    - -custom-charset3= karakter kümesi 3 
    - -custom-charset4= karakter kümesi 4 

Parametre – custom-charsetn-n olarak kısaltılabilir, örneğin – custom-charset1-1 olarak kısaltılabilir. -N ile belirtilen karakter kümesi, maskede "? N" yer tutucu olarak belirtilir, örneğin:

     -1   abc123  ? 1? 1? 1 

şifre sözlüğüne eşdeğerdir:

     aaa 
  aab 
  ... 
    
  ... 
    333 

-N'den sonra, karakter kümesini temsil eden dizeye ek olarak, aynı zamanda. hcchr ile biten bir dosya da olabilir. Dosyada karakter kümesi saklanır. hashcat, kurulum paketinin charsets/dizininde bulunan birçok. hcchr dosyasıyla birlikte gelir.

"??" yer tutucusu tarafından temsil edilen karakter koleksiyonu "?" nin kendisidir. Buna ek olarak, geri kalan karakterler yer tutucu olarak kullanıldığında karakterlerin kendilerini temsil eder. Örneğin "? lwerner? d" şifre sözlüğüne eşdeğerdir:

     awerner0 
Azerner1 
  ... 
    zwerner9 

Yukarıdaki bilgilerle Maske'yi anlamak kolaydır. Bir maske birkaç yer tutucudan oluşur, her yer tutucusu bir karakter kümesidir ve bir maske, her yer tutucusu karakter kümesinin bir kombinasyonudur. Yer tutucu sayısı şifrenin uzunluğuna eşittir. Bu tür bir tasarımın sadece bir karakter seti ve şifre uzunluğu vermekten faydaları nelerdir?

Birinin şifresini bildiğimizi varsayalım ki toplam 7 basamak var. İlk basamak büyük harf, sonraki 3 basamak küçük harf ve son 3 basamak sayı. Geleneksel bir brute force kırması ise, toplam 62 karakterden oluşan A-Z, A-Z ve 0-9 karakter kümeleri gerektirir ve en fazla 62^7=3 521 614 606 208 kez denenmesi gerekir, bu da trilyon düzeyindedir. Bu şifreyi tanımlamak için maske kullanmak "\u\l\l\l\d\d\d" dir. Hesaplanması kolaydır. Toplam (26^4) × (10^3) =456 976.000 olasılık vardır. Milyarlarca seviye, önceki yönteme kıyasla 4 büyüklük sırası daha azdır.

Bir adım geri atmak gerekirse, parolaların dağılımını bilmesek bile, geleneksel brute force kırmanın etkisini maske kullanarak simüle etmek kolaydır.

Şimdi sorun şu: Maske sabit, içinde kaç yer tutucu ölü yazılmış ve şifrenin uzunluğunu bilmiyorsak ne yapmalıyız? Şifre çok uzunsa sorun değil, birinin şifresi yalnızca 3 haneli ve bizim 4 yer tutucumuz varsa ve ne olursa olsun çözülemiyorsa, bu büyük bir kayıp olmaz mı? 1'den başlayarak her uzunluktaki maskeleri tekrar yazmalı mıyız? Bu ne kadar sıkıntılı.

İki çözüm vardır. Biri maske dosyasını kullanmak, bir dosyaya birden fazla maske yazmak ve ardından bu dosyayı komut satırında belirtmektir. Maske dosyasının. hcmask ile bitmesi gerektiğini unutmayın.

Örneğin test.hcmask'ın içeriği:

    ? l 
  ? Ben mi? l 
  ? Ben mi? Ben mi? l 
  ? Ben mi? Ben mi? Ben mi? l 

Dosyayı aşağıdaki komutla kullanın:

     hashcat   -m   0   -a   3   - -show   md5.hash   test.hcmask 

Başka bir çözüm, hashcat'e verdiğimiz maskeye basarak bir yer tutucusundan başlamasını söyleyen – increment parametresini eklemektir ve verdiğimiz uzunluğa kadar iki veya üç tane daha deneyin. Örneğin, "abc" yer tutucusunu yazıyoruz ve ardından aşağıdaki dizenin md5 değerini hesaplıyoruz:

     A:0cc175b9c0f1b6a831c399e269772661 
    b:92eb5ffee6ae2fec3ad71c777531578f 
    c:4a8a08f09d37b73795649038408b5f33 
    ab:187ef4436122d1cc2f40dc2b92f0eba0 
    ac:e2075474294983e013ee4dd2201c7a73 
    ba:07159c47ee1b19ae4fb9c40d480856c4 
    bc:5360af35bde9ebd8f01f492dc059593c 
    ca:5435c69ed3bcc5b2e4d580e393e373d3 
cb:d0d7fdb6977b26929fb68c6083c0b439 
    abc:900150983cd24fb0d6963f7d28e17f72 
    abc:900150983cd24fb0d6963f7d28e17f72 
    bac:79ec16df80b57696a03bb364410061f3 
    bca:b64eab8ce39e013604e243089c687e4f 
    cba:3944b025c9ca7eec3154b44666ae04a0 
    cab:16ecfd64586ec6c1ab212762c2c38a90 

":" den önce hesaplanacak hash değeri olan orijinal dize, ":" den sonra hesaplanan hasn değeri gelir. Yukarıdaki içeriği md5.hash dosyasına kaydedin ve ardından aşağıdaki komutu çalıştırın:

     hashcat   -m   0   -a   3   - -show   - -username   md5.hash   abc 

Parametre ekleyin – kullanıcı adı, her bir hash değerimizin önünde orijinal bir dize olması nedeniyle. Bu parametreyi eklemezseniz, hashcat doğru hash değerinin bulunamadığını gösterecektir. Bu parametreyi ekleyerek hashcat, hash değerinden önceki dizenin hash değeri için kullanıcı adı olduğunu düşünecektir, böylece hash değeri sorunsuz bir şekilde yüklenebilir.

Çalıştırmanın sonucu sadece bir hash çözüldü:

     900150983cd24fb0d6963f7d28e17f72:abc 

Şimdi parametreyi ekleyin – increment ve tekrar çalıştırın:

     hashcat   -m   0   -a   3   - -show   - -increment   - -username   md5.hash   abc 

Bu sefer iki karma daha çözüldü:

     0cc175b9c0f1b6a831c399e269772661:a 
    187ef4436122d1cc2f40dc2b92f0eba0:ab 

Görüldüğü gibi – artış rol oynamıştır. Ancak aynı zamanda, bu parametreyle hashcat'in yalnızca A, ab ve abc'yi sırayla deneyeceğini ve yer tutucuları sırayla düzenlemeyeceğini ve birleştirmeyeceğini ve çeşitli olasılıkları denemeyeceğini de biliyoruz.

5. Hibrit saldırı

Hibrit saldırı, birleştirici saldırıya benzer. Birleştirici saldırı, iki sözlüğü birleştirirken, hibrit saldırı, bir sözlüğü ve bir maskeyi birleştirirken, ikisi de benzer.

Diyelim ki zaten örnek.dict adlı bir sözlüğümüz var:

     Merhaba 
    werner 

sonra komut:

     hashcat   -m   0   -a   6   md5.hash   example.dict  ? d mi? d 

Sözlüğü kullanmaya eşdeğerdir:

     Merhaba 
Merhaba01 
  ... 
Merhaba99 
werner00 (İstanbul) 
    werner01 
  ... 
    werener99 

sonra komut:

     hashcat   -m   0   -a   7   md5.hash  ? d mi?   dexample.dict 

Sadece bir sözlük kullanmaya eşdeğerdir:

     00hello 
Merhaba. 
  ... 
Merhaba. 
    00werner 
    01werner 
  ... 
    99werener 

Bir önceki:Hashcat yazılımıyla çeşitli hash’leri nasıl kırabilirsiniz?
Sonraki:Hashcat Kullanım Yöntemi Teknoloji Paylaşımı
  • Word, Excel, PPT, PDF, RAR, ZIP, 7Z, sıkıştırılmış paket, Office şifreli dosyaların kilidini açma ve şifresini çözmeye odaklanın
  • Kullanıcılara yüksek kaliteli dosya sıkıştırılmış paket şifre kurtarma, PDF kilidini açma kelime şifre kurtarma
  • sunuyoruz
  • Telif Hakkı © Belge Şifre Kurtarma Ustası Çevrimiçi Şifre Çözme Platformu