Cara Menggunakan Hashcat: Password Cracking untuk Pemula

Password adalah kunci digital yang melindungi hampir semua akun online. Tapi seberapa kuat sebenarnya password yang kita gunakan? Di dunia cyber security, kemampuan menguji kekuatan password adalah keterampilan fundamental yang harus dikuasai, baik untuk penetration testing maupun audit keamanan internal. Hashcat hadir sebagai tools password cracking tercepat dan paling fleksibel yang tersedia saat ini.

Hashcat mampu memproses miliaran kombinasi password per detik dengan memanfaatkan akselerasi GPU. Ini bukan tools hacking biasa. Ini adalah standar industri yang dipakai oleh profesional keamanan di seluruh dunia untuk menguji ketahanan sistem terhadap serangan brute-force. Baca juga: Jenis Password Cracking yang Sering Dipakai Hacker untuk memahami lanskap ancaman password secara lebih luas.

Menurut Dimas Prasetyo, seorang penetration tester dengan pengalaman delapan tahun di bidang keamanan siber, “Hashcat adalah tools yang wajib ada di toolkit setiap pentester. Kemampuannya memecah puluhan jenis hash dengan kecepatan luar biasa tidak tertandingi oleh tools lain.” Dalam praktiknya, Dimas pernah menggunakan Hashcat untuk mengaudit lebih dari 50.000 hash password karyawan di sebuah perusahaan fintech Indonesia. “Hasilnya mengejutkan. Hampir 40% password berhasil di-crack dalam waktu kurang dari dua jam. Kebanyakan menggunakan pola sederhana seperti ‘password123’ atau nama perusahaan ditambah angka,” jelasnya.

Apa Itu Hashcat dan Mengapa Tools Ini Penting Dipelajari?

Hashcat adalah software open-source untuk password recovery yang diklaim sebagai yang tercepat di dunia. Tools ini dikembangkan oleh Jens “atom” Steube dan tim kontributor global. Hashcat mendukung lebih dari 300 jenis algoritma hash, mulai dari MD5 sederhana hingga bcrypt dan WPA-PSK yang kompleks.

Keunggulan utama Hashcat terletak pada kemampuannya memanfaatkan GPU (Graphics Processing Unit) untuk komputasi paralel. Sebagai perbandingan, CPU mungkin hanya bisa memproses ribuan hash per detik. GPU modern seperti NVIDIA RTX 4090 bisa mencapai puluhan miliar hash per detik untuk algoritma tertentu. Ini seperti membandingkan sepeda dengan jet tempur.

Tools ini penting dipelajari karena tiga alasan utama. Pertama, pemahaman defensif: dengan tahu cara kerja password cracking, tim keamanan bisa merancang kebijakan password yang lebih kuat. Kedua, audit dan compliance: standar seperti ISO 27001 dan PCI DSS mewajibkan pengujian berkala terhadap kekuatan autentikasi. Ketiga, skill profesional: kemampuan menggunakan Hashcat adalah nilai tambah besar untuk karir di bidang penetration testing dan red team.

Hashcat vs Tools Password Cracking Lainnya

Di dunia password cracking, ada beberapa tools populer selain Hashcat. John the Ripper adalah tools klasik yang sudah ada sejak 1996, mendukung banyak format hash, dan sangat fleksibel dengan sistem aturannya. Baca juga: John the Ripper: Fungsi, Mode, dan Cara Kerjanya untuk perbandingan lebih detail.

Perbedaan utamanya: John the Ripper lebih fokus ke CPU, sementara Hashcat dioptimalkan untuk GPU. Untuk cracking skala besar, Hashcat hampir selalu lebih cepat. Namun John the Ripper unggul dalam beberapa format hash spesifik dan memiliki sistem aturan (rule engine) yang sangat kuat. Sebagian pentester profesional menggunakan keduanya secara bergantian sesuai kebutuhan.

Bagaimana Cara Install Hashcat di Linux?

Hashcat tersedia secara default di Kali Linux dan sebagian besar distribusi pentesting. Untuk sistem Linux biasa, instalasi cukup mudah dilakukan. Artikel ini fokus pada sistem berbasis Debian/Ubuntu yang paling umum digunakan.

Install di Kali Linux / Ubuntu

