줴림이 공부하줴림
[CodeEngine] Basic RCE L04 본문
이번 문제는 '해당 프로그램은 디버거 프로그램을 탐지하는 기능을 갖고 있는데, 디버거를 탐지하는 이 함수의 이름이 무엇인지'를 알아보는 것이다. 문제 파일인 04.exe를 실행해보니 갑자기 뜨는 명령 프롬프트. 그리고 반복되는 '정상'이라는 단어...? 바로 Olly 켜서 분석해보기로 했다. Olly 켜서 F11로 실행해보니까 오른쪽 사진처럼 '디버깅 당함'이 계속 반복된다..
너무 무서워요... 왜 하필 워딩이 '디버깅 당함'인건데... 가장 무서운 공포는 컴퓨터가 죽어가는 것
오른쪽 마우스 클릭 → Search for → All intermodular calls 클릭해서 함수를 확인해서 IsDebuggerPresent 함수를 발견했다. 이 함수에 중단점 걸어주고 F8로 계속계속 실행해줬더니 명령 프롬프트에 '디버깅 당함'이 한 줄 씩 생성된다.
처음엔 중단점 걸어도 뭔가 달라지는게 없어서 뭐지했는데, 알고보니 프롬프트 켜진 것도 모르고 그냥 Olly만 뚫어져라 보고 있어서 그런거였다. 04.exe는 Olly로 열면 프롬프트도 같이 열리니까 꼭 같이 확인하자.
코드트리 홈페이지에 함수명을 제출했더니 점수를 얻을 수 있었다! 문제 해결.
'Study > CodeEngine' 카테고리의 다른 글
[CodeEngine] Basic RCE L06 (0) | 2025.04.17 |
---|---|
[CodeEngine] Basic RCE L05 (0) | 2025.04.16 |
[CodeEngine] Basic RCE L03 (0) | 2025.04.10 |
[CodeEngine] Basic RCE L02 (0) | 2025.04.10 |
[CodeEngine] Basic RCE L01 (1) | 2025.04.10 |