Hashing - Crypto 101


Bacalah ini, dan pahami sebanyak mungkin. Kita akan membahas beberapa istilah nanti di ruangan ini.
. Plaintext Data sebelum enkripsi atau hashing, sering kali berupa teks tetapi tidak selalu dapat berupa foto atau berkas lainnya.
. Encoding Ini BUKAN bentuk enkripsi, hanya bentuk representasi data seperti base64 atau heksadesimal. Dapat langsung dibalik.
. Hash Hash adalah hasil dari fungsi hash. Hashing juga dapat digunakan sebagai kata kerja, "to hash", yang berarti menghasilkan nilai hash dari beberapa data.
. Brute force Menyerang kriptografi dengan mencoba setiap kata sandi atau setiap kunci yang berbeda.
. Cryptanalysis Menyerang kriptografi dengan menemukan kelemahan dalam matematika yang mendasarinya.


Apa itu fungsi hash?

Fungsi hash adalah algoritma yang mengubah data masukan dengan ukuran apa pun menjadi keluaran berukuran tetap, yang dikenal sebagai "ringkasan" atau "digest." Fungsi ini tidak menggunakan kunci dan dirancang agar sulit membalikkan keluaran menjadi masukan. Hashing sering digunakan dalam keamanan siber, misalnya, untuk memverifikasi kata sandi.

Tabrakan hash terjadi ketika dua masukan berbeda menghasilkan keluaran yang sama. Meskipun fungsi hash dirancang untuk menghindari tabrakan, efek pigeonhole membuatnya tak terhindarkan. MD5 dan SHA1 adalah contoh algoritma hashing yang telah diserang karena tabrakan, sehingga tidak lagi aman digunakan sendiri.

- Jika Anda memiliki keluaran hash 8 bit, berapa banyak kemungkinan hash yang ada?
2 pangkat 8 = 256
Butuh waktu lama bagi saya untuk memahami ini. Namun, berikut penjelasan yang bagus tentang Fungsi Hash (nakamoto.com)
Jawaban : 256


Penggunaan untuk hashing

Hashing digunakan dalam keamanan siber terutama untuk dua tujuan: memverifikasi integritas data dan memverifikasi kata sandi. Daripada menyimpan kata sandi dalam teks biasa, aplikasi web meng-hash kata sandi untuk meningkatkan keamanan. Jika basis data bocor, penyerang perlu memecahkan setiap hash untuk mendapatkan kata sandi asli.

Namun, jika dua pengguna memiliki kata sandi yang sama, hash mereka juga akan sama, yang berisiko. Penyerang dapat menggunakan "tabel rainbow," yaitu tabel pencarian hash untuk memecahkan kata sandi dengan cepat. Untuk melindungi dari ini, salt (nilai acak) ditambahkan ke kata sandi sebelum di-hash, sehingga hash untuk kata sandi yang sama akan berbeda untuk setiap pengguna. Salt tidak perlu dirahasiakan dan berfungsi sebagai lapisan tambahan terhadap serangan tabel rainbow.

- Pecahkan hash “d0199f51d2728db6011945145a1b607a” menggunakan tabel rainbow secara manual.
Manual
identifikasi type hash
sudo apt install hash-identifier
Baca Dukumentasi hash-identifier
hashcat -h | grep -iF "Type Hash example=SHA2-256" mulai untuk crack hash menggunakan Hashcat
hashcat -a 0 -m [jumlah putaran] ['Hash' or file_hash.txt] [path list password]
hashcat -a 0 "karena MD5 bernilai 0 maka tidak perlu menggunkan -m" file_hash.txt /usr/share/wordlists/rockyou.txt
hashcat -a 0 'd0199f51d2728db6011945145a1b607a' /usr/share/wordlists/rockyou.txt
Online
Buka Hash Type Identifier – Identify unknown hashes dan masukkan hash tersebut. Kata sandi akan terungkap dengan sendirinya
Jawaban : basketball

Mengenali hash kata sandi

Penggunaan alat pengenalan hash otomatis seperti hashID berguna tetapi tidak selalu andal, terutama untuk hash tanpa awalan. Alat ini lebih efektif untuk hash dengan awalan, seperti hash kata sandi gaya Unix, yang memiliki format standar $format$rounds$salt$hash. Misalnya, hash Unix dengan awalan $1$ menggunakan md5crypt, awalan $2, $2a, $2b, $2x, $2y menggunakan Bcrypt (Populer untuk aplikasi web) sedangkan $6$ menggunakan sha512crypt.

- Kata sandi Windows di-hash menggunakan NTLM, yang merupakan varian dari md4. Secara visual, kata sandi tersebut identik dengan hash md4 dan md5, jadi sangat penting untuk menggunakan konteks guna menentukan jenis hash.
Pada Windows, hash kata sandi disimpan di SAM. Windows mencoba mencegah pengguna biasa membuangnya, tetapi ada alat seperti mimikatz untuk ini. Yang penting, hash yang ditemukan di sana dibagi menjadi hash NT dan hash LM.

- Di Linux , hash kata sandi disimpan di /etc/shadow. Berkas ini biasanya hanya dapat dibaca oleh root. Hash kata sandi biasanya disimpan di /etc/passwd, dan dapat dibaca oleh semua orang.