Di Kali Linux, Hashcat sudah terpasang dan bisa langsung digunakan. Cukup buka terminal dan ketik hashcat --help untuk memverifikasi. Untuk Ubuntu atau distribusi Debian-based lainnya, jalankan perintah berikut:

sudo apt update
sudo apt install hashcat

Untuk mendapatkan versi terbaru dengan dukungan GPU maksimal, disarankan mengunduh langsung dari situs resmi hashcat.net. Ekstrak arsipnya dan jalankan dari direktori tersebut. Versi repository Linux seringkali tertinggal beberapa versi di belakang rilis resmi.

Verifikasi GPU Support

Salah satu langkah paling penting setelah instalasi adalah memastikan Hashcat mengenali GPU. Jalankan perintah:

hashcat -I

Perintah ini menampilkan semua GPU yang terdeteksi beserta spesifikasinya. Jika tidak ada GPU yang muncul, kemungkinan driver belum terpasang dengan benar. Untuk GPU NVIDIA, pastikan CUDA toolkit sudah terinstal. Untuk AMD, diperlukan ROCm. Tanpa GPU, Hashcat tetap bisa berjalan menggunakan CPU, tapi performanya akan sangat lambat.

Apa Saja Mode Attack yang Tersedia di Hashcat?

Hashcat menawarkan berbagai mode serangan (attack mode) yang masing-masing punya kegunaan spesifik. Memahami kapan menggunakan mode tertentu adalah kunci sukses password cracking. Berikut empat mode yang paling sering digunakan.

Dictionary Attack (Mode 0)

Dictionary attack adalah mode paling dasar dan seringkali paling efektif. Hashcat membaca file wordlist dan mencoba setiap kata sebagai kandidat password. Ini mengandalkan fakta bahwa banyak pengguna memilih password yang umum atau mudah ditebak.

hashcat -m 0 -a 0 hash.txt wordlist.txt

Parameter -m 0 menunjukkan algoritma MD5, dan -a 0 adalah mode dictionary attack. Wordlist populer yang sering digunakan antara lain rockyou.txt (14 juta password umum), SecLists, dan weakpass. Untuk konteks Indonesia, wordlist khusus bahasa Indonesia bisa dibuat dari kombinasi kata-kata umum, nama tempat, dan pola password lokal.

Brute-Force Attack (Mode 3)

Brute-force attack mencoba semua kemungkinan kombinasi karakter secara sistematis. Mode ini dijamin berhasil secara matematis, tapi bisa memakan waktu sangat lama untuk password yang panjang. Hashcat menggunakan pendekatan mask attack yang lebih cerdas untuk brute-force.

hashcat -m 0 -a 3 hash.txt ?a?a?a?a?a?a

Mask ?a?a?a?a?a?a berarti mencoba semua kombinasi enam karakter dari set lengkap (lowercase, uppercase, digit, special characters). Untuk password delapan karakter, jumlah kombinasi mencapai 95 pangkat 8 atau sekitar 6,6 kuadriliun. Inilah kenapa brute-force murni jarang praktis untuk password lebih dari delapan karakter.

Rule-Based Attack (Mode 0 + rules)

Rule-based attack adalah pengembangan dari dictionary attack. Hashcat menerapkan aturan modifikasi pada setiap kata di wordlist. Contoh aturan: menambahkan angka di akhir, mengganti huruf dengan simbol (leetspeak: a→@, e→3, i→1), atau mengkapitalisasi huruf pertama.

hashcat -m 0 -a 0 hash.txt wordlist.txt -r rules/best64.rule

File aturan best64.rule berisi 64 aturan cracking paling efektif yang memberikan rasio keberhasilan tertinggi per waktu komputasi. Hashcat sudah menyertakan puluhan file aturan bawaan di direktori rules/.

Mask Attack (Mode 3 + custom mask)

Mask attack membatasi brute-force pada pola tertentu, mengurangi jumlah kombinasi secara drastis. Ini sangat berguna jika penyerang tahu kebijakan password target. Misalnya, banyak perusahaan mewajibkan password dengan format: huruf besar di awal, diikuti huruf kecil, lalu dua digit angka.

hashcat -m 0 -a 3 hash.txt ?u?l?l?l?l?l?d?d

