문제
Daddy told me about cool MD5 hash collision today.
I wanna do something like that too!
ssh col@pwnable.kr -p2222 (pw:guest)
해석
<col.c 의 내용>
1. argv[1]을 통해 'passcode'에 해당하는 내용을 입력해야 한다.
단, 'passcode'의 길이는 무조건 20바이트!
2. passcode는 check_password 함수로 보내져서 다음과 같은 연산이 수행된다.
2-1. ip 포인터가 가리키는 곳에서 4바이트 만큼을 int 값으로 변환
2-2. ip 포인터는 4바이트씩 증가하며 passcode 20바이트 전체를 순회
2-3. 변환된 값을 모두 더해서 return
3. check_password 함수의 반환값이 hashcode(0x21DD09EC == 568134124)와 같으면 system("/bin/cat flag")가 실행된다!
실행결과
'pwnable.kr' 카테고리의 다른 글
[Toddler's Bottle] random writeup (0) | 2018.09.15 |
---|---|
[Toddler's Bottle] passcode writeup (0) | 2018.09.15 |
[Toddler's Bottle] flag writeup (0) | 2018.09.15 |
[Toddler's Bottle] bof writeup (0) | 2018.09.15 |
[Toddler's Bottle] fd writeup (1) | 2018.09.14 |