문제 종류 - Web
사용한 툴 - VS(C#), Linux(PHP7)
Flag, Hint, 정답 형식
flag: ?
hint: X
정답 형식: ?
풀이
문제에 들어가면 다음과 같은 화면이 나타난다. view-source에 들어가 보자.
세션 값이 설정되어 있고, key의 POST 값과 session의 chall4 값이 같으면 풀리는 문제이다.
참고로 hash는 랜덤 값(10000000 ~ 99999999) + "salt_for_you" 값에 sha1을 500번 돌린 값이다.
$90000000^{500}$번의 계산을 해야하기 때문에 파이썬 보단 상대적으로 빠른 언어인 C#을 선택했다.
-> 코드는 다 짰으나 C#도 느리다고 판단했기에 PHP로 다시 짜봤다.
C# 코드
PHP 코드(for문 수정 바람)
만든 PHP 사이트에 들어가면 myfile 위치에 sha1 값을 저장한다.
즉 레인보우 테이블을 만드는 것이다.
이렇게 만든 레인보우 테이블 | grep 으로 KEY값을 찾을 수 있다.
'Wargame > Webhacking.kr' 카테고리의 다른 글
[Webhacking.kr] 17번 풀이 (0) | 2020.05.16 |
---|---|
[Webhacking.kr] 54번 풀이 (0) | 2020.05.15 |
[Webhacking.kr] 10번 풀이 (0) | 2020.05.15 |
[Webhacking.kr] 6번 풀이 (0) | 2020.05.15 |
[Webhacking.kr] 1번 풀이 (0) | 2020.05.15 |