Langsung ke konten utama

Hari 26-27: Keamanan Kata Sandi & Cracking (Etis) – Memahami Kunci Pintu Digital


Hari 26-27: Keamanan Kata Sandi & Cracking (Etis) – Memahami Kunci Pintu Digital


Setelah berhasil melancarkan eksploitasi dasar di lab Anda, kini saatnya kita fokus pada salah satu titik masuk paling umum bagi hacker: kata sandi. Di Hari 26 dan 27 pelatihan otodidak ini, kita akan mempelajari bagaimana kata sandi disimpan (atau seharusnya disimpan!), berbagai metode yang digunakan hacker untuk "memecahkan" atau crack kata sandi, dan bagaimana Anda sebagai ethical hacker bisa menguji dan meningkatkan keamanan kata sandi. Hingga saat ini, dengan maraknya serangan brute-force dan phishing kredensial, pemahaman tentang keamanan kata sandi adalah pertahanan vital.

Memahami cara kerja password cracking akan membantu Anda membangun kata sandi yang lebih kuat dan merekomendasikan praktik terbaik kepada orang lain.


Bagaimana Kata Sandi Disimpan (Seharusnya)?

Secara ideal, website atau sistem tidak akan pernah menyimpan kata sandi Anda dalam bentuk plaintext (teks biasa yang bisa dibaca). Jika itu terjadi dan database mereka bocor, semua kata sandi pengguna akan terekspos.

Alih-alih plaintext, sistem yang aman akan menyimpan hash dari kata sandi Anda.

  • Hashing: Seperti yang kita bahas di Hari 10-11, hashing adalah proses satu arah yang mengubah input (kata sandi Anda) menjadi output dengan panjang tetap yang unik (nilai hash). Bahkan perubahan kecil pada kata sandi akan menghasilkan hash yang sangat berbeda.

  • Mengapa Hashing?: Ketika Anda login, sistem akan mengambil kata sandi yang Anda masukkan, menghitung hash-nya, lalu membandingkan hash baru ini dengan hash yang tersimpan di database. Jika cocok, Anda berhasil login. Jika database bocor, hacker hanya mendapatkan hash, bukan kata sandi aslinya.

  • Salting: Ini adalah lapisan keamanan ekstra yang sangat penting. Salt adalah string acak unik yang ditambahkan ke setiap kata sandi sebelum di-hash. Jadi, meskipun dua pengguna memiliki kata sandi yang sama, hash mereka akan berbeda karena salt yang berbeda. Ini mencegah serangan rainbow table (basis data hash yang sudah dihitung sebelumnya).


Metode Password Cracking yang Umum:

Meskipun kata sandi di-hash dan di-salt, hacker masih memiliki cara untuk mencoba "memecahkannya":

  1. Brute-Force Attack:

    • Cara Kerja: Penyerang mencoba setiap kombinasi karakter yang mungkin (huruf, angka, simbol) sampai kata sandi yang benar ditemukan.

    • Kelemahan: Sangat lambat dan memakan sumber daya komputasi yang besar, terutama untuk kata sandi yang panjang dan kompleks.

    • Pertahanan: Panjang kata sandi yang memadai, kompleksitas kata sandi, dan batasan upaya login (misal, mengunci akun setelah 3 kali percobaan gagal).

  2. Dictionary Attack:

    • Cara Kerja: Penyerang menggunakan daftar kata-kata yang umum (dari kamus, daftar kata sandi bocor, atau kombinasi umum) untuk mencoba menebak kata sandi.

    • Kelemahan: Tidak efektif jika kata sandi tidak ada dalam daftar kamus atau tidak menggunakan kata-kata umum.

    • Pertahanan: Hindari penggunaan kata-kata kamus atau kombinasi yang mudah ditebak. Gunakan frasa sandi (beberapa kata acak yang digabungkan) atau kata sandi kompleks.

  3. Rainbow Table Attack:

    • Cara Kerja: Penyerang menggunakan pre-computed tables dari hash yang umum untuk membandingkannya dengan hash yang dicuri. Jika hash cocok, mereka dapat menemukan kata sandi aslinya dengan cepat.

    • Kelemahan: Menjadi tidak efektif jika sistem menggunakan salting yang kuat, karena salt memastikan setiap hash unik bahkan untuk kata sandi yang sama.

    • Pertahanan: Penggunaan salt yang kuat dan unik untuk setiap kata sandi.

  4. Credential Stuffing:

    • Cara Kerja: Penyerang mengambil daftar username dan kata sandi yang bocor dari satu website dan mencoba menggunakannya pada website lain. Banyak pengguna menggunakan kata sandi yang sama di berbagai platform.

    • Kelemahan: Efektivitasnya bergantung pada kelalaian pengguna.

    • Pertahanan: Gunakan kata sandi unik untuk setiap akun Anda (manfaatkan password manager!) dan aktifkan Otentikasi Dua Faktor (2FA).


