티스토리 뷰

CodeEngn Basic RCE의 4번 문제입니다.






디버거를 탐지하는 함수의 이름을 묻는 문제입니다.


파일을 다운로드 받아보겠습니다.






'04.exe'라는 이름의 실행파일입니다.


실행시켜보겠습니다.






계속해서 '정상'이라는 문자열을 출력하고 있습니다.


그럼 이제 올리디버거로 열어 보겠습니다.






디버거로 열었더니


계속해서 '디버깅 당함'이라는 문자열을 출력합니다.


문제에 나와 있는 대로 해당 프로그램에 디버거를 감지하는 함수가 있어서 디버거로 열었을 때만 다른 문자열이 나오는 것 같습니다.


함수 목록을 확인해보겠습니다.






'IsDebuggerPresent'라는 함수가 보입니다.


검색해보니


IsDebuggerPresent란 PEB 구조체의 디버깅 상태 값을 확인하여 디버깅을 당하고 있다면 1을, 아닐 경우 0을 리턴하는 함수라고 합니다.


그렇다면 리턴값을 0으로 수정해주면 디버거로 열었을 때도 '정상' 문자열을 볼 수 있겠군요.






리턴값을 0으로 수정했습니다.


그리고 실행시켜주면..!






이렇게 디버거로 실행했을 때도 '정상' 문자열을 볼 수 있습니다.


이제 코드엔진 홈페이지에 디버거를 탐지하는 함수의 이름을 넣어주면...







댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함