membuat wordlist password di linux - wongganteng10/tutorial GitHub Wiki
Untuk membuat wordlist password sendiri untuk menguji keamanan login server, kamu bisa menggunakan beberapa metode. Salah satu yang paling umum adalah menggunakan Crunch, sebuah tool di Kali Linux yang berguna untuk membuat wordlist berdasarkan kriteria tertentu seperti panjang karakter, jenis karakter, dan sebagainya. Berikut langkah-langkahnya:
1. Menggunakan Crunch
Crunch memungkinkan kamu membuat wordlist secara manual sesuai kebutuhan. Kamu bisa menentukan panjang password, karakter yang ingin digunakan, dan kombinasi.
Contoh penggunaan Crunch:
-
Untuk membuat wordlist dengan panjang password 8-12 karakter yang terdiri dari huruf kecil:
crunch 8 12 abcdefghijklmnopqrstuvwxyz -o wordlist.txt
-
Untuk membuat wordlist dari huruf besar, kecil, angka, dan simbol dengan panjang password 8-10 karakter:
crunch 8 10 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*() -o wordlist.txt
-
Jika kamu ingin menambahkan kata-kata spesifik ke dalam wordlist, Crunch juga bisa menggunakan pattern:
crunch 8 8 -t password@@ -o wordlist.txt
Ini akan menghasilkan kombinasi seperti
password01
,password02
, dan seterusnya.
CeWL
)
2. Menggunakan Tool Lain (Cth: Jika kamu ingin membuat wordlist berdasarkan konten dari sebuah situs web atau dokumen, kamu bisa menggunakan CeWL. CeWL adalah tool yang mengambil kata-kata dari sebuah situs web untuk menghasilkan wordlist.
Install CeWL dengan perintah:
sudo apt install cewl
Kemudian, gunakan CeWL untuk meng-crawl situs web kamu dan membuat wordlist:
cewl https://website-kamu.com -w wordlist.txt
3. Menggunakan Kombinasi dari File atau Data yang Sudah Ada
Jika kamu memiliki daftar nama pengguna atau kata sandi yang sudah ada, kamu bisa menggabungkannya atau membuat variasi dengan tools seperti John the Ripper
atau Hashcat
.
4. Menulis Script Sendiri (Optional)
Jika kamu ingin lebih fleksibel, kamu bisa membuat script Python sederhana untuk menghasilkan kombinasi kata tertentu berdasarkan aturan yang kamu tetapkan:
Contoh script Python:
import itertools
# Daftar karakter yang ingin kamu gunakan
chars = 'abcdefghijklmnopqrstuvwxyz0123456789'
# Membuat kombinasi password dengan panjang 8 karakter
with open('wordlist.txt', 'w') as f:
for length in range(8, 13):
for password in itertools.product(chars, repeat=length):
f.write(''.join(password) + '\n')
print("Wordlist selesai dibuat!")
Penutup
Setelah kamu membuat wordlist, gunakan tool seperti Hydra atau John the Ripper untuk melakukan brute force pada form login kamu:
hydra -l admin -P wordlist.txt http-post-form "URL_FORMULIR_LOGIN:username=^USER^&password=^PASS^:Sukses"
Semoga ini membantu dalam menguji keamanan server buatanmu. Ingat, uji coba ini harus dilakukan pada sistem milik sendiri atau yang kamu punya izin untuk menguji.
========================
========================
Jika password yang ingin kamu buat berupa tanggal lahir dengan format seperti 01-01-2024
, kamu bisa membuat wordlist berisi kombinasi tanggal dengan berbagai variasi (misalnya, hari, bulan, tahun) menggunakan script Python.
Berikut adalah contoh script Python untuk membuat wordlist dengan format tanggal (misalnya, dd-mm-yyyy
) dari rentang tahun tertentu, misalnya dari tahun 1950 hingga 2024:
Script Python untuk Membuat Wordlist Tanggal Lahir:
from datetime import datetime, timedelta
# Rentang tanggal yang diinginkan
start_date = datetime(1950, 1, 1) # Mulai dari 1 Januari 1950
end_date = datetime(2024, 12, 31) # Hingga 31 Desember 2024
# File untuk menyimpan wordlist
with open('wordlist_tanggal_lahir.txt', 'w') as f:
# Looping dari tanggal mulai hingga akhir
current_date = start_date
while current_date <= end_date:
# Format tanggal yang diinginkan (dd-mm-yyyy)
password = current_date.strftime('%d-%m-%Y')
f.write(password + '\n')
# Tambahkan satu hari
current_date += timedelta(days=1)
print("Wordlist selesai dibuat!")
Penjelasan:
- Rentang Tanggal: Script ini akan membuat daftar semua tanggal dari
01-01-1950
hingga31-12-2024
. - Format Password: Tanggal akan diformat sebagai
dd-mm-yyyy
. Kamu bisa mengubah format sesuai keinginan (misalnya,dd/mm/yyyy
,ddmmyyyy
, dll.) dengan mengubah bagianstrftime('%d-%m-%Y')
.
Menjalankan Script:
- Simpan script di atas dengan nama file, misalnya
generate_wordlist_tanggal.py
. - Jalankan script menggunakan Python:
python3 generate_wordlist_tanggal.py
Wordlist yang dihasilkan akan disimpan dalam file wordlist_tanggal_lahir.txt
.
Modifikasi Format:
Jika kamu ingin variasi format, kamu bisa memodifikasi strftime
:
-
Format
ddmmyyyy
:password = current_date.strftime('%d%m%Y')
-
Format
yyyy-mm-dd
:password = current_date.strftime('%Y-%m-%d')
Ini akan memberikan lebih banyak variasi untuk menguji keamanan berdasarkan tanggal lahir.
Menggunakan Wordlist dengan Hydra:
Setelah kamu membuat wordlist, kamu bisa menggunakannya dengan Hydra atau tool brute force lainnya seperti ini:
hydra -l admin -P wordlist_tanggal_lahir.txt http-post-form "URL_FORMULIR_LOGIN:username=^USER^&password=^PASS^:Sukses"
Dengan cara ini, kamu bisa mencoba password yang berbasis tanggal lahir pada server buatanmu sendiri.
========================
========================
Jika format password yang kamu inginkan adalah yyyy-mm-dd
(contoh: 2024-01-01
), kamu bisa menggunakan script Python yang serupa, tetapi dengan modifikasi pada format tanggalnya.
Berikut adalah contoh script Python untuk membuat wordlist dengan format yyyy-mm-dd
dari rentang tahun tertentu:
yyyy-mm-dd
:
Script Python untuk Membuat Wordlist dengan Format from datetime import datetime, timedelta
# Rentang tanggal yang diinginkan
start_date = datetime(1950, 1, 1) # Mulai dari 1 Januari 1950
end_date = datetime(2024, 12, 31) # Hingga 31 Desember 2024
# File untuk menyimpan wordlist
with open('wordlist_tanggal_lahir.txt', 'w') as f:
# Looping dari tanggal mulai hingga akhir
current_date = start_date
while current_date <= end_date:
# Format tanggal yang diinginkan (yyyy-mm-dd)
password = current_date.strftime('%Y-%m-%d')
f.write(password + '\n')
# Tambahkan satu hari
current_date += timedelta(days=1)
print("Wordlist selesai dibuat!")
Penjelasan:
- Format Tanggal: Dalam script ini, format tanggal yang digunakan adalah
yyyy-mm-dd
, misalnya2024-01-01
. - Rentang Tahun: Script ini membuat wordlist dari tanggal 1 Januari 1950 hingga 31 Desember 2024.
Langkah Menjalankan:
- Simpan script di atas sebagai file, misalnya
generate_wordlist_tanggal_yyyy_mm_dd.py
. - Jalankan script menggunakan Python:
python3 generate_wordlist_tanggal_yyyy_mm_dd.py
Script ini akan menghasilkan file wordlist_tanggal_lahir.txt
yang berisi kombinasi tanggal dengan format yyyy-mm-dd
.
Contoh Output Wordlist:
File wordlist_tanggal_lahir.txt
akan berisi kombinasi seperti:
1950-01-01
1950-01-02
1950-01-03
...
2024-12-31
Menggunakan Wordlist:
Setelah wordlist berhasil dibuat, kamu bisa menggunakan file tersebut untuk melakukan uji keamanan login, misalnya menggunakan Hydra:
hydra -l admin -P wordlist_tanggal_lahir.txt http-post-form "URL_FORMULIR_LOGIN:username=^USER^&password=^PASS^:Sukses"
Ini akan membantu kamu mencoba berbagai kombinasi password berbasis tanggal dengan format yyyy-mm-dd
.
========================
========================
Jika kamu ingin membuat wordlist dengan pola numerik seperti 212103001
, 212103002
, 212103003
,...`, kamu bisa menggunakan Python untuk membuat urutan angka dengan jumlah digit yang sama. Berikut contoh script Python untuk menghasilkan wordlist dengan pola tersebut:
Script Python untuk Wordlist Berformat Numerik:
# Rentang nomor yang diinginkan
start_number = 212103001 # Mulai dari 212103001
end_number = 212103999 # Hingga 212103999 (sesuaikan sesuai kebutuhan)
# File untuk menyimpan wordlist
with open('wordlist_numerik.txt', 'w') as f:
# Looping dari nomor mulai hingga akhir
for number in range(start_number, end_number + 1):
# Tulis nomor ke file
f.write(str(number) + '\n')
print("Wordlist selesai dibuat!")
Penjelasan:
- Rentang Angka: Kamu bisa mengatur rentang nomor sesuai keinginan, dalam contoh ini dimulai dari
212103001
hingga212103999
. - File Output: Wordlist akan disimpan ke file
wordlist_numerik.txt
.
Langkah Menjalankan:
- Simpan script ini sebagai file Python, misalnya
generate_wordlist_numerik.py
. - Jalankan script menggunakan Python:
python3 generate_wordlist_numerik.py
Contoh Output Wordlist:
File wordlist_numerik.txt
akan berisi:
212103001
212103002
212103003
...
212103999
Modifikasi Rentang:
Jika kamu ingin mengubah rentang angka, cukup sesuaikan nilai dari start_number
dan end_number
. Misalnya, jika kamu ingin menghasilkan angka dari 212103500
hingga 212104000
, tinggal ubah di bagian tersebut:
start_number = 212103500
end_number = 212104000
Menggunakan Wordlist:
Setelah wordlist berhasil dibuat, kamu bisa menggunakannya untuk uji brute force dengan tools seperti Hydra:
hydra -l admin -P wordlist_numerik.txt http-post-form "URL_FORMULIR_LOGIN:username=^USER^&password=^PASS^:Sukses"
Ini memungkinkan kamu mencoba kombinasi password numerik yang dihasilkan dari script tersebut.
========================
========================
Jika kamu ingin membuat wordlist dengan pola numerik seperti 242191111201
, 242191111202
, 242191111203
,...`, kamu bisa menggunakan script Python untuk menghasilkan rentang angka dengan panjang karakter yang sama. Berikut contoh script untuk menghasilkan wordlist dengan format tersebut:
Script Python untuk Wordlist Numerik:
# Rentang nomor yang diinginkan
start_number = 242191111201 # Nomor awal
end_number = 242191111999 # Nomor akhir (sesuaikan sesuai kebutuhan)
# File untuk menyimpan wordlist
with open('wordlist_numerik.txt', 'w') as f:
# Looping dari nomor mulai hingga akhir
for number in range(start_number, end_number + 1):
# Tulis nomor ke file
f.write(str(number) + '\n')
print("Wordlist selesai dibuat!")
Penjelasan:
- Rentang Angka: Dalam contoh ini, wordlist dimulai dari
242191111201
hingga242191111999
. Kamu bisa menyesuaikan nomor akhir (end_number
) sesuai kebutuhan. - File Output: Wordlist akan disimpan dalam file
wordlist_numerik.txt
.
Langkah Menjalankan:
- Simpan script ini sebagai file Python, misalnya
generate_wordlist_numerik.py
. - Jalankan script menggunakan Python:
python3 generate_wordlist_numerik.py
Contoh Output Wordlist:
File wordlist_numerik.txt
akan berisi:
242191111201
242191111202
242191111203
...
242191111999
Modifikasi Rentang:
Jika kamu ingin mengubah rentang angka, cukup sesuaikan nilai dari start_number
dan end_number
. Misalnya, jika kamu ingin menghasilkan angka dari 242191111001
hingga 242191112000
, kamu cukup ubah pada bagian tersebut:
start_number = 242191111001
end_number = 242191112000
Menggunakan Wordlist:
Setelah wordlist berhasil dibuat, kamu bisa menggunakannya untuk uji brute force dengan tool seperti Hydra:
hydra -l admin -P wordlist_numerik.txt http-post-form "URL_FORMULIR_LOGIN:username=^USER^&password=^PASS^:Sukses"
Ini memungkinkan kamu mencoba password yang mengikuti pola numerik tersebut, sesuai dengan kebutuhanmu.