Mask ini berarti: satu uppercase, lima lowercase, dua digit – total delapan karakter. Jumlah kombinasi turun drastis dari 6,6 kuadriliun menjadi hanya 26 × 26^5 × 10^2 atau sekitar 31 miliar. Di GPU modern, ini bisa dipecahkan dalam hitungan menit.

Bagaimana Contoh Penggunaan Hashcat untuk Crack Password?

Sekarang mari masuk ke praktik nyata. Berikut tiga skenario cracking yang sering ditemui dalam penetration testing.

Crack MD5 Hash Sederhana

MD5 adalah algoritma hash yang sudah dianggap tidak aman, tapi masih banyak digunakan di berbagai sistem. Berikut langkah cracking MD5 hash dengan dictionary attack:

# Simpan hash ke file
echo "5f4dcc3b5aa765d61d8327deb882cf99" > hash.txt

# Crack dengan wordlist rockyou
hashcat -m 0 -a 0 hash.txt /usr/share/wordlists/rockyou.txt

# Hasil: 5f4dcc3b5aa765d61d8327deb882cf99:password

Hash 5f4dcc3b5aa765d61d8327deb882cf99 adalah representasi MD5 dari kata “password”. Dengan wordlist yang tepat, cracking ini selesai dalam hitungan milidetik. Ini menunjukkan betapa lemahnya MD5 dan pentingnya menggunakan algoritma hash modern seperti bcrypt atau Argon2.

Crack NTLM Hash Windows

NTLM adalah format hash yang digunakan Windows untuk menyimpan password lokal. Dalam pengujian penetrasi, pentester sering mendapatkan hash NTLM dari tool seperti Mimikatz atau dari file SAM Windows. Format mode Hashcat untuk NTLM adalah -m 1000.

# Format NTLM: 32 karakter hex
echo "aad3b435b51404eeaad3b435b51404ee" > ntlm.txt

# Crack dengan rule-based attack
hashcat -m 1000 -a 0 ntlm.txt wordlist.txt -r rules/best64.rule --force

Hash dengan nilai aad3b435b51404eeaad3b435b51404ee sebenarnya adalah hash kosong Windows (blank password). Dalam audit nyata, menemukan hash kosong adalah temuan kritis yang menunjukkan akun tanpa password.

Crack WPA/WPA2 Handshake

Cracking password WiFi adalah salah satu penggunaan Hashcat yang paling populer. Diperlukan file handshake yang ditangkap menggunakan tools seperti aircrack-ng atau hcxdumptool. Format yang didukung Hashcat adalah hccapx (mode 22000).

# Crack handshake WPA2 dengan wordlist
hashcat -m 22000 handshake.hc22000 wordlist.txt

Proses cracking WPA memakan waktu lebih lama karena algoritma PBKDF2 yang digunakan jauh lebih berat daripada MD5 atau NTLM. GPU kelas atas seperti RTX 4090 bisa memproses sekitar 2-3 juta hash WPA per detik. Untuk password WiFi Indonesia, pola yang umum seperti “indonesia123” atau “wifi12345” sering digunakan dan bisa dipecahkan dengan cepat menggunakan rule-based attack.

Apa Tips Maksimalkan Performa Hashcat untuk Pemula?

Bagi pemula yang baru mulai menggunakan Hashcat, berikut beberapa tips praktis yang bisa langsung diterapkan untuk hasil optimal.

  • Gunakan –optimized-kernel-enable: Flag ini mempercepat cracking dengan kernel yang dioptimalkan, tapi hanya untuk password maksimal 15 karakter.
  • Atur workload profile (-w): Default adalah -w 2. Naikkan ke -w 4 untuk performa penuh, tapi sistem akan terasa lambat karena GPU bekerja maksimal.
  • Pantau suhu GPU: Cracking intensif bisa membuat GPU overheat. Gunakan nvidia-smi (NVIDIA) atau rocm-smi (AMD) untuk monitoring. Pertimbangkan --gpu-temp-abort=85 sebagai pengaman.
  • Manfaatkan session restore: Gunakan --session=namasesi dan --restore untuk melanjutkan cracking yang terhenti. Sangat penting untuk cracking panjang.
  • Mulai dari wordlist kecil: Sebelum brute-force besar-besaran, uji wordlist kecil dulu. Banyak password bisa dipecahkan hanya dengan rockyou.txt.

