GEF (GDB Enhanced Features) — это расширение с открытым исходным кодом для GNU Debugger (GDB), предназначенное для упрощения и ускорения процесса отладки, анализа безопасности и разработки эксплойтов. Инструмент предоставляет набор дополнительных команд, улучшенное отображение состояния регистров, памяти и стека, а также автоматизирует многие рутинные задачи, связанные с обратной разработкой и эксплуатацией уязвимостей.
👉Возможности
- Цветное и структурированное отображение состояния регистров, стека, памяти и кода при каждой остановке
- Автоматический анализ (определение версий libc, загрузчиков, канареек, NX, PIE, ASLR, RELRO и других механизмов защиты)
- Упрощение поиска ROP-гаджетов, обхода ASLR, работы с паттернами циклического ввода
- Поддержка архитектур (x86, x86-64, ARM, AArch64, PowerPC, MIPS, SPARC, RISC-V)
⬇️Установка
sudo apt install gef
Проверка
gef -h
➡️Если у вас нет файла ./test, создайте его
#создание тестовой программы
cat > test.c << 'EOF'
#include <stdio.h>
int main() {
printf("Hello, GEF!\n");
return 0;
}
EOF
#компиляция
gcc -g -o test test.c
#запуск GDB
gdb ./test
⏺️Проверка механизмов защиты
(gef) checksec
Отображает статусы защиты: Canary, NX, PIE, RELRO, Fortify. Позволяет оценить сложность эксплуатации
⏺️Просмотр карты памяти процесса
(gef) vmmap
Показывает сегменты памяти (code, data, heap, stack, libc) с их правами доступа (r/w/x) и адресами
⏺️Установка точки останова на функцию main
(gef) break main
Останавливает выполнение программы при входе в функцию main для детального анализа
⏺️Запуск программы
(gef) run
Запускает программу до первой точки останова (main). GEF автоматически отображает состояние регистров, стека и кода
⏺️Просмотр текущих регистров
(gef) registers
Отображает значения всех регистров (rax, rbx, rcx, rdx, rsi, rdi, rsp, rbp, rip, eflags)
⏺️Просмотр стека
(gef) stack
Показывает содержимое стека (call stack) с адресами возврата и локальными переменными
⏺️Дополнительные полезные команды
#просмотр дизассемблированного кода текущей функции
(gef) disas
#просмотр GOT (Global Offset Table)
(gef) got
#выход из отладчика
gef➤ quit
⏺️Быстрый старт одной строкой
gdb -q ./test -ex "checksec" -ex "vmmap" -ex "break main" -ex "run" -ex "registers"
#GEF #GDB #ROP #ASLR #tool #pentest
🔗 Все наши каналы 🔁 Все наши чаты 🪧 Для связи с менеджером
