Загальні захисти та обхідні шляхи для бінарного експлуатації

Reading time: 2 minutes

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримайте HackTricks

Увімкнення файлів ядра

Файли ядра - це тип файлу, який генерується операційною системою, коли процес зазнає збою. Ці файли захоплюють образ пам'яті зламаного процесу на момент його завершення, включаючи пам'ять процесу, регістри та стан лічильника програми, серед інших деталей. Цей знімок може бути надзвичайно цінним для налагодження та розуміння причин збою.

Увімкнення генерації дампів ядра

За замовчуванням багато систем обмежують розмір файлів ядра до 0 (тобто, вони не генерують файли ядра), щоб заощадити місце на диску. Щоб увімкнути генерацію файлів ядра, ви можете використовувати команду ulimit (в bash або подібних оболонках) або налаштувати системні параметри.

  • Використання ulimit: Команда ulimit -c unlimited дозволяє поточній сесії оболонки створювати файли ядра необмеженого розміру. Це корисно для сесій налагодження, але не зберігається після перезавантаження або нових сесій.
bash
ulimit -c unlimited
  • Постійна конфігурація: Для більш постійного рішення ви можете відредагувати файл /etc/security/limits.conf, щоб додати рядок на кшталт * soft core unlimited, що дозволяє всім користувачам генерувати файли ядра необмеженого розміру без необхідності вручну встановлювати ulimit у своїх сесіях.
markdown
- soft core unlimited

Аналіз файлів ядра за допомогою GDB

Щоб проаналізувати файл ядра, ви можете використовувати інструменти налагодження, такі як GDB (GNU Debugger). Припустимо, у вас є виконуваний файл, який створив дамп ядра, і файл ядра називається core_file, ви можете розпочати аналіз з:

bash
gdb /path/to/executable /path/to/core_file

Ця команда завантажує виконуваний файл та файл ядра в GDB, що дозволяє вам перевірити стан програми в момент збою. Ви можете використовувати команди GDB для дослідження стеку, перевірки змінних та розуміння причини збою.

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримайте HackTricks