본문 바로가기

High Level Technique/Reversing

Back To User Mode

Back To User Mode는 특정 이벤트를 일어나기 전에 설정해두고 Call 명령이 일어난 바로 다음 위치를 잡을 수 있습니다.


UPX Unpacking에서 사용했던 파일로 Back To User Mode에 대해서 알아보도록 하겠습니다.





Back To User Mode 는 다음과 같이 사용합니다.


1. 분석하고자 하는 프로그램을 올리디버거로 실행합니다.

2. F9를 눌러 실행시킵니다.

3. F12를 눌러 프로그램을 일시정시 상태로 둡니다.

4. Alt + F9를 눌으면 Back To User Mode가 설정됩니다.

5. 프로그램에서 이벤트가 발생합니다. (메시지창 출력)

6. 올리디버거가 해당 부분에 커서가 이동됩니다.






1. 실행하기




2. 임의의 시리얼을 입력후 메시지 창을 띄웁니다.








3. 올리디버거로 돌아가서 F12를 눌으면 오른쪽 하단에 Paused로 변경됩니다.







4. 여기서 Alt + F9를 눌러서 Back To User Mode로 변경합니다.








5. 프로그램을 확인해보면 이처럼 렉걸리는 현상이 나타나는데 이상태에서 조금 기다리다보면 정상적으로 나타납니다.







7. 정상적으로 나타나게 되면, 메시지창의 확인버튼을 눌러줍니다.




그러면 해당 메시지창이 어디에서 발생했는지 알 수 있습니다.




이러한 기능이 Back To User Mode 입니다.



'High Level Technique > Reversing' 카테고리의 다른 글

Stack, Calling Conventions  (0) 2015.05.19
Byte Ordering  (0) 2015.05.18
UPX Unpacking  (0) 2015.05.18
데이터 타입, 피연산자 타입, 어셈블리 언어  (0) 2015.05.15
CPU 레지스터  (0) 2015.05.15