---
# System prepended metadata

title: Занятие 4. Отладка с помощью x64gdb
tags: [module11, x64dbg, revers, disassemble, tools]

---

###### tags: `module11`  `revers` `disassemble` `tools` `x64dbg`

[ToC]

# Занятие 4. Отладка с помощью x64gdb

## Видеозапись урока
{%youtube g_AJCsCWK7s %}


### timecodes
00:00:00 Ждем
00:11:30 что было, что будет.
00:14:15 Что такое x64dbg
00:19:00 Общая информация об окнах приложения
00:20:45 Параметры работы
00:31:10 Старт работы
00:36:45 Точки остановки
00:50:00 Перерыв
00:56:40 Поиск строк в коде
01:08:15 Декомпиляция
01:13:30 Стек вызовов
01:15:47 Изменение кода
01:19:44 Изменение регистров
01:21:20 Переименование
01:26:30 Карта памяти
01:33:30 Установка плагинов
01:36:00 Перерыв
01:47:45 Устанавливаем snowman 
01:52:40 Отключаем антивирус и уведомления
02:01:40 Запускаем x64dbg и выполняем настройку
02:07:35 Открываем и дебажим by_hash 
02:30:40 Перерыв
02:36:15 Разбираем creckme1
03:17:20 Домашка
03:21:50 Вопросы

x64dbg развитие OllyDbg, но уже с поддержкой 64й архитектуры


## Параметры работы
![](https://i.imgur.com/ADGSApN.png)
System breakpoint перехват функции, которая будет инициализировать анализируемое приложение
TLS Callback стартует до main, инициализирует потоки приложения.
Entry BP  старт приложения

можно поменять вид точки остановки, для обхода антиотладки 
![](https://i.imgur.com/B45zCAr.png)

отключаем exceptions
![](https://i.imgur.com/ZDvf8s5.png)


## Старт

![](https://i.imgur.com/uSqn3sH.png)

## Горячие клавиши отладки
Интерфейс x64dbg
• F9: запуск выполнения
• F7: выполнение инструкции с заходом в
функцию
• F8: выполнение инструкции без захода в
функцию
• Ctrl+F9: выполнение до инструкции RET
• Alt+F9: выполнение до
пользовательского кода



## Точки останова

• Программные - установка точки и приложения для отладки, злоумышленнику легче отследить такие точки остановки
• На участок памяти - когда мы знаем что злоумышленник подготовил себе что-то в памяти, например, буфер, но мы не знаем когда он будет задействован. мы **можем отловить обращение к этому участку памяти** такие как чтение, запись, выполнение
• Аппаратные можно отлавливать те или иные изменения в регистрах 

![](https://i.imgur.com/FingJjX.png)
На участок памяти

![](https://i.imgur.com/hXZTVhg.png)

Окно точек останова
![](https://i.imgur.com/lAk0cv6.png)


## Поиск элементов

### Поиск строк в коде
![](https://i.imgur.com/c628rVG.png)


### Использование строки

![](https://i.imgur.com/e4YXyEI.png)

### Граф функции (HotKey G)
![](https://i.imgur.com/L6IBX4Y.png)

### Декомпилирование кода
![](https://i.imgur.com/1eDdJJV.png)
![](https://i.imgur.com/mW14MqO.png)

декомпилирован кусок кода представленный на картинке  выше (Граф функции)
![](https://i.imgur.com/qxT4Uyw.png)

### Стек вызовов
![](https://i.imgur.com/fGI6c4G.png)

### Изменение кода
![](https://i.imgur.com/eRWVpEi.png)
![](https://i.imgur.com/kteDRil.png)
![](https://i.imgur.com/5et4WFW.png)
### Изменение регистров
![](https://i.imgur.com/MudUNIf.png)
![](https://i.imgur.com/jV5ajUm.png)
![](https://i.imgur.com/PgMQiIe.png)
### Переименование
![](https://i.imgur.com/LFXRCRs.png)

![](https://i.imgur.com/JeNd2Z5.png)
![](https://i.imgur.com/6sLg8rN.png)


### Карта памяти
![](https://i.imgur.com/eF8r02p.png)
большие участки памяти которые имеют сразу все доступы ERW должны вызывать у нас подозрение и требуют анализа. 

### Установка плагинов
 https://github.com/x64dbg/snowman


## Практика

пересмотреть


