Reversing
[Reversing.kr] Easy_Crackme! 비밀번호찾기(find password)
GuTTe
2018. 4. 12. 23:42
[Reversing.kr ] Easy_Crackme! 비밀번호찾기(find password)
Reversing.kr에서 받을 수 있는 초심 리버서 문제풀이용중 하나이다.
프로그램을 실행 시키면 일정값을 집어넣어야 하는 구간이 생긴다.
만일 값이 틀린다면 Inccorrect Password 라는 문구가 뜨게된다.
이제 본격적으로 이 프로그램의 비밀번호를 찾아보자!
Ollydbg로 바이너리를 분석해본다.
(IDA Pro는 그래프를보여주기때문에 매우 편리하다....)
(하지만 아직 익숙하지 않으므로 패스...)
일단 먼저 serchfor string해서 문자열을 찾아보자
cingratulation이 보인다. 이 문자열이 있는 주소로 이동해보장
일단 cmp분기점이 있는 구간을 위주로 보기 쉽게 브리이크를 걸어보았다.
ㅎㅎ 나중에 풀어야한다.
일단 위로 올라가면 GetDigItemTextA라는 입력받는 API를 볼 수 있다.
일단 위의 CMP를 보면 [ESP+5]와 61(아스키 코드로 a)와 비교하고 있다.
스택구조를 한번 보자.
처음 이값을 입력했을 때 ESP+5위치의 입력한 a와 비교한다.
F8을 눌러 다음으로 진행해보자
[ESP+A]자리에 5Y를 비교하고 있다.
계속 디버깅을 진행해보자
[ESP+10]위치에서 R3versing과 비교하고 있다.
또 디버깅을 계속해보자.....
마지막에 [ESP+4]위치에서 45(E)와 비교하고 있다.
즉, 정리해보면
[ESP+4] = E [ESP+5] = a [ESP+A] = 5y [ESP+10] = R3versing
정답은 Ea5yReversing이다!
PS. IAD Pro로 HEX-RAY하면 바로 답을 찾을 수 있다.....