문제 정보
이 프로그램은 디버거 프로그램을 탐지하는 기능을 갖고 있다.
디버거를 탐지하는 함수의 이름은 무엇인가
풀이 힌트
2-1. IsDebuggerPresent
문제 풀이
더보기
3-1. 디버거로 프로그램을 실행하면 "디버깅 당함" 이라는 문구를 출력한다.
3-2. 문자열 참조에서도 별다른 수확이 없어 F8로 한줄씩 실행 노가다 후 디버깅 함수를 체크하는 구간을 찾았다.
※ 문자열 참조가 아닌 모듈참조를 통해서도 확인할 수 있었다,
3-3. test eax,eax 구문에서 eax가 0이면 [04.408190] 함수를 실행하고, 0이 아니면 [04.408190] 함수를 실행하게 되는데 별다른 조작없이 eax가 1인 현재 상황에서는 똑같이 "디버깅 당함" 문구를 출력할 것으로 예상되기 때문에 eax를 0으로 바꿔서 실행해보자.
3-4. eax 값을 0으로 조작한 후 실행결과 "정상" 문구를 출력하는 것을 확인할 수 있다.
3-5. (정답) 디버깅을 탐지하는 함수의 이름은 IsDebuggerPresent 이다.
'워게임 > CodeEngn' 카테고리의 다른 글
[CodeEngn] Basic RCE L06 문제풀이 (0) | 2021.12.30 |
---|---|
[CodeEngn] Basic RCE L05 문제풀이 (0) | 2021.12.30 |
[CodeEngn] Basic RCE L03 문제풀이 (0) | 2021.12.29 |
[CodeEngn] Basic RCE L02 문제풀이 (0) | 2021.12.27 |
[CodeEngn] Basic RCE L01 문제풀이 (0) | 2021.12.27 |