본문 바로가기

IDA

IDA Script Python 세그먼트, 함수 목록 출력

반응형

IDA Script Python 세그먼트, 함수 목록 출력


[IDA Script 작성하기]

1) IDA 아래쪽 커맨드창을 이용 : 한줄 한줄 바로바로 작성&실행

2) [ File - ScriptCommand ] : 스크립트 작성하여 바로 적용

3)  [ File - ScriptFile ] : 만들어둔 스크립트 파일을 가져와 실행


1) 세그먼트 목록 출력

커맨드 창에 Segments() 입력해 보자.

Segment()는 Segments object의 generator이다.

객체를 생성해준다면 받아서 사용해야지.


생성자를 통해 각각의 세그먼트 객체를 받아서 각 세그먼트의 영역을 출력하는 스크립트를 작성해 보자.

커맨드 라인에서 한줄한줄 쳐도 되지만, 스크립트를 작성하여 사용하고 싶다면 Script command 창을 열어 작성.


Segments() 생성자를 통해 세그먼트 객체를 받아서 각 객체별로 이름, 시작주소, 끝주소를 출력.


결과 확인.


2) 함수 목록 출력

함수 객체 생성자는 Functions()

for eachFunc in Functions():

print(hex(eachFunc), idc.GetFunctionName(eachFunc));


각 함수의 주소, 이름 출력.


함수의 시작,끝 주소는 Function 객체의 startEA, endEA를 통해 얻을 수 있음.

ex) print eachFunc.startEA


반응형