Membuat Skrip Bruteforce MD5 dengan Python

Python memang salah satu bahasa tingkat tinggi yang katanya untuk pemrosesan skrip bisa menghemat waktu lebih banyak dibanding bahasa pemrograman lain.

Hampir mirip kaya C dan c#, python ini dikenal sebagai bahasa yang dekat dengan mesin. Sehingga tidak perlu melalui berbagai layer untuk melakukan suatu job.

Dalam beberapa hari terakhir saya mencoba belajar banyak hal, termasuk diantaranya pemrograman Python dan React Native. Kali ini saya akan sedikit berbagi program yang pertama saya buat dengan Python.

Sebenarnya dulu sempat belajar Django, salah satu framework aplikasi web based yang menggunakan Python, hanya saja tidak bertahan lama kemudian saya tinggalkan karena pekerjaan dengan PHP yang masih tinggi.

Kali ini, saya mencoba mempelajari Python untuk sebuah penelitian dan ini salah satu kode sederhana yang sudah saya buat.

Berikut skrip untuk melakukan bruteforce dengan python:

import os
import md5

about = """
  Name            : Python Bruteforce
  Created By      : Sutriman
  Blog            : sutriman.com
"""
start_time = time.time()

def generate_stocklist():
	stock_list = 'abcdefghijklmnopqrstuvwxyz1234567890'
	stock_list_i = []
	for current in xrange(5):
	    a = [i for i in stock_list]
	    for y in xrange(current):
	        a = [x+i for i in stock_list for x in a]
	    stock_list_i = stock_list_i+a
	return stock_list_i

def bruteForce(new_stocklist, inputChiperText):
	for x in new_stocklist:
		hashed = md5.new(x).hexdigest() 
		if hashed == inputChiperText:
			return x
			break
	return False

def main():

    inputChiperText = raw_input("Input you chiper text: ")

    new_stocklist = generate_stocklist()
    process = bruteForce(new_stocklist, inputChiperText)
	
    if process != False:
    	print 'Result: '+process

    else:
    	print 'Not found'


if __name__ == '__main__':
main()

Semoga bisa menjadi bahan buat belajar 🙂