Dimas Prasetyo menambahkan tips berdasarkan pengalamannya: “Jangan langsung lompat ke brute-force. Selalu mulai dari dictionary attack dengan wordlist yang relevan, lalu rule-based, baru mask attack sebagai pilihan terakhir. Pendekatan bertahap ini menghemat waktu komputasi dan seringkali memberikan hasil lebih cepat.”

Apa Saja Etika dan Batasan Penggunaan Hashcat?

Hashcat adalah tools yang sangat kuat, dan seperti pisau bermata dua, penggunaannya harus diiringi tanggung jawab. Password cracking tanpa izin adalah tindakan ilegal di hampir semua yurisdiksi, termasuk Indonesia di bawah UU ITE Pasal 30. Berikut panduan etis penggunaannya.

  • Hanya crack hash yang Anda miliki: Jangan pernah mencoba crack hash dari sumber tidak sah. Ini termasuk hash dari database yang bocor di internet.
  • Gunakan di lingkungan lab: Siapkan VM terisolasi dengan dataset hash buatan sendiri untuk berlatih. Banyak platform seperti TryHackMe dan HackTheBox menyediakan skenario cracking legal.
  • Dokumentasikan setiap aktivitas: Dalam konteks profesional, selalu catat waktu, target, metode, dan hasil cracking. Ini penting untuk laporan audit dan kepatuhan.
  • Hormati boundaries pengujian: Dalam pentesting, patuhi Rules of Engagement (ROE) yang disepakati dengan klien. Cracking password karyawan di luar scope bisa melanggar kontrak.

Hashcat digunakan oleh tim keamanan defensif untuk mengaudit kekuatan password secara berkala. Hasil cracking digunakan untuk mendorong kebijakan password yang lebih ketat, bukan untuk mengekspos data pengguna. Ini adalah perbedaan krusial antara security testing dan malicious hacking.

Pertanyaan yang Sering Diajukan (FAQ)

Apakah Hashcat hanya bisa dijalankan di Linux?

Tidak. Hashcat mendukung Windows dan macOS juga. Namun performa terbaik didapatkan di Linux dengan GPU NVIDIA karena dukungan driver CUDA yang lebih matang. Di Windows, Hashcat bisa dijalankan melalui PowerShell atau Command Prompt.

Berapa lama waktu yang dibutuhkan untuk crack password?

Tergantung pada tiga faktor: panjang password, kompleksitas karakter, dan algoritma hash. Password MD5 delapan karakter lowercase bisa dipecahkan dalam hitungan detik di GPU modern. Password bcrypt delapan karakter dengan mixed case dan simbol bisa memakan waktu bertahun-tahun.

Apa bedanya Hashcat dengan Hydra?

Hashcat dan Hydra melayani tujuan berbeda. Hashcat adalah offline password cracker yang bekerja pada file hash. Hydra adalah online brute-force tool yang menyerang layanan langsung melalui jaringan (SSH, FTP, HTTP login). Hashcat jauh lebih cepat karena tidak ada latency jaringan.

Apakah saya perlu GPU mahal untuk belajar Hashcat?

Tidak. Untuk pembelajaran, CPU biasa sudah cukup untuk memahami konsep dan mencoba cracking hash sederhana. GPU mempercepat proses tapi bukan syarat mutlak. Alternatifnya, gunakan cloud GPU seperti Google Colab atau vast.ai untuk eksperimen sesekali.

Kesimpulan

Hashcat adalah tools password cracking paling powerful yang wajib dikuasai oleh siapa pun yang serius di bidang keamanan siber. Dengan dukungan 300+ algoritma hash, akselerasi GPU, dan berbagai mode serangan, Hashcat memberikan kemampuan pengujian password yang komprehensif. Mulai dari dictionary attack sederhana hingga mask attack yang presisi, setiap mode punya peran spesifik dalam toolkit seorang profesional keamanan.

Mulailah belajar di lingkungan lab yang aman. Pahami etika dan batasan hukumnya. Kuasai mode-mode dasarnya terlebih dahulu, dan perlahan naik ke teknik yang lebih kompleks. Kemampuan menggunakan Hashcat dengan baik adalah pembeda antara pentester biasa dan pentester profesional yang bisa memberikan nilai nyata dalam audit keamanan. Baca juga: 10 Teknik Hacking Paling Umum yang Harus Kamu Ketahui untuk memperluas wawasan keamanan siber.