반응형
쉬운 문제인데, 잘 나와있는 Write-up이 부족한듯하여 작성합니다.
일단 main함수를 보자
v4에 사용자의 입력을 받고 v5와 함께 strcmp_라는 함수에 인자로 전달한다.
v5는 위와같이 아주 잘나와있다.
strcmp_에서 a1은 내가 입력한 v4고, a2는 원래 있던 값 v5이다.
a1을 key로 xor한 것과 a2를 strncmp하고 return값이 0이면 "Goodgame"을 1이면 "Always dig deeper"를 출력한다.
(strncmp는 두 문자열이 같으면 0을 return하는 것은 다들 알테니)
즉, 우리는 나와있는 v5를 key로 xor한 값을 v4로 넣어주면 된다.
key값은 check라는 함수를 보면 나와있다.
key가 v3이 되기위해서는 v3*(v3-14) = -49 을 풀어야된다.
(쉬운 이차방정식)
v3은 7이라는 것을 알 수 있고, 이에 맞게 간단한 코드를 짜보자!
Flag를 구할 수 있다.
반응형
'Rev > Write-up' 카테고리의 다른 글
Christmas CTF 2020 - lock (0) | 2020.12.28 |
---|---|
b01lers - chuggachugga (0) | 2020.03.18 |
Rice Tea Cat Panda - Notice Me Senpai (0) | 2020.02.05 |
Rice Tea Cat Panda - Tea Clicker (0) | 2020.02.05 |
HackCTF-keygen (0) | 2019.10.28 |