Разработчики OpenBSD подготовили для libc механизм защиты anti-ROP
В списке рассылки разработчиков OpenBSD опубликован набор патчей с реализацией новой техники защиты anti-ROP, основанной на случайном перестроении порядка расположения экспортируемых символов в системной библиотеке libc.so, выполняемом при каждой загрузке системы. Перестроение приводит к увеличению времени загрузки примерно на секунду.
Метод заключается в сохранении всех образующих libc файлов .so в отдельном архиве с построением нового файла libc.so при каждой загрузке, каждый раз комбинируя составные части libc.so в случайном порядке. Предложенная техника затрудняет создание ROP-эксплоитов, так как составляющие эксплоит «гаджеты» меняют свои смещения при каждой загрузке и затруднено их согласование с содержимым регистров, используемых для передачи аргументов, что требует создания индивидуального эксплоита для текущего состояния системы.
© OpenNet