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.

2. Menggunakan Tool Lain (Cth: CeWL)

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 hingga 31-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 bagian strftime('%d-%m-%Y').

Menjalankan Script:

  1. Simpan script di atas dengan nama file, misalnya generate_wordlist_tanggal.py.
  2. 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:

Script Python untuk Membuat Wordlist dengan Format yyyy-mm-dd:

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, misalnya 2024-01-01.
  • Rentang Tahun: Script ini membuat wordlist dari tanggal 1 Januari 1950 hingga 31 Desember 2024.

Langkah Menjalankan:

  1. Simpan script di atas sebagai file, misalnya generate_wordlist_tanggal_yyyy_mm_dd.py.
  2. 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 hingga 212103999.
  • File Output: Wordlist akan disimpan ke file wordlist_numerik.txt.

Langkah Menjalankan:

  1. Simpan script ini sebagai file Python, misalnya generate_wordlist_numerik.py.
  2. 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 hingga 242191111999. Kamu bisa menyesuaikan nomor akhir (end_number) sesuai kebutuhan.
  • File Output: Wordlist akan disimpan dalam file wordlist_numerik.txt.

Langkah Menjalankan:

  1. Simpan script ini sebagai file Python, misalnya generate_wordlist_numerik.py.
  2. 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.