webhacking/etc

wargame.kr crack_crack_crack_it

qkqhxla1 2015. 1. 12. 18:05

내 주언어인 파이썬으로 짜려고 했는데 파이썬의 crypt모듈은 리눅스에서만 쓸 수 있다.


그냥 리눅스 키기 싫어서 php로 짰는데 리눅스 키더라도 파이썬이 더 편했을것같다.


php에는 crypt()라는 함수가 있어서 이걸로 짰다.


<?php
	$brute = array();
	$cnt = 0;
	for($i=48;$i<58;$i++)
	{
		$brute[$cnt] = chr($i);
		$cnt++;
	}
	for($i=97;$i<123;$i++)
	{
		$brute[$cnt] = chr($i);
		$cnt++;
	}
	/*for($i=0;$i<$cnt;$i++)
	{
		echo $brute[$i];
	}*/
	for($l=0;$l<$cnt;$l++)
	{
		for($k=0;$k<$cnt;$k++)
		{
			for($j=0;$j<$cnt;$j++)
				for($i=0;$i<$cnt;$i++)
				{
					$id = 'G4HeulB' . $brute[$l] . $brute[$k] .$brute[$j] . $brute[$i];
					if (crypt($id,'$1$544OQ2BP$')=='$1$544OQ2BP$gD9hFD71s00HTDOK/hP3D0')
					{
						echo 'answer =' . $id . "
"; exit(0); } } } } ?>

찾아보니 파이썬 모듈도 있음. http://www.sabren.net/code/python/crypt/md5crypt.py


# -*- encoding: cp949 -*-
import md5crypt,string
b = string.ascii_lowercase+string.digits
for l in b:
    print l
    for k in b:
        for j in b:
            for i in b:
                id = 'G4HeulB'+l+k+j+b
                if md5crypt.unix_md5_crypt(id,'$1$544OQ2BP$')=='$1$544OQ2BP$gD9hFD71s00HTDOK/hP3D0':
                    print id
                    exit(0)


'webhacking > etc' 카테고리의 다른 글

webhacking.kr 32, 33  (0) 2015.01.15
webhacking.kr 25, 26, 28, 30  (0) 2015.01.15
WeChall Prime Factory, Training: Math Pyramid, hi  (0) 2015.01.12
webhacking.kr 3,4,11  (0) 2015.01.08
선린 ctf web  (0) 2015.01.07