IDA 사용법
IDA는 바이너리 파일을 어셈블리어로 디스어셈블(disassemble) 해주는 프로그램 입니다.
바이너리 -> 어셈블리어 -> C언어 까지 변환을 해줍니다.
IDA를 통해 특정 바이너리를 열었을때
위처럼 바이너리의 함수들과 해당 함수들의 어셈블리어 코드들을 확인할 수 있다.
Hex-Ray
특정 함수 선택 및 f5 입력
어셈블리어를 C언어 소스코드로 변환해서 보여준다.
Search
Alt + T : 문자열 및 어셈블리어 검색
function list
Ctrl + p
함수목록을 보여주고 더블클릭시 해당 함수로 이동이 가능하다.
파일의 정보
TEXT View에서 가장 위쪽에 파일의 대략적인 정보를 확인할 수 있다.
어셈블리어 코드 수정하기
수정하고싶은 어셈블리 코드 클릭후 Alt + F2
어셈블리어 구문 삽입
바이너리 수정이아닌 분석 소스코드만 수정
Text View -> Layout Graph
Space bar 입력
text view상태에서 space를 입력하면 아래처럼 그래프 모드로 전환된다.
Stack Frame 확인하기
아래의 초록색 변수를 더블클릭하면 각 함수의 Stack Frame을 확인할 수 있고 각 변수들의 위치도 확인할 수 있다.
Jump to structure offset
이동하고 싶은 주소를 입력하면 해당 주소로 이동
단축키 : g
Search name
Ctrl + L
문자열 목록확인
Shift + F12
문자열 및 api 확인 가능
더블클릭시 해당 주소로 이동
이전단계로 돌아가기
ESC
ida에서 진행한 이동을 이전단계로 돌아간다.
xref call 따라가기
단축키 : x
특정함수 클릭 후 x를 입력하면 해당함수를 호출한 위치가 나온다. 더블클릭시 이동가능
함수 또는 변수 이름 바꾸기
단축키 : N
N입력시 아래처럼 함수명이나 이름을 변경할 수 있다.
북마크 기능
특정 주소 클릭 후 Alt + m
북마크 설명 설정
북마크 주소 목록 출력
Ctrl + M
북마크로 설정한 주소들이 출력된다.
IDA Debugging 모드
break point
F2
break point로 설정할 소스코드를 클릭하고 F2를 입력하면 아래사진처럼 bp가 설정된다.
Process run
F9
F9를 입력하면 process가 실행된다.
F7 : step into
F8 : step over
F5 : IDA View에서는 hexray 기능이고 debugging 모드에서는 run 기능이다.
Ctrl + F2 : 디버깅 종료
'study > 리버싱' 카테고리의 다른 글
IDA Python (0) | 2021.02.06 |
---|