Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 리버싱핵심원리
- CP949
- ImageSwitching
- x32dbg
- 서비스디버깅
- OllyDbg
- 디버깅
- UTF-32
- .net
- 안티디버깅
- Advanced안티디버깅
- Static안티디버깅
- dotPeek
- Visual Studio
- IL코드
- Self-Creation
- PEImage
- RedLine Stealer
- 리버싱
- 서비스프로세스
- DebugBlocker
- Dynamic안티디버깅
- 분석 보고서
- JIT
- Exe2Aut
- hxd
- CodeEngn
- UTF-16
- Python
- PEImageSwitching
Archives
- Today
- Total
-榮-
[CodeEngn] Basic RCE L10 본문
● CodeEngn Basic RCE L10 문제
◎ 파일 실행 화면
◎ 패킹 및 난독화 여부 확인
● CodeEngn Basic RCE L10 풀이 및 답
PUSHAD가 보이므로 POPAD를 검색해 봅니다.
PUSHAD 바로 아래의 POPAD로 이동합니다.
POPAD 아래에 OEP로 가는 JMP 명령어가 없는 것으로 보아 PUSHAD와 POPAD로 둘러싸여 있는 특징을 가지고 있는 패커는 아닌 것 같습니다.
방법을 바꿔 PUSHAD 명령어를 실행하고 Hardware BP를 설치하여 OEP를 찾습니다.
실행[F9]을 하고 멈춘 곳을 보면 OEP(00445834)로 가는 코드가 JMP 명령어가 아닌 PUSH 명령어와 RETN을 사용하는 것을 볼 수 있습니다.
OEP로 이동하면 OPCODE를 제대로 인식하지 못하는 것을 확인할 수 있습니다.
OPCODE를 제대로 인식하지 못할 때, Dump를 뜨면 정상적으로 인식합니다.
[※참고]
Dump 파일 만들기는 CodeEngn Basic RCE L09의 "+α StolenByte를 제자리로 옮기고 덤프 파일 만들기"
Dump 뜬 파일을 OllyDbg에 올려 제대로 인식 됬는지 확인합니다.
'등록 성공'으로 가기 위한 분기점을 찾기위해 성공 문자열을 검색하여 찾습니다.
성공 문자열 위의 JNZ 명령어가 '등록 성공'으로 가는 분기점임을 확인할 수 있습니다.
CodeEngn Basic RCE L10의 답은 OEP + 분기점의 OPCODE : 004458347555
'CodeEngn > Basic' 카테고리의 다른 글
[CodeEngn] Basic RCE L12 (+α PEView 주소 변환) (0) | 2021.03.24 |
---|---|
[CodeEngn] Basic RCE L11 (0) | 2021.03.24 |
[CodeEngn] Basic RCE L09 (+α StolenByte 옮기고 덤프 파일 만들기) (0) | 2021.03.23 |
[CodeEngn] Basic RCE L08 (0) | 2021.03.23 |
[CodeEngn] Basic RCE L07 (0) | 2021.03.23 |