[CodeEngn] Basic RCE L10
L10
문제
OEP를 구한 후 ‘등록성공’으로 가는 분기점의 OPCODE를 구하시오
정답 = OEP + OPCODE
파일 실행
올리디버거
- 패킹된 모습 파악
exeinfope
- Aspack로 패킹된 형태 파악
언패킹 원리
- PUSHAD를 통해 스택에 레지스터 적재
- 이 지점에서 ESP에 접근하는 주소에 브레이크
- 메모리에 원본 코드 복구
- POPAD를 통해 스택으로부터 레지스터 추출 → 참조 시작
F8
Follow in dump
확인
Breakpoint - Hardware on access - Dword
F9 - F8
- POPAD
- OEP로 이동하기 전 분기점
F8(OEP로 이동)
Ctrl + A
- 언패킹
- OEP = 00445834
Search for - All referenced text strings
- 성공시 문자열 발견
- 분기점 있을거라 확신
이동
- 분기 명령어 발견
- 분기점의 OPCODE = 75 55