본문 바로가기
about Security/웹보안과 해킹

[웹해킹문제풀이] # webhacking.kr 워게임 4번

by saniii 2020. 10. 2.

 

<워게임 4>

 

소스 코드를 보여준다고 하니 view source 를 눌러보자

 

$hash = rand(10,000,000, 99,999,999) . “salt for you”;

>> 해쉬값에 10,000,000 부터 99,999,999까지의 수 중 하나에

     salt for you라는 문장을 덧붙인 값을 대입한다.

 

$_SESSION[‘’chall4’] = $hash;

>>Chall4의 세션키를 hash에 저장된 값으로 설정

 

for($i=0; $i<500; $i++) $hash = sha1($hash);

>> 해쉬에 저장된 값을 sha1로 암호화하고 다시 그 값을 hash에 대입

 

 

 

 


 

 

 

 

워게임 4번을 풀려면?

Sha1은 복호화가 가능하지 않은 단방향 암호이다.

따라서 우리는 가능한 모든 가지의 경우의 수를 마찬가지로

500번 복호화하여 문제에서 준 암호값과 같은지 비교하여야 한다.

10,000,000salt for you 부터 99,999,999salt for you 까지

500번 반복 sha1한 값을 비교한다. (같은 값이 나올 때까지)

 

물론 알고리즘을 설계하여 프로그램을 돌리는 것이 현명하겠지!!  노가다가 아니라

 

 

 

 

 

 

 

댓글