Name이 CodeEngn일 때 Serial을 구하는 문제이다.
잘못된 Serial 값을 입력하면 위 그림과 같은 창이 뜬다.
PEiD로 패킹여부를 먼저 확인했다. 확인한 결과, UPX로 패킹되어 있는 것을 알 수 있었다.
따라서 UPX 툴을 사용해 먼저 언패킹 시켜주었다.
그 결과, 프로그램에 사용된 문자열들이 보였다.
성공 문자열이 있는 곳으로 가 코드를 확인해 보겠다.
CMP로 EAX와 ESI 값을 비교한 후 JNZ 분기문을 통해서 성공/실패 문자열이 가는 곳이 나뉘어 진다.
따라서 CMP 문이 있는 곳에 BP를 걸고 실행을 했다.
CodeEngn, 1234를 입력하고 BP를 건 곳까지 실행했을 때,
EAX에는 우리가 입력한 1234가 HEX 값으로 저장되어 있다는 것을 확인할 수 있었다.
따라서 ESI에 있는 값도 확인한 결과, 10진수로 76193이라는 값이라는 것을 알았다.
성공~
'Study > Reversing' 카테고리의 다른 글
Suninatas_11번 문제 풀이 (0) | 2021.05.19 |
---|---|
Reversing.kr _Easy Unpack 풀이 (0) | 2021.05.18 |
[HackCTF] Reversing Me 풀이 (0) | 2021.05.11 |
CodeEngn Challenge : Basic RCE L11 (0) | 2021.05.06 |
CodeEngn Challenge : Basic RCE L10 (0) | 2021.05.06 |