MD5 Cracking — Rainbow Table Yechimi
Masala tahlili
MD5 hash cracking. Berilgan: 5f4dcc3b5aa765d61d8327deb882cf99
Fikrlash jarayoni
MD5 bir tomonlama funksiya — to'g'ridan to'g'ri decrypt bo'lmaydi.
Lekin oddiy so'zlar uchun rainbow table ishlaydi.
Yechim usullari
1. Online Rainbow Table
CrackStation.net saytiga kirib hash ni joylashtiring:
5f4dcc3b5aa765d61d8327deb882cf99
Natija: password
2. Python bilan wordlist
import hashlib
target = "5f4dcc3b5aa765d61d8327deb882cf99"
# Kichik wordlist
words = ["password", "123456", "qwerty", "admin",
"letmein", "welcome", "monkey", "dragon"]
for word in words:
h = hashlib.md5(word.encode()).hexdigest()
if h == target:
print(f"Topildi: {word}")
break
3. Hashcat bilan
echo "5f4dcc3b5aa765d61d8327deb882cf99" > hash.txt
hashcat -m 0 -a 0 hash.txt /usr/share/wordlists/rockyou.txt
Python script
#!/usr/bin/env python3
import hashlib
target_hash = "5f4dcc3b5aa765d61d8327deb882cf99"
password = "password"
verified = hashlib.md5(password.encode()).hexdigest() == target_hash
print(f"Parol: {password}")
print(f"Tasdiq: {verified}")
print(f"Flag: NULL{{{password}}}")
Yakuniy flag
NULL{password}
Muhim eslatma
MD5 parol saqlash uchun ishlatilmasligi kerak! Bugungi kunda bcrypt, Argon2 yoki scrypt ishlatiladi.