x64dbg에 있는 여러 가지 기능들을 편하게 쓰기 위해서는 단축키를 외우는 것이 중요하다.
📌 기본 실행 관련 단축키
| 명령어 | 단축키 | 설명 |
|---|
| 파일 불러오기 | F3 | 실행 파일을 디버거에 적재함 |
| 프로세스 불러오기 | Alt + A | 실행 프로세스를 디버거에 적재함 |
| 실행 | F9 | 프로그램을 실행 (중단점이 있으면 그곳까지 실행됨) |
| 반환할 때까지 실행 | Ctrl + F9 | 함수에서 함수의 끝에 있는 ret 명령을 실행하기 전까지 실행 |
📌 디버깅 관련 단축키
| 명령어 | 단축키 | 설명 |
|---|
| 중단점 설정 | F2 | 중단점(Break Point)을 설정하거나 해제함 |
| 선택까지 실행 | F4 | 우리가 선택한(마우스 혹은 화살표) 부분까지 실행 |
| 다시 시작 | Ctrl + F2 | 프로그램이 처음부터 다시 시작됨 |
| 닫기 | Alt + F2 | 프로그램이 종료됨 (종료된 후 다시 시작 가능) |
| 안으로 단계진행 | F7 | call의 안으로 들어가서 실행 |
| 건너서 단계진행 | F8 | 안으로 들어가지 않고 실행시킴 |
| 안으로 자동진행 | Ctrl + F7 | F7을 사용하여 자동 코드 실행 (F12로 멈춤) |
| 건너서 자동진행 | Ctrl + F8 | F8을 사용하여 자동 코드 실행 (F12로 멈춤) |
| 일시중지 | F12 | 자동 실행 중에 일시정지용으로 사용 |
📌 x64dbg 디버거의 보조 기능
| 명령어 | 단축키 | 설명 |
|---|
| 코드 미리 보기 | Enter | Call이나 Jmp 명령어 위에서 사용하였을 때, Call/Jmp 목적 주소로 이동해서 그곳의 코드를 보여줌 (실행 아님) |
| 주소 이동 (Go To) | Ctrl + G | 원하는 주소로 이동 (실행 아님) |
| 데이터 편집 (Edit) | Ctrl + E | 해당되는 위치의 코드 또는 데이터를 수정 |
| 주석 (Comment) | ; | 주석 달기 |
| 레이블 (Label) | : | 레이블 추가 (해당되는 주소에 이름이 주어짐) |
| 뒤로 진행 | - | 현재 명령어 전의 명령어 위치로 이동 (실행 취소 아님) |
| 앞으로 진행 | + | 현재 명령어 다음 명령어 위치로 이동 (실행하지 않음) |
📌 그 외 단축키가 아닌 마우스 조작 기능
1. 문자열 참조 선택 : 코드에서 우측 마우스 클릭 --> 찾기 --> 문자열 참조 선택
2. API 검색 방법 : 코드에서 우측 마우스 클릭 --> 검색 --> 모듈 간 호출 선택
📌 Trace 명령어 단축키
| 명령어 | 단축키 | 설명 |
|---|
| Animate Into | Ctrl + F7 | Step Into 명령 반복(화면 표시 됨) |
| Animate Over | Ctrl + F8 | Step Over 명령 반복(화면 표시 됨) |
| Trace Into | Ctrl + F11 | Step Into 명령 반복(화면 표시 안 됨) |
| Trace Over | Ctrl + F12 | Step Over 명령 반복(화면 표시 안 됨) |
추가적으로 알아가는 기능은 계속 추가 예정