Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #48, НОЯБРЬ 2004 г.

Найти и уничтожить!

Крис Касперски aka мыщъх

Спецвыпуск: Хакер, номер #048, стр. 048-084-5


Не так давно была выпущена защита от эксплоитов для платформы Windows NT/2000/XP/2003, которая не тормозит систему, обладает мощным уровнем защиты, гибкой системой управления уровнями безопасности для различных приложений и хорошей совместимостью с другими программами - Anti-Cracker Shield (автор – Илья Рабинович). Внутри нее реализованы уникальные механизмы, противодействующие выполнению кода эксплоитов на атакуемых компьютерах.

Надежная защита стека от исполнения в нем кода, которая не приводит к катастрофическим потерям в производительности. Рандомизация стека и кучи (стартовые адреса данных - случайные величины), препятствующая дискредитации данных и передаче управления по фиксированным адресам, автоматическое перебазирование системных библиотек по случайным адресам при каждой перезагрузке. Уникальный механизм, позволяющий делать кучу исполняемой (необходимо для совместимости с большим количеством современного ПО, использующим кучу для исполнения своего кода), но не позволяющий исполнять в ней эксплоиты.

Уровней безопасности для отдельных приложений четыре: low, medium, high и ultra. Уровень low - практически полное отсутствие всякой защиты, поскольку и стек, и куча никак не защищаются. Этот уровень нужен приложениям, которые исполняют свой код в стеке. На уровнях medium и high стек полностью защищен от выполнения в нем кода, куча исполняема, но уникальная технология контроля не позволяет эксплоитам получить управление. На уровне ultra невозможно исполнять код как в стеке, так и в куче.

Существуют две версии программы: пользовательская и серверная. Пользовательская версия защищает все приложения по умолчанию на уровне high (разумный компромисс между уровнем защиты и совместимостью). Серверная версия защищает только те приложения, которые указаны пользователем на уровне ultra по умолчанию.

В случае атаки программа завершает атакуемый поток (не процесс!). То есть если у тебя стоит сервер HTTP/FTP, то грохнется только пользователь, который атаковал, а остальные пользователи будут работать, как будто ничего не случилось. Правда, атакованное приложение может повести себя совершенно неадекватным образом (зависит от конкретной реализации), и его придется перезагрузить. При этом если атакован системный процесс, то окошко с уведомлением о перезагрузке не выскочит, система будет поддерживаться в максимально работоспособном состоянии. Программа практически ничем не напоминает о своем существовании в системе, кроме серой иконки замка в трее. В случае атаки иконка становится красной, со звуковой сигнализацией.

Однако использование проги не дает стопроцентной гарантии защиты от эксплоитов. Например, не защищаются от исполнения глобальные буферы исполняемых модулей и динамических библиотек. Другими словами, использование Anti-Cracker Shield не избавляет от необходимости использования фаерволов и антивирусов, установки заплаток. Anti-Cracker Shield - это еще одно жизненно необходимое звено в цепи безопасности.

Назад на стр. 048-084-4  Содержание  Вперед на стр. 048-084-6