문제 : 이 프로그램은 몇 밀리세컨드 후에 종료 되는가
풀이 :
Basic 19번과 유사한 문제이다.
디버거를 켜보자.
Basic 19와 같이 안티 디버깅을 우회해야한다.
IsDebuggerPresent함수를 찾았으며 JNE 분기문을 JE로 바꾸고 계속 분석해보자.
흐름을 계속 따라가다보면 timeGetTime 함수와 Sleep을 찾을 수 있었다.
마찬가지로 eax-esi 한 값을 ebx+0x4와 비교하는 명령어를 볼 수 있다.
비교대상인 ebx+0x4보다 크거나 같으면 분기문을 통과하므로, ebx+0x4의 값이 정답임을 예상할 수 있다.
값은 337B로 13.17초이다.
[Write-up] CodeEngn Advance RCE 6 (0) | 2020.02.01 |
---|---|
[Write-up] CodeEngn Advance RCE 5 (0) | 2020.01.31 |
[Write-up] CodeEngn Advance RCE 4 (0) | 2020.01.30 |
[Write-up] CodeEngn Advance RCE 3 (0) | 2020.01.30 |
[Write-up] CodeEngn Advance RCE 2 (0) | 2020.01.30 |
댓글 영역