728x90 IT Tech549 IDA + python 스크립트 사용법 Ida 설치된 디렉토리의 python 디렉토리에서 추가적으로 사용할 수 있는 기능 확인 DBG_Hooks 클래스를 이용 idaapi만 import하면 idaapi와 idautil과 idc에 있는 함수와 클래스들을 사용할 수 있다. IDA에서 디버거를 선택해 줄 것 Hook이 되어 있는 경우는 dbg.unhook() 을 할 것 2015. 1. 4. BoF 원정대 시작팁 [디버깅 시 python으로 인자값 전달] (gdb) r `python -c 'print "A" * 400 + "BBBB" + "CCCC"'` (gdb) r $(python -c 'print "A" * 400 + "BBBB" + "CCCC"') (gdb) r `python ex.py` [디버깅 시perl로 인자값 전달] (gdb) r `perl -e 'print "\x41"*400,"BBBB","CCCC"'` [디버깅 오류 확인] /bin/bash: /home/gate/eM/../gremlin: Operation not permitted 권한이 없어서 그래요 setuid 가 걸린 binary 는 디버깅 못함 사본을 만들어서 디버깅할 것 gcc버전이 하위버전이라 더미데이터가 안붙어서 16바이트 버퍼이면 그.. 2014. 12. 18. Pin - A Binary Instrumentation Tool 사용법 툴 개요 : Intel에서 제작한 Dynamic Binary Instrumentation Tool 활용 : Taint Analysis untrust input을 정의하고 해당 값이 지나는 부분만 로깅 우리가 표시하고 싶은 부분을 오염시켜서 해당 부분이 지나간 부분만 표시하려고 할 때 사용 다운로드 : https://software.intel.com/en-us/articles/pintool-downloads 유사한 툴 : DynamoRIO와 리눅스 기반의 Valgrind 제약사항 : Intel 계열의 CPU만 지원 설치방법 : Windows SDK 6.1 이상 MS 재배포 패키지 Cygwin의 Devel 패키지 PIN TOOL의 기본적인 사용법 : step1 : 사용하고자 하는 툴(.cpp파일)을 make.. 2014. 12. 17. Ollydbg 기본사용법 SEH 구조, ER구조 (Structured Exception Handling) 구조적 예외 핸들러 fs:[0]을 확인해서 이 구조에 있는 handler 값을 참고하게 된다. ollydbg로 확인 커서두고 스페이스를 두면 어셈블리를 변경할 수 있다. shift F7 shift F8 Shift F9 상단의 ntdll이 아닌 calc인 상태에서 ctrl + G를 눌러 fs:[0] 의 SEH 영역을 찾는다. 세그먼트 selection SEH Overflow 공격: 윈도우에서만 가능한 공격임 2014. 12. 12. BinDiff 기본사용법 Zynamics에서 개발하였으나 구글에서 합병한 후 더이상 제품을 지원하지 않겠다고 함 패치 전 후 비교 : bindiff 반드시 java 1.6 설치 후 사용해야 함 설치 시 IDA의 기본 디렉토리를 설정해야 함 exe파일이 아닌 ida가 만든 idb파일을 가지고 비교함 idle 상태 확인 2014. 12. 12. 이전 1 ··· 103 104 105 106 107 108 109 110 다음 반응형