
1. 문제 정보
- 문제 번호 : old -19
- 문제 점수 : 15점
2. 문제 분석
19번 문제는 id 폼에 admin이 있다. 써있어서

그냥 제출 눌러보면 you are not admin이 나온다.

다른 아이디를 입력시에 hello 아이디가 나온다.

이때 전달되는 http 요청을 봐보자 userid에 어떤 값을 같이 보내는데 무엇인지 알아보자.
YzRjYTQyMzhhMGI5MjM4MjBkY2M1MDlhNmY3NTg0OWI=로 =를 보아 base64형식인 것을 알 수 있고 이걸 디코딩해보자
c4ca4238a0b923820dcc509a6f75849b가 나온다.

c4ca4238a0b923820dcc509a6f75849b를 찾기 위해 https://crackstation.net/
CrackStation - Online Password Hash Cracking - MD5, SHA1, Linux, Rainbow Tables, etc.
Free Password Hash Cracker Enter up to 20 non-salted hashes, one per line: Supports: LM, NTLM, md2, md4, md5, md5(md5_hex), md5-half, sha1, sha224, sha256, sha384, sha512, ripeMD160, whirlpool, MySQL 4.1+ (sha1(sha1_bin)), QubesV3.1BackupDefaults How Crack
crackstation.net
에서 값을 조회해보니 1이 나왔다. md5해쉬값으로 알 수 있다.

3. 풀이
그러면 이제 admin으로 md5해쉬 값을 보내고 요청을 해보자
admin md5값은 21232f297a57a5a743894a0e4a801fc3이다

이걸 base64로 인코딩하고 burp suite로 보내보자
안된다.

일단 cookie값을 더 알아보자
id =a, id = ad의 쿠키값이다.
MGNjMTc1YjljMGYxYjZhODMxYzM5OWUyNjk3NzI2NjE
MGNjMTc1YjljMGYxYjZhODMxYzM5OWUyNjk3NzI2NjE4Mjc3ZTA5MTBkNzUwMTk1YjQ0ODc5NzYxNmUwOTFhZA
쿠키가 1글자씩 늘어날때마다 더 늘어난다. 그리고 a값이 그대로고 뒤에 다른 값이 추가된다.
admin으로 한글자씩 늘려보면
a가 0cc175b9c0f1b6a831c399e269772661
d가 8277e0910d750195b448797616e091ad
m이 6f8f57715090da2632453988d9a1501b
i가 865c0c0b4ab0e063e5caa3387c1a8741
n이 7b8b965ad4bca0e41ab51de7b31363a1
이걸 연결한 다음 base64를 하면
MGNjMTc1YjljMGYxYjZhODMxYzM5OWUyNjk3NzI2NjE4Mjc3ZTA5MTBkNzUwMTk1YjQ0ODc5NzYxNmUwOTFhZDZmOGY1NzcxNTA5MGRhMjYzMjQ1Mzk4OGQ5YTE1MDFiODY1YzBjMGI0YWIwZTA2M2U1Y2FhMzM4N2MxYTg3NDE3YjhiOTY1YWQ0YmNhMGU0MWFiNTFkZTdiMzEzNjNhMQ== 가 된다.
쿠키 값으로 추가하면

4. 요약
- userid 쿠키 값이 Base64로 인코딩되어 있고, 이를 디코딩하면 입력값의 MD5 해시가 드러난다는 점을 파악했다.
- 단순한 MD5("admin")이 아니라, 입력한 ID의 각 문자를 개별적으로 MD5 해싱한 뒤 순서대로 이어 붙이는 독자적인 규칙임을 분석했다.
- 이에 따라 'a', 'd', 'm', 'i', 'n' 각 문자의 MD5 해시값을 구하여 연결하고, 최종적으로 Base64 인코딩하여 관리자 쿠키를 위조했다,
'워게임 > webhacking.kr' 카테고리의 다른 글
| [webhacking.kr] old-47 문제 (0) | 2026.01.26 |
|---|---|
| [webhacking.kr] old-58 문제 (0) | 2026.01.26 |
| [webhacking.kr] old-25 문제 (0) | 2026.01.26 |
| [webhacking.kr] old-27 문제 (0) | 2026.01.26 |
| [webhacking.kr] old-31 문제 (0) | 2026.01.23 |