- Berapa putaran yang digunakan sha512crypt ($6$) secara default?
Dengan sedikit google saya menemukan situs ini yang menyimpan jawaban https://michael.franzl.name/blog/posts/2016-09-09-hashing-passwords-sha512-stronger-than-bcrypt-rounds
Jawaban : 5000
- Apa contoh hashcat (dari situs web) untuk hash Citrix Netscaler?
Buka situs contoh dari teks di tugas example_hashes [wiki hashcat]. Cari Citrix Netscaler.
Jawaban : 1765058016a22f1b4e076dccd1c3df4e8e5c0839ccded98ea
- Berapa panjang hash Windows NTLM, dalam karakter?
Anda dapat menemukan jawabannya di sini example_hashes [hashcat wiki].
Jawaban : 32


Pembobolan Password

- Cracking Hash Password Hash password tidak dienkripsi, sehingga tidak bisa "didekripsi". Cracking dilakukan dengan mencoba berbagai kombinasi kata sandi (misalnya dari daftar seperti rockyou), mungkin dengan menambahkan salt, hingga menemukan kecocokan dengan hash target. Alat seperti Hashcat dan John the Ripper digunakan untuk ini.

- Keunggulan GPU GPU memiliki ribuan inti yang sangat efisien untuk melakukan perhitungan fungsi hash, sehingga lebih cepat dalam cracking hash dibandingkan CPU. Namun, algoritma tertentu seperti bcrypt dirancang agar GPU tidak memiliki keunggulan signifikan dibandingkan CPU.

- Cracking di Mesin Virtual (VM) VM biasanya tidak memiliki akses langsung ke GPU host, sehingga cracking hash lebih baik dilakukan di host langsung, terutama menggunakan GPU. Hashcat dapat dijalankan di VM dengan OpenCL, tetapi kecepatannya akan lebih lambat. John the Ripper menggunakan CPU secara default dan bisa dijalankan di VM, meskipun lebih baik dijalankan di host untuk performa optimal.

- Peringatan Penggunaan Hashcat Jangan pernah menggunakan opsi --force pada Hashcat, karena dapat menyebabkan hasil yang tidak akurat. Hal ini dapat menyebabkan false positives (kata sandi yang diberikan kepada Anda salah) dan hasil false negatif (melewati hash yang benar). Mulai dari Kali 2020.2, hashcat 6.0 akan berjalan pada CPU tanpa --force. Saya tetap menyarankan untuk melakukan crack pada OS host jika Anda memiliki GPU, karena akan jauh lebih cepat.

- Pecahkan hash ini: $2a$06$7yoU3Ng8dHTXphAg913cyO6Bjs3K5lBnwq5FJyA6d01pMSrddr1ZG
kita perlu mengidentifikasi hash dengan masuk ke Hash Type Identifier – Identify unknown hashes

Sekarang kita perlu menemukan modul yang tepat untuk digunakan hashcat. Ketik
hashcat -h | grep -iF "bcrypt" Sekarang kita tahu bahwa bcrypt menggunakan module 3200, mari kita crack dengan command berikut :
hashcat -a 0 -m 3200 '$2a$06$7yoU3Ng8dHTXphAg913cyO6Bjs3K5lBnwq5FJyA6d01pMSrddr1ZG' /usr/share/wordlists/rockyou.txt
- Pecahkan hash ini: 9eb7ee7f551d2f0ac684981bd1f1e2fa4a37590199636753efe614d4db30e8e1
Decrypt hashes_klik link
Manual hashcat -h | grep -iF "SHA2-256" mulai untuk crack hash
hashcat -a 0 -m 1400 '9eb7ee7f551d2f0ac684981bd1f1e2fa4a37590199636753efe614d4db30e8e1' /usr/share/wordlists/rockyou.txt - Pecahkan hash ini: $6$GQXVvW4EuM$ehD6jWiMsfNorxy5SINsgdlxmAEl3.yif0/c3NqzGLa0P.S7KRDYjycw5bnYkF5ZtB8wQy8KnskuWQS3Yr1wQ0
Decrypt hashes_klik link
- Sudah bosan dengan ini? Pecahkan hash ini: b6b0d451bbf6fed658659a9e7e5598fe
hash_identifier_klik link


Hashing untuk integrity checking

- Integrity Checking : Hashing digunakan untuk memastikan file tidak diubah. Jika data yang sama di-hash, hasilnya akan sama. Jika ada perubahan sekecil apa pun pada file, hash akan berubah signifikan. Ini berguna untuk memeriksa apakah file telah dimodifikasi atau memastikan unduhan berhasil. Hashing juga bisa digunakan untuk menemukan file duplikat.
- HMACs (Hashed Message Authentication Code) : HMAC adalah metode yang menggunakan fungsi hash kriptografi untuk memverifikasi keaslian dan integritas data. Contohnya, TryHackMe VPN menggunakan HMAC-SHA512 untuk autentikasi pesan. HMAC memastikan bahwa pengirim adalah pihak yang benar (keaslian) dan bahwa pesan tidak diubah (integritas). HMAC dibuat menggunakan kunci rahasia dan algoritma hash.

- Berapa jumlah SHA1 untuk amd64 Kali 2019.4 ISO? http://old.kali.org/kali-images/kali-2019.4/
- Berapakah nomor mode hashcat untuk HMAC-SHA512 (key = $pass)?
Online Kunjungi situs https://hashcat.net/wiki/doku.php?id=example_hashes dan cari HMAC-SHA512
Manual hashcat -h | grep -iF "HMAC-SHA512"



tags