디버거를 프로그램을 탐지하는 함수를 찾는 문제
이뮤니티 디버거로 해당 부분을 진행했을 시
프로그램 실행창에 다음과 같은 내용이 출력된다.
해당 부분(00408454)에 F2로 브레이크포인트를 걸고 진입해보았다.
들어가자마자 00401030으로 점프하는 어셈블리 명령어를 찾을 수 있고,
00401030 근처에서 IsDebuggerPresent라는 명령어를 찾을 수 있었다.
https://learn.microsoft.com/ko-kr/windows/win32/api/debugapi/nf-debugapi-isdebuggerpresent
IsDebuggerPresent 함수(debugapi.h) - Win32 apps
호출 프로세스가 사용자 모드 디버거에 의해 디버깅되는지 여부를 확인합니다.
learn.microsoft.com
그리고 00401074를 지나면 '디버깅 당함'이라는 메시지가 출력되는 것을 확인할 수 있었다.
HxD에디터로 '디버깅 당함'메시지를 찾아보면 해당 메시지가 출력되지 않도록 하거나 다른 메시지가 출력되도록 할 수도 있을 것 같다.
'INTERLUDE ✦ > 2023 Reversing STUDY' 카테고리의 다른 글
Basic RCE L06 (0) | 2023.03.30 |
---|---|
Basic RCE L05 (0) | 2023.03.28 |
Basic RCE L02 (0) | 2023.03.23 |
Basic RCE L03 (0) | 2023.03.23 |
Code Engn Challenges - Basic RCE L01 (0) | 2023.03.21 |