Alat Cracking Kata Sandi (Etis): John the Ripper & Hashcat

Sebagai ethical hacker, Anda akan menggunakan alat-alat ini untuk menguji kekuatan kata sandi yang Anda temukan hash-nya di lingkungan lab, atau untuk menunjukkan kepada klien betapa mudahnya kata sandi lemah mereka dipecahkan.

  • John the Ripper (JtR):

    • Alat open source yang sangat populer untuk password cracking. Mendukung berbagai algoritma hashing dan dapat melakukan serangan dictionary maupun brute-force.

    • Sangat baik untuk pemula karena relatif mudah digunakan.

    • Contoh penggunaan (sangat dasar): john --wordlist=rockyou.txt hashes.txt (untuk serangan kamus pada hash di hashes.txt menggunakan daftar kata rockyou.txt).

  • Hashcat:

    • Alat cracking kata sandi berbasis GPU (Graphics Processing Unit) yang sangat cepat. Hashcat adalah tool pilihan untuk profesional karena kecepatannya yang luar biasa dalam memecahkan hash yang kompleks.

    • Mendukung banyak mode serangan (dictionary, brute-force, hybrid, mask attacks).

    • Contoh penggunaan (sangat dasar): hashcat -m 0 -a 0 hash.txt password.lst (untuk MD5 hash dengan serangan dictionary).


Latihan Etis di Lingkungan Lab Anda:

Anda tidak akan mencoba crack kata sandi di internet publik! Anda akan menggunakan alat ini pada hash yang Anda dapatkan dari target di lab Anda (misalnya, dari Metasploitable). Metasploitable memiliki beberapa user dan password yang lemah, dan Anda dapat menemukan hash mereka di file /etc/passwd atau /etc/shadow setelah Anda mendapatkan akses.

Latihan untuk Hari 26-27:

  1. Akses Metasploitable: Jika Anda berhasil mendapatkan shell ke Metasploitable dari Hari 24-25, gunakan itu. Jika tidak, coba lagi exploit vsftpd backdoor.

  2. Dapatkan Password Hash: Setelah di Metasploitable, baca konten file /etc/shadow (ini membutuhkan hak akses root). Anda akan melihat baris-baris seperti:

    user:$6$salt_string$hashed_password_string:...

    Salin beberapa baris hash ini ke sebuah file di Kali Linux Anda (misal: my_hashes.txt).

    (Catatan: Hash yang diawali dengan $6$ adalah SHA-512, biasanya memiliki salt di dalamnya).

  3. Unduh Daftar Kata: Dapatkan daftar kata sandi umum. File rockyou.txt adalah salah satu yang paling terkenal (Anda mungkin perlu mencarinya secara online dan mengunduhnya, atau di Kali Linux Anda mungkin sudah ada di /usr/share/wordlists/rockyou.txt.gz - perlu di-unzip).

  4. Coba John the Ripper:

    • Buka Terminal di Kali Linux.

    • Jalankan: john --wordlist=/path/to/rockyou.txt my_hashes.txt

    • Lihat apakah John the Ripper dapat menemukan kata sandi dari hash tersebut.

  5. Coba Hashcat (Opsional, jika Anda punya GPU yang mumpuni):

    • Identifikasi hash type yang Anda dapatkan (misal, SHA512crypt = mode 1800).

    • Jalankan: hashcat -m 1800 -a 0 my_hashes.txt /path/to/rockyou.txt

    • Amati perbedaan kecepatan antara John the Ripper dan Hashcat (jika Anda membandingkan).

