Информационная безопасность

       

ProPolice


ProPolice — программа, аналогичная StackGuard, но обладающая несколькими дополнительными возможностями.

  • Перенос "осведомителя". ProPolice размещает специальный фрагмент между записью активации и локальными переменными, а не вставляет ее внутрь записи активации. Эта возможность будет реализована и в версии StackGuard 3.
  • Сортировка переменных. ProPolice сортирует переменные в каждой функции, размещая все символьные строки над другими переменными в структуре памяти. Цель заключается в том, чтобы предотвратить переполнение буфера из-за искажения смежных переменных. Эффективность такого решения ограничена, поскольку ProPolice не может перемещать строки, размещенные внутри структур, и хакеры по-прежнему могут изменить смежные строки.

    StackGuard добавляет свои инструкции после этапа оптимизации, чтобы «осведомители» не были удалены или искажены. ProPolice помещает свои проверки на абстрактный уровень синтаксического дерева GCC, рискуя тем, что компилятор может помешать выполнению проверок, поместив их туда, где они будут неэффективными.



    Содержание раздела