상세 컨텐츠

본문 제목

[Write-up] CodeEngn Advance RCE 1

Reversing Write-Up/03.CodeEngn Advance

by RACC8N 2020. 1. 30. 10:08

본문

문제 : 이 프로그램은 몇 밀리세컨드 후에 종료 되는가

 

풀이 : 

Basic 19번과 유사한 문제이다.

 

디버거를 켜보자.

 

Basic 19와 같이 안티 디버깅을 우회해야한다.

 

IsDebuggerPresent함수를 찾았으며 JNE 분기문을 JE로 바꾸고 계속 분석해보자.

 

흐름을 계속 따라가다보면 timeGetTime 함수와 Sleep을 찾을 수 있었다.

 

마찬가지로 eax-esi 한 값을 ebx+0x4와 비교하는 명령어를 볼 수 있다.

 

비교대상인 ebx+0x4보다 크거나 같으면 분기문을 통과하므로, ebx+0x4의 값이 정답임을 예상할 수 있다.

 

값은 337B로 13.17초이다.

관련글 더보기

댓글 영역