Memahami password cracking adalah kunci untuk membantu Anda dan organisasi lain membuat kata sandi yang tidak dapat dipecahkan.


Apakah Anda merasa terkejut dengan betapa mudahnya beberapa kata sandi bisa dipecahkan, atau ada pertanyaan lain seputar keamanan kata sandi yang muncul setelah latihan ini?

Back to 30days Hacking


Komentar

Postingan populer dari blog ini

Hari 1-2: Mengenal Dunia Hacking dan Pentingnya Keamanan Siber

Hari 1-2: Mengenal Dunia Hacking dan Pentingnya Keamanan Siber   Selamat datang di perjalanan Anda memahami dunia hacking ! Mungkin istilah "hacker" sering diidentikkan dengan kejahatan, pencurian data, atau perusakan sistem. Namun, di Hari 1 dan 2 pelatihan otodidak ini, kita akan meluruskan pandangan tersebut dan memahami bahwa hacking sejatinya adalah sebuah keahlian, yang bisa digunakan untuk tujuan baik maupun buruk. Hingga saat ini dengan maraknya ancaman digital, memahami dasar-dasar ini adalah langkah pertama yang krusial. Mari kita selami apa itu hacking sebenarnya, jenis-jenisnya, dan mengapa Anda perlu peduli tentang keamanan siber. Meluruskan Definisi: Apa Itu Hacking ? Secara sederhana, hacking adalah proses eksplorasi dan pemahaman yang mendalam tentang bagaimana sebuah sistem (komputer, jaringan, software , atau bahkan pikiran manusia) bekerja, seringkali dengan tujuan untuk mencari celah atau keterbatasan yang bisa dimanfaatkan. Orang yang melakukannya dis...

Hari 30: Evaluasi Diri & Rencana Selanjutnya – Memetakan Perjalanan Hacking Anda

Hari 30: Evaluasi Diri & Rencana Selanjutnya – Memetakan Perjalanan Hacking Anda Selamat! Anda telah mencapai Hari ke-30 dalam perjalanan otodidak ethical hacking Anda. Ini adalah pencapaian luar biasa yang menunjukkan dedikasi dan minat besar Anda di bidang ini. Anda telah belajar banyak, mulai dari fondasi jaringan, eksplorasi Linux, pemahaman vulnerability web, kriptografi , seni reconnaissance , hingga mempraktikkan eksploitasi dasar dan memahami bahaya social engineering . Anda tidak lagi menjadi pemula mutlak; Anda kini memiliki dasar yang kuat untuk terus berkembang. Hari terakhir ini bukan tentang mempelajari konsep baru, melainkan tentang evaluasi diri dan merencanakan langkah-langkah Anda selanjutnya . Bidang keamanan siber sangat luas, dan 30 hari ini hanyalah permulaan. Menganalisis Progres Anda: Pertanyaan untuk Refleksi Diri Luangkan waktu sejenak untuk melihat kembali apa yang telah Anda lakukan. Jujurlah pada diri sendiri saat menjawab pertanyaan-pertanyaan ini:...

Hari 10-11: Konsep Kriptografi Lanjutan – Fondasi Keamanan Digital

  Hari 10-11: Konsep Kriptografi Lanjutan – Fondasi Keamanan Digital Setelah memahami bagaimana website berinteraksi dan kerentanannya, kini kita akan mendalami teknologi yang menjadi tulang punggung keamanan di era digital: kriptografi . Di Hari 10 dan 11 pelatihan otodidak ini, kita akan membahas konsep enkripsi dan hashing secara lebih mendalam, serta bagaimana keduanya berperan penting dalam mengamankan komunikasi dan data kita dari tangan hacker . Dengan semakin canggihnya metode cybercrime , memahami kriptografi adalah kunci untuk membangun pertahanan yang kokoh. Mari kita pahami bagaimana matematika dan algoritma melindungi privasi Anda. Mengulang Singkat: Apa Itu Kriptografi? Seperti yang sudah kita bahas sebelumnya, kriptografi adalah ilmu mengubah informasi ( plaintext ) menjadi bentuk yang tidak bisa dibaca ( ciphertext ) menggunakan enkripsi , dan mengembalikannya ke bentuk asli melalui dekripsi . Ini memastikan kerahasiaan data. Namun, kriptografi juga mencakup a...