hash fonksiyonu, bir tür fonksiyon için genel bir terimdir. Bu tür bir fonksiyonun girişi herhangi bir ikili verilerdir ve çıkışı sabit uzunluktaki ikili verilerdir. Bu tür bir fonksiyon aşağıdaki özelliklere sahiptir:
Tek yönlülük: Girişten çıktıyı hesaplamak basit ve hızlıdır, ancak çıktıdan girdi çıkarmak matematiksel olarak mümkün değildir.
Çarpışma kısıtlaması: Aynı çıktıya sahip iki farklı girişi bulmak son derece zordur
Bu özellikleri karşılayan fonksiyonlara hash fonksiyonları denilebilir. Belirli bir veri, bir karma fonksiyonunun girişi olarak kullanılır ve çıktı hesaplanır. Bu çıktıya verilerin karma değeri denir.
hash fonksiyonunun ana işlevlerinden biri şifreyi güvenli bir şekilde saklamaktır. Şifreyi doğrudan kaydedemez (yani düz metin şifresi saklamaz), ancak doğrulama sırasında şifrenin karma değerini kaydeder. yalnızca girilen şifreyi tekrar hesaplamanız gerekir. Şifrenin doğru olup olmadığını bilmek için kaydedilen şifrenin karma değeri ile karşılaştırılır. hash fonksiyonunun tek yönlülüğü ve çarpışma kısıtlamalarının özellikleri nedeniyle, bir saldırgan şifrenin karma değerini alsa bile şifrenin kendisini bilmek zordur.
Saldırgan şifrenin hash değerini aldı, gerçekten şifrenin kendisini bilmenin bir yolu yok mu? Elbette hayır. Her ne kadar şifrenin karma değerinden doğrudan hesaplanması matematiksel olarak mümkün olmasa da, karma fonksiyonunun girdiden çıktı elde etmesinin basit ve hızlı olduğunu biliyoruz. En kötü ihtimalle bunu deneyebilirsiniz. İnsanların ayarlayabileceği tek şifreler bunlardır, tek tek deneyin, şanslıysanız yine de deneyebilirsiniz. Karma değerine karşılık gelen girişi elde etmeye sürekli çalışma işlemine patlama denir.
Bu düşünceye dayanarak hashcat ortaya çıktı. hashcat'in hash'i patlatmanın çok basit olduğunu kanıtlamak için doğduğu söyleniyor. hashcat, dünyanın en hızlı hash patlatma aracı olduğunu iddia ediyor ve eğer varsa GPU ve FGPA bile destekliyor.
hashcat sadece hızlı değil, aynı zamanda iki yüzden fazla hash fonksiyonunu profesyonel olarak destekler, komutları kullanarak:
hashcat - -help
hashcat tarafından desteklenen tüm hash fonksiyonlarının listesini görebilirsiniz, çok fazla, burada yayınlamayacağım.
hashcat varsayılan olarak Kali'ye yüklenmiştir ve doğrudan kullanılabilir. Ancak kalim VirtualBox'a yüklü ve her zaman sanal makinenin daha yavaş olacağını hissediyorum, bu yüzden fiziksel ana bilgisayarda hashcat kullanmak istiyorum. hashcat'ı indirmek için önce hashchat'in resmi web sitesine gidin. Şu an itibariyle en son sürüm 2017.04.05 tarihinde piyasaya sürülen v3.5.0'dır. Güncelleme tarihinden hashchat'in canlılık dolu olduğu görülebilir. Derleme zahmetini ortadan kaldırın ve ikili paketi doğrudan indirin. Sadece 2,7 milyon, bu da genellikle onlarca GB'ye mal olan oyunlarla karşılaştırıldığında çok küçük.
İndirme tamamlandıktan sonra hashcat'ı açın ve şunları görün:
Bu tür dosyalar sırasıyla 32 bit ve 64 bit altında linux ve windows'ta yürütülebilir dosyalardır. Bilgisayarınızın durumuna göre bunlardan birini seçin. hashcat64.bin'i seçtim. Güzellik adına ~ /. bashrc dosyasına bir satır ekleyin:
alias hashcat = ' hashcat64.bin'in yolu '
Kaydettikten sonra ~ /. bashrc dosyasını etkili hale getirmek için sanal terminali yeniden açın. Bu şekilde nerede olursanız olun, dizinleri değiştirmeden veya çirkin "64.bin" girmeden doğrudan hashcat komutunu girebilirsiniz. aşağıdaki şekilde gösterildiği gibi.
Tamam, şimdi hashcat kullanarak çeşitli hash patlatmaya başlayabilirsiniz.
md5, en ünlü ve en yaygın kullanılan karma fonksiyonlarından biri olmalıdır. Önce patlatma için birkaç md5 değeri oluşturmak için Python'u kullanın. Kod aşağıdaki gibidir:
import hashlib Parolalar = [' 123123 ', ' bond007 ', ' xxxxxx ', ' *H@ & (NT*@BR#^ '] şifresi için şifrelerinde: md5 = hashlib.md5 () md5.update (şifre) print md5.hexdigest ()
Yukarıdaki kod sırasıyla dört dizenin karma değerlerini hesaplar ve çıktı sonucu:
4297f44b13955235245b2497399d7a93 cbdb7e2b1ed566ceb796af2df07205a3 cbdb7e2b1ed566ceb796af2df07205a3 dad3a37aa9d50688b5157698acfd7aee d77db958c179bbffae04b2b908b75c26
Çıktı sonuçlarını md5.hash dosyasına, satır başına bir hahs değeri ile kaydedin. Daha sonra bu karma değerleri patlatmak için hashcat'ı kullanın. Komut aşağıdaki gibidir:
hashcat -w 3 -a 0 -m 0 - -remove -o md5.out md5.hash wordlist.dic
Parametre-w, aşağıdaki tabloda gösterildiği gibi dört çalışma modunu belirtmek için kullanılır:
| N | Performans | Çalışma süresi | Güç tüketimi | Masaüstü etkisi |
|---|---|---|---|---|
| 1 | Düşük | 2 ms | düşük | minimum |
| 2 | varsayılan | 12 ms | ekonomik | fark edilebilir |
| 3 | Yüksek | 96 ms | Yüksek | Yanıt vermiyor |
| 4 | Kabus | 480 ms | Çılgın | Başsız |
Parametre-a saldırı modunu belirtmek için kullanılır, 0'ın anlamı doğrudan ve sürekli, yani şifre sözlüğü ile patlatılır. Aşağıdaki tabloda gösterildiği gibi-a'nın beş değeri vardır:
| N | Mod |
|---|---|
| 0 | Düz |
| 1 | Kombinasyon |
| 3 | Brute-force |
| 6 | Hibrit kelime listesi + maske |
| 7 | Hibrit maske + kelime listesi |
-m Patlatılacak hash belirtmek için kullanılır Değerin karma fonksiyonu, 0, karma fonksiyonunun md5 olduğu anlamına gelir. Diğer değerler aşağıdaki tabloda gösterildiği gibidir:
| N | ad | kategori |
|---|---|---|
| 0 | MD5 | ham Hash |
| 300 | MySQL4.1/MySQL5 | Veritabanı Sunucusu |
| 1000 | NTLM | İşletim Sistemleri |
| 1800 | sha512crypt $6$, SHA512 (Unix) | İşletim Sistemleri |
| 2611 | vBulletin < v3.8.5 | Forumlar, CMS, E-Ticaret, Çerçeveler |
Bu tablo çok uzun. Burada bu makalede yer alan yalnızca birkaç karma fonksiyonunu göstereceğim. Hepsini görmek için – help parametresini kullanabilirsiniz.
Parametre – remove, belirli bir karma değeri başarıyla patlatılırsa değerin md5.hash' dan kaldırılması anlamına gelir.
Parametre-o, patlatma sonuçlarının nerede kaydedildiğini belirten bir dosya adıyla takip edilir.
Son iki parametre md5.hash ve wordlist.dic sırasıyla patlatılacak hash değeri ve şifre sözlüğüdür. Hem hash değeri hem de şifre sözlüğü her satırda bir tanedir. md5.hash içeriği Python tarafından hesaplanmıştır. Elinizde uygun bir şifre sözlüğü yoksa şu komutu kullanabilirsiniz:
wget -O wordlist.dic https://samsclass.info/123/proj10/500_passwords.txt
下载一个。现在完事具备,按下回车,结果华丽地报错:(
clGetPlatformIDs(): CL_PLATFORM_NOT_FOUND_KHR
Muhtemelen bir çalışma ortamı eksik, O yüzden yükleyin. Toplamda şunları yükledim:
sudo apt-get install gcc make p7zip-full git lsb-core wget http://registrationcenter-download.intel.com/akdlm/irc_nas/9019/opencl_runtime_16.1.1_x64_ubuntu_6.4.0.25.tgz tar -xvf opencl_runtime_16.1.1_x64_ubuntu_6.4.0.25.tgz cd opencl_runtime_16.1.1_x64_ubuntu_6.4.0.25 sudo . /install.sh
İnternet hızı iyiyse kısa sürede kurulacak. İlk komut bir hata bildirdi:
/sbin/ldconfig.real: /usr/lib/nvidia-375/libEGL.so.1 değil a sembolik link /sbin/ldconfig.real: /usr/lib32/nvidia-375/libEGL.so.1 değil sembolik link
ama hiçbir şeyi etkilemiyor gibi görünüyor, bu yüzden görmezden gelin. Bunları yükledikten sonra tekrar Enter tuşuna basın ve başlangıçta hata komutunu çalıştırın, tekrar hata bildirilmediğini ve yürütmenin göz açıp kapayıncaya kadar tamamlandığını görün. Komut yürütüldükten sonra md5.hash ve md5.out dosyalarının içeriğini kontrol edin ve md5.hash'ta yalnızca bir hash kaldığını görün. Başarılı bir şekilde patlatılan üç hash md5.out dosyasına aktarıldı. md5.out Aşağıdaki şekilde gösterildiği gibi üç hash değeri ve orijinal değerleri vardır:
hash değerini patlatın. Windows giriş şifresi SAM dosyasında kaydedilir, SAM "Güvenlik Hesap Yöneticisi" nin kısaltmasıdır. Genellikle
C: \Windows\system32\config\SAM
SAM dosyası Windows tarafından korunur ve doğrudan okunamaz. SAMInside gibi bir aracın yardımı gerekir. Bir Windows 7 sanal makinesi bulun, hashcat adında yeni bir yönetici kullanıcısı oluşturun ve bir şifre ayarlayın, Windows 7'de SAMInside'yi indirin ve açın, ardından yönetici izinleriyle çalıştırın ve ardından aşağıdaki şekilde gösterildiği gibi Dosya- > Yerel Kullanıcıları Zamanlayıcıya İçe Aç'a tıklayın:
Daha sonra SAMInside "yanıt vermiyor" olabilir, ancak önemli değil, birkaç saniye sabırla bekleyin ve SAMInside beklentileri doğruladı ve istediğimizi okudu. Aşağıdaki şekilde gösterildiği gibi karma:
Şifreyi patlatmak istediğimiz kullanıcıyı seçin "hashcat", NT-hash'i kopyalamak için Ctrl +5'e basın, ardından hashcat'ın yüklü olduğu Ubuntu'ya geri dönün ve kopyalanan karma değerini win7.hash dosyasına kaydetmek için aşağıdaki komutu kullanın:
echo 356CEAE0C89FB65ED6D6AA7A445C4CE5 {> hashcat -w 3 -a 0 -m 1000 - -remove -o win7.out win7.hash wordlist.dic
Bir süre sonra yürütme tamamlandı, win7.out dosyasını kontrol ettim ve patlamanın başarılı olduğunu gördüm. hashcat kullanıcısının giriş şifresi rush2112:
werner@Yasser: ~ /hashcat$ cat win7.out
356ceae0c89fb65ed6d6aa7a445c4ce5:rush2112
SAM dosyasının nasıl elde edileceği için lütfen "Windows Hash Serisi 1 Nasıl Dışa Dışa Dışa Gidilir" bölümüne bakın. Aşağıda sanal makine Windows 7'deki SAM dosyasını okuma işlemim kaydedilmiştir.
Fiziksel bir makine ise, makineyi Win PE ile başlatın ve diskteki SAM dosyasını okuyun. Benimki sanal bir makinedir, sanal disk dosyalarını dosya sistemine monte ederek sanal diskteki dosyaları okuyabilirim. Kullandığım sanal makine VirtualBox ve vdfuse komutunu kullanarak bunu yapabilirim. vdfuse yoksa önce virtualbox-fuse'u yüklemeniz gerekir:
sudo apt-get install virtualbox-fuse
Ayrıca virtualbox-fuse'u indirebilirsiniz. Kurulum paketini kendiniz kurun.
Kurulum tamamlandıktan sonra sanal disk eşlemeye ve montajına başlayabilecek vdfuse komutu olacak:
mkdir -p ~ /vmdisk
sudo vdfuse -t vmdk -f Win7Pro32.vmdk ~ /vmdisk/
Bu adımı gerçekleştirdikten sonra ~ /vmdisk dizinine bakın, içinde üç dosya var: entidisk, Partition1 ve Partition2, yeni dizin:
mkdir -p ~ /vmdisk_en
mkdir -p ~ /vmdisk_1
mkdir -p ~ /vmdisk_2
EntireDisk, Partition1 ve Partition2 dosyalarını sırasıyla monte etmek için monte komutunu kullanın:
sudo mount ~ /vmdisk/EntireDisk ~ /vmdisk_en
sudo monte ~ /vmdisk/Partition1 ~ /vmdisk_1
sudo mount ~ /vmdisk/Partition2 ~ /vmdisk_2
EntireDisk montajının başarısız olduğunu buldum, Partition1'deki içerik istediğim şey değildi, Partition2'deki Windows 7 sanal makinesindeki dosya tam olarak istediğim şey. Hedef SAM dosyamızı vmdisk_fs' den kopyalayın:
cp ~ /vmdisk_2/Windows/System32/config/SAM . /
Bu arada sistem dosyasını da kopyalayın:
cp ~ /vmdisk_2/Windows/System32/config/SYSTEM . /
Aşağıdaki şekilde gösterildiği gibi SAM dosyasının içeriğini görüntüleyin, düz bir metin dosyası değil, gerçekten de Windows tarzı,
Tamam, SAM dosyasını başarıyla açmış olsak da hâlâ hash alamadık, bundan sonra ne yapmalıyız? SAM dosyasının içeriğini yalnızca araçlarla ayrıştırabilirsiniz. Hem sam dosyasını hem de sistem dosyasını Kali'ye koyun ve komutu çalıştırın:
samdump2 -o sam.hash SYSTEM sam
Daha sonra sam.hash'i görüntüleyin ve ayrıca her kullanıcının giriş şifresinin karma değerini görebilirsiniz. sam.hash dosyasındaki her satır bir kullanıcıdır ve her satırın biçimi şu şekildedir:
Kullanıcı adı: RID:LM-hash value: NTLM-hash value
Bu formatın samdump2 komut çıkış formatıdır ve "Windows altında hash şifre formatı" değildir.
3. linux giriş şifresini patlatın hash
Öncelikle linux sistemini çalıştıran bir bilgisayara sahip olmanız gerekir. Bunu söylemek kolaydır, sadece sanal makine yeterlidir. Ardından yeni kullanıcılar eklemek ve patlamamız için şifre ayarlamak için aşağıdaki komutu çalıştırın:
sudo adduser justforfun
linux'taki kullanıcı giriş şifresinin karma değeri/etc/shadow dosyasında saklanır (not: /etc/passwd değil), yeni kullanıcının giriş şifresinin karma değerini görüntülemek için aşağıdaki komutu kullanın:
test@test-VirtualBox: ~ $ sudo tail -n 1 /etc/shadow
justforfun:$6$0fokwg59$6hpMS5dM9wDT/42DDoSD0i0g/wHab50Xs9iEvVLC3V20yf1kRmXZHGXCM0Efv6XU69hdgMZ4FwaMzso4hQaGQ0:17373:0:99999:7:::
kuyruk komutu bir dosyanın son satırlarını okumak için kullanılır, varsayılan 10 satırdır, satır sayısını belirtmek için-n parametresi kullanılır. Yeni oluşturduğumuz kullanıcı doğal olarak son satırdadır, dolayısıyla okumak için tail-n 1 kullanılır. Okunan sonuç ":" ile bölünmüş verilerdir. İlk kısım "justforfun" kullanıcı adıdır ve ikinci kısım şifrenin karma değeridir. Diğer kısımlar bu makalede önemsenmemektedir. İkinci bölüme odaklanıyoruz.
ile başlayan "$6$", kullanılan hash fonksiyonunun türünün SHA-512 olduğu anlamına gelir. linux'ta "$6$" dışında "$1$" MD5'i, "$2a$" Blowfish'i, "$2y$" Blowfish'i ifade eder (8 bit karakterlerin doğru işlenmesi), "$5$" SHA-256'yı ifade eder, ayrıntılar için Vikipedi'ye bakın: passwd. Ayrıca/etc/login.defs dosyası da karma algoritmasını açıklar.
"$6$" dan başlayarak bir sonraki "$" dan önceki "0fokwg59" bölümü tuzdur. Tuz nedir? Baidu, CNB2009'un " md5 tuz değeri nedir " sorusuna verdiği cevabın basit ve anlaşılması kolay olduğunu biliyor:
Basitçe söylemek gerekirse, aynı şifreyi farklı karma değerlere sahip hale getirmenin bir yoludur. Bu, tuzlanmadır. MD5'in kendisi geri döndürülemez, ancak şu anda internette ters sorguyu destekleyen birçok veritabanı mevcuttur. Kullanıcı şifre veritabanı yanlışlıkla sızdırılırsa, bilgisayar korsanları ters sorgu yoluyla kullanıcı şifresini elde edebilir veya veritabanında daha sık görülen karma kodları (yani) kullanabilir. Birçok kişi tarafından kullanılan) brute force kırılması için (çünkü genellikle zayıf bir parola). Tuz değeri, şifre karma işlemi sırasında eklenen ek rastgele değerdir. Örneğin, kimliğim epilepsi ω invert④ ve şifrem 123456'dır. Veritabanında saklandığında, "123456/epilepsi ω invert④" dizesini karıştırabilirim. Şifre doğrulanırken, doğrulama için "(doğrulanacak şifre) /epilepsi ω invert④" dizesi de kullanılır. Bu şekilde, şifre 123456 olduğunda başka bir aptal olduğunda, farklı karma değerleri yine de oluşturulabilir ve başarıyla doğrulanabilir. Şu anda kimliğim şifre için karmaşık bir karma yapmak için tuz değeri olarak kullanılır. Peki ya.. Tuz değerinin rolü, veritabanı sızıntılarından kaynaklanan kayıpları azaltmaktır. Eğer RP'niz çok iyiyse ve şifremi 123456 olarak tahmin ediyorsanız, sizi durduramam
Bu cevap md5 içindir ve aynı şey diğer hash işlevleri için de geçerlidir. Tuzdan sonraki kısım hash değeridir. Şimdi ikinci bölümün tamamını linux.hash dosyasına kopyalayın, linux.hash içeriği şöyle olmalıdır:
$6$0fokwg59$6hpMS5dM9wDT/42DDoSD0i0g/wHab50Xs9iEvVLC3V20yf1kRmXZHGXCM0Efv6XU69hdgMZ4FwaMzso4hQaGQ0
Sonra şu komutu kullanarak linux giriş şifresi hash patlatın:
hashcat -w 3 -a 0 -m 1800 - -remove -o linux.out linux.hash wordlist.dic
Bir süre sonra patlama tamamlandı, sonuçları görüntüle:
werner@Yasser: ~ /hashcat$ cat linux.out
$6$0fokwg59$6hpMS5dM9wDT/42DDoSD0i0g/wHab50Xs9iEvVLC3V20yf1kRmXZHGXCM0Efv6XU69hdgMZ4FwaMzso4hQaGQ0:4321
Patlamanın başarılı olduğu görülmektedir.
4. Mysql giriş şifresini patlatın hash
Öncelikle Mysql olmalıdır. Sanal makinemde var. Baidu, Mysql giriş şifresinin karma değerinin user.MYD dosyasına kaydedildiğini biliyor. user.MYD dosyası nerede? Ben de bilmiyorum, sadece arıyorum:
test@test-VirtualBox: ~ $ sudo find / -name user.MYD
/var/lib/mysql/mysql/user.MYD
bulundu. /var/lib/mysql/mysql/user.MYD adresinde bulundu. Dosyanın içeriğini görüntüleyin:
sudo cat /var/lib/mysql/mysql/user.MYD
düz bir metin dosyası değildir ve pek bir ilgisi yoktur. Yine de kullanıcının kök giriş şifresinin karma değerinin olduğunu görebilirsiniz:
6B825255FB466413D6B1B724644E23428C94BBCB
Bu değeri mysql.hash dosyasına kaydedin ve mysql giriş şifresi karma değerini patlatmak için aşağıdaki komutu kullanın:
hashcat -w {}
Bir dakika sonra patlama tamamlandı, sonuçları görüntüle:
werner@Yasser: ~ /hashcat$ cat mysql.out
6b825255fb466413d6b1b724644e23428c94bbcb:viper
Patlamanın başarılı olduğu görülüyor.
5. Patlama Discuz! Forum Şifresi
Discuz! Ülkemizde tanınmış bir php forum programıdır ve yaygın olarak kullanılmaktadır. Şimdi Discuz'u patlatalım! Kullanıcı şifresinin hash değeri. Öncelikle hash değerini bulmalısınız, nerede bulabiliriz? Tabii ki Discuz'dan! veritabanında.
Discuz olabilir! Veritabanı nerede? Bu şekilde çözdüm, Discuz'un en son sürümünü resmi web sitesinden indirin! Kaynak kodu, çalıştırın ve yükleyin ve Discuz'u alın! Veritabanı
Discuz! Varsayılan veritabanı adı ultrax'tir ve pre_ucenter_members tablosu giriş şifresinin karma değerini saklar. "pre_" varsayılan önektir ve kurulum sırasında değiştirilebilir. "ucenter_members" değişmeyecektir. Giriş şifresinin karma değerini sorgulamak için aşağıdaki sql ifadesini kullanın:
select password,salt from pre_ucenter_members;
hash ve tuz değerlerini dosyaya kaydet:
echo 69bcba126b93c6f397983629a0f70553:c13fd9 > discuz.hash
hash değeri ve tuz değeri aynı satırda, ":" ile bölünmüş. Son olarak, aşağıdaki komutla Discuz giriş şifresi hash patlatın:
hashcat -w 3 -a 0 -m 2611 - -remove -o discuz.out discuz.hash wordlist.dic
Bir dakika sonra patlatma tamamlandı, sonuçları görüntüle:
werner@Yasser: ~ /hashcat$ cat discuz.out
69bcba126b93c6f397983629a0f70553:c13fd9:winter
Patlamanın başarılı olduğu görülmektedir.
6. Büyük sözlük testi
Şu ana kadar yalnızca 500 kelimeden oluşan küçük bir sözlük kullanıyoruz. Her seferinde çeşitli karışımları başarıyla patlatmak sadece bir an sürer. Garip değil mi? Bunun nedeni, hashcat'ı kullanmayı pratik etmek için sözlüğe kasıtlı olarak zayıf bir şifre ayarlamamdır, aksi takdirde patlamamak kötü bir ruh haline gelmez mi? Uygulamada bu kadar iyi bir şans olamaz. O kadar da zayıf olmayan bir şifrenin md5 değerini rastgele hesaplayalım, büyük bir sözlük ile patlayalım, bir yandan şansımızı deneyelim, diğer yandan hashcat'ın ne kadar hızlı olabileceğini görelim.
Önce md5 değerini hesaplayın:
import hashlib
md5 = hashlib.md5 ()
md5.update (" werner123456!!! ")
print md5.hexdigest () Çıkış şu şekildedir:
b17133f9abff287ed0546c1af2b171f7
Daha sonra 940 milyon şifre içeren 10.5G boyutundaki bir sözlük seçin ve patlamaya başlayın:
hashcat -w 3 -a 0 -m 0 - -remove -o big.out b17133f9abff287ed0546c1af2b171f7 big.dic
Sadece bir hash değeri olduğunda, bunu dosyaya kaydetmenize gerek yok, doğrudan komut satırı parametrelerine yazabilirsiniz. Yatmadan önce patlatmaya başladım, ertesi gün sonuçlara bakmak için kalktım ve şunu buldum:
Başladı: Çarşamba Tem 26 22:55:27 2017
Durduruldu: Çarşamba Tem 26 23:02:28 2017
Sadece 7 dakika sürdü! 7 saat süreceğini düşündüm, beklediğimden 60 kat daha hızlı! hash değerinin başarılı bir şekilde patlatılmaması biraz üzücü. Görünüşe göre "werner123456!!!" şifre sözlüğünde değil. Görünüşe göre 100G şifre sözlüğü hazırlamam gerekiyor, ancak bu kadar büyük bir sözlüğü kaydetmek ve aktarmak çok sakıncalıdır, başka bir yol yok mu? Tabii ki var, saldırı modunu hatırlıyor musun? "Düz" modu kullanıyoruz, sonra diğer birkaç modu inceleyelim.
7. Özet
hashcat'ı patlatmak için kullanırken ilk olarak doğru hash'i bulmaktır. Farklı sistemler ve farklı yazılımlar, hash'i farklı konumlarda saklar ve hash değerini doğru bir şekilde bulmanız gerekir. gelin; İkincisi, karma türünü doğru bir şekilde belirlemek, hashcat'in bu karma türünü destekleyip desteklemediğini belirlemek ve doğru-m parametrelerini seçmektir, aksi takdirde başarılı olmak neredeyse imkansızdır; Üçüncüsü, şifre sözlüğünün daha iyi olmasıdır. Sonunda başarılı olup olmayacağı sözlüğe bağlıdır. Şifre sözlüğü ne kadar büyük olursa o kadar iyi olmasa da, daha büyük olması daha iyidir. hashcat aynı zamanda hızıyla da ünlüdür. Büyük sözlükler hashcat için sorun değildir. İşte daha iyi bir sözlük: Önceki sızıntı kapıları + yaygın olarak kullanılan zayıf şifre sözlüğü koleksiyonu. 7Z , açma şifresi: anywlan. Ek olarak, birçok küçük sözlük toplarsanız, hashcat patlamasını kolaylaştırmak için büyük bir sözlük elde etmek için küçük sözlükleri birleştirebilir, sıralayabilir ve kopyalayabilirsiniz. Küçük sözlükler aynı dizinde ise bunu tek bir komut kullanarak yapabilirsiniz:
cat * | sort | uniq > Merge.dic
Ya küçük sözlükler kategorilere göre düzenlenip çok katmanlı dizinlere dağıtılırsa? Sadece cat komutunu kullanmak elbette işe yaramaz ama aslında sadece bir komuta ihtiyaç vardır. Küçük sözlüklerin MyDictionary dizininde saklandığını varsayarsak komut şu şekilde yazılabilir:
find . /MyDictionary -type f -exec cat {} \; | sıralama | uniq > Merge.dic