본문 바로가기
[보안 Archive] ~2017/파이썬 해킹 프로그래밍

05 - Immunity Debugger

by Joy L. 2015. 1. 26.
반응형

<05장 - Immunity 디버거>


Immunity Debugger는 스크립트 디버거와 GUI디버거 사이를 이어주는 다리와 같은 디버거다. 악성코드를 분석하는 사람들에게 가장 강력한 파이썬 라이브러리완전한 사용자 인터페이스를 제공한다.



PyCommand


PyCommand는 다양한 디버깅 기능을 Immunity 디버거 내에서 수행하게 작성된 파이썬 스크립트다.


PyCommand의 구조 :


PyCommand 의 두 가지 필수 조건 :

1. 하나의 파라미터를 받아드리는 main() 함수를 정의해야함

2. 문자열을 리턴해야함


PyCommand 실행시키기 :

1. Immunity 디버거가 설치된 디렉토리 내의 PyCommands 디렉토리에 해단 스크립트 파일이 존재하는지 확인

2, 디버거의 명령 바에 !<스크립트이름> 형태로 입력해서 PyCommand 스크립트 실행.



PyHooks


Immunity Debugger는 13가지의 후킹 기능을 지원 :

1. BpHook

2. LogBpHook

3. AllExceptHook

4. PostAnalysisHook

5. AccessViolationHook

6. LoadDLLHook 

7. UnloadDLLHook

8. CreateThreadHook

9. ExitThreadHook

10. CreateProcessHook

11. ExitProcessHook

12. FastLogHook

13. STDCALLFstLogHook


PyHooks를 정의할떄 이용하는 탬플릿 : 

ex) LogBpHook


regs 변수와 레지스터 이름을 이용해 원하는 레지스터에 접근하는 방법: regs["ESP"]


PyHooks를 이용하는 2가지 방법 : 

1. PyCommand 내에 후킹을 정의해 PyCommand를 살행 시킬 때마다 호출되게 한다

2. Immunity Debugger 내에 PyHooks 디렉토리에 후킹 코드를 위치시켜서 Immunity Debugger가 실행될때 마다 해당 후킹이 자동으로 설정되게 한다.



5.3 - 공격 코드 개발






반응형

댓글