게임 해킹툴을 분석할 때,
분석 대상 파일이 패킹이 되어있는 경우는 패킹된 것부터 먼저 처리를 해야합니다.
그 거추장스러운 껍데기를 벗겨내든 그냥 꿰뚫어보든 말이죠.
제가 아는 선에서 패킹을 벗겨내 원래 코드를 확인하는 가장 빠른 방법은...
"닥치고 실행~" 입니다...;;;;
일단 실행시켜서 메모리에 띄워놓고~ 메모리의 패킹이 풀린 상태의 코드를 바로 보는거죠 @_@
※ 주의!!! 시스템에 악영향을 미치는 악성코드의 경우 이 방법을 택하면 멘붕옵니다;;;...
얼마 전 일 입니다...
어느 때와 다름없이 해킹툴 샘플을 디버거로 열고는 상콤하게 실행을 시켰더랬죠...
그런데 디버거가 종료가 되더니, 그 이후로 하나씩 사라지는 트레이아이콘들과 다른 프로세스들...;;;;
저를 살포시 당황하게 만든 "Windows 종료 중..." 이라는 문구와 함께 PC 가 꺼져버리더군요;;;
일시적인 문제인가 싶어 다시 두 번 정도 더 시도해봤는데, 죄다 PC가 꺼지더군요;;;
이쯤되면 일시적인 문제가 아니고 해킹툴 샘플에서 무슨 짓을 한다는거죠.. @_@;;;
이 녀석은 저의 속성 방법으로 접근이 안되다보니 살포시 한숨 한 번 쉬어주고 정석(?)대로 봤습니다.
해킹툴 샘플에 아래와 같은 코드가 있더군요...;;;;
FindWindow() API 로 현재 시스템의 윈도우를 검사해서...
특정 문자열(ollydbg..... , Themida, Cheat engine 6.1 등...)을 가진 윈도우가 있는 경우,
"shutdown -s -f -t 00" 명령을 날려버립니다..;;;; oTL;;;
샘플들 볼때마다 정석대로 볼려니 뭔가 미묘하게 귀찮아서...
머리 좀 굴리다가 그냥 이렇게 해버렸습니다. ^^a.....
어떤 문제를 해결하는데 있어서 복잡하고 어려운 방법만이 능사는 아니죠~~
간단하게 돌아가는 걸로 해결이 가능하다면 그런 방법을 택하는 것도 나쁘진 않는듯 합니다.ㅎㅎ
'Reverse Engineering' 카테고리의 다른 글
섬뜩한 안티-디버깅 코드... (6) | 2013.08.23 |
---|---|
2012 7th 코드엔진(CodeEngn) 컨퍼런스 안내 (0) | 2012.11.13 |
2012 ~ 코드엔진 컨퍼런스 안내 (0) | 2012.06.04 |
간단한 Anti-Disasm ~ (0) | 2012.05.29 |
2011~ 코드엔진 컨퍼런스 안내. (3) | 2011.06.14 |