Что не так с предварительно скомпилированными заголовками и ASLR?

Я читал его на нескольких сайтах, в которых предварительно скомпилированные заголовки и рандомизация расположения адресного пространства несовместимы. Что делает их несовместимыми? Что нужно сделать, чтобы это исправить?

Мой вопрос не зависит от ОС, я слышал, что это проблема в Linux с grsecurity и в новых версиях Windows. (И я не знаю, что еще имеет ASLR.)

1 ответ

Решение

Предварительно скомпилированные заголовки не являются несовместимыми с ASLR.

Конкретный метод, использованный для реализации предварительно скомпилированных заголовков, который использовался в более старых версиях компилятора Visual C++, был нарушен ASLR. В блоге группы разработчиков Visual C++ есть статья с подробным описанием проблемы и объяснением того, как она была устранена. Для Visual C++ 2008 с пакетом обновления 1 (SP1) доступно исправление, а проблема отсутствует в Visual C++ 2010.

Возможно, в Linux была похожая проблема, я действительно не знаю. Я не эксперт по Linux, безопасности Linux или GCC.

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