2018. 4. 14. 18:55ㆍ악성코드 분석
Upack Unpacking
1> 실행파일의 패킹 여부를 확인한다 ( PEiD 사용 )
2> Ollydbg로 실행파일 코드 분석
Ollydbg로 파일을 실행시켰더니 다음과 같은 문구가 발생하였다
아마도 Upack으로 패킹되있어서 나오는 문구이지 싶다
3> MemoryMap를 통해서 코드시작지점 찾기
ImageBase + AddressEntryPoint => EntryPoint
4> 원본파일 OEP 찾기
하지만, 실행파일은 패킹되어있다
따라서 맵에 나와있는 값은 거짓값일 확률이 높다
해당 지점으로 이동해보자
해당 지점에 break를 걸어주고 코드를 계속 진행시킨다
0x0049A05B 지점에서 RETN명령이 실행된다
RETN명령을 실행시킨 다음의 상황이다
0x00427180주소로 이동하였다
해당 주소가 원본실행파일의 EP가 되겠다 ( =OEP )
5> OEP부터 dump한다
plugins - Ollydump - Dump debugged process => dump파일 저장
단, rebulid import는 하지않는다 ( ollydbg에서 오류가 발생하여 Import REC를 활용한다 )
6> IAT복구
OEP입력 후 "AutoSearch"로 RVA계산, Size는 0x1000 정도 주고 "Get Imports" 실행
Import Address 정보들을 위에서 dump했던 파일과 합쳐주자
7> 결과확인
첫번째는 원본파일, 두번째는 dump파일, 마지막은 dump파일에 IAT를 복구시준 파일
PEID를 통해서 패킹여부를 확인해보자
성공적으로 언패킹되었다
'악성코드 분석' 카테고리의 다른 글
악성코드 기초 정적분석이란? (0) | 2018.04.18 |
---|---|
FSG 수동언패킹 [ Lena21 ] (0) | 2018.04.14 |
UPX 수동언패킹 [ Lena 21 ] (0) | 2018.04.10 |
Packing & Unpacking (0) | 2018.04.10 |
PE File Structure (0) | 2018.04.10 |