Настройка среды для изучения переполнения буфера

В настоящее время я читаю несколько книг по безопасности (моя страсть) относительно безопасного программирования, однако либо дистрибутивы, которые они предоставляют на диске, неисправны, либо их нет. Книги: хакерство Искусство эксплуатации 2nEd, серая шляпа хакерство 2nEd Проблема в том, что когда я пытаюсь следовать примерам, очевидно, что в более новых дистрибутивах реализована защита стека и другие функции безопасности, чтобы предотвратить такие ситуации, и я попытался вручную настроить среду Хакинг предоставил искусство эксплуатации, но у меня ничего не вышло. Также я пробовал DVL(Dam Vulnerable Linux), но он слишком раздут, я просто хочу минимальную среду, которую я могу иметь в небольшом разделе и выбрать из загрузчика ИЛИ в маленькой виртуальной коробке.

Поэтому мой вопрос заключается в следующем: как мне настроить среду (старое дистрибутивное ядро), в которой я могу следовать большинству этих примеров. Возможно, если кто-то скажет мне версию ядра и GCC DVL, я смогу получить большую часть настроек. себя.

3 ответа

Решение

Вам нужно пересобрать ядро ​​без защиты стека и кучи, включая неисполняемый стек. Затем вам нужно скомпилировать, используя флаги gcc, чтобы отключить защиту, одной из которых будет "-fno-stack-protector". Кроме того, поскольку вы скоро столкнетесь с этим, вы, вероятно, захотите статически скомпилировать свою программу, потому что это будет немного легче понять, когда вы будете отлаживать свою полезную нагрузку 0x41414141.

Также, в зависимости от вашего определения "раздувать", может быть проще всего скачать старый дистрибутив linux, redhat 5 или старый slackware и установить и использовать его с помощью стандартного набора инструментов.

Если у вас все еще есть доступный DVL, вы можете использовать команды:

$ uname -r
$ gcc --version

выяснить для себя.

Редактировать: согласно distrowatch.com ядро Linux - 2.6.20, а gcc - 3.4.6.

На сайте sevagas есть статья, которая связана с вашим вопросом: Как настроить среду тестирования переполнения буфера

Другие вопросы по тегам