TAG
reversing Study
Basic RCE 04
디버거에서 실행하지 않아서, 그냥 실행하면 다음처럼 정상 문구를 반복적으로 출력하는 콘솔 앱으로 보인다.
디버거에서 실행하면, 다음처럼 디버깅 당함 문구를 반복적으로 출력한다. 이제 디버깅 중인지 판단하는 함수를 찾아보자.
문자열을 따라가면, 다음처럼 ISDebuggerPresent함수가 보인다. 해당 함수가 디버깅 여부를 판단하는 함수이다. 로직을 알아보기 위해, 해당 함수 내부로 들어가보자.
다음처럼, kernelbase.dll 즉, 커널에서 디버깅 여부를 판단 하는 것으로 보인다.
위처럼, 패치를 한다면, 디버깅 중에도 정상 문구를 출력하게 할 수 있다.
정답은 찾았다.