Rev/Write-up
HackCTF-Strncmp
zooonique
2019. 10. 23. 16:41
반응형
쉬운 문제인데, 잘 나와있는 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를 구할 수 있다.
반응형