col.c 의 소스코드를 보면 다음과 같다.
20byte passcode를 인자로 받는다.
check_password() 함수를 참고하면 입력받은 값을 4byte 씩 5번 입력받아
res 변수에 누적된다.
우리는 누적된 값을 0x21DD09EC로 맞춰주면 된다.
먼저 0x21DD09EC를 5로 나누어 보면 0x06C5CEC8 이다.
하지만 0x21DD09EC는 5로 나누었을때 나머지가 4 이므로
0x06C5CEC8 x 4 + (0x06C5CEC8 + 4) = 0x21DD09EC 가 된다.
이제 이걸 인자로 쳐 넣어주면 된다.
'pwnable > pwnable.kr' 카테고리의 다른 글
pwnable.kr -bof (0) | 2016.07.29 |
---|---|
pwnable.kr -flag (0) | 2016.07.15 |
pwnable.kr -shellshock (0) | 2016.07.15 |
pwnable.kr -mistake (0) | 2016.07.15 |
toddler -fd (0) | 2016.07.13 |