Вы используете устаревший браузер!

Страница может отображаться некорректно.

  • добавить в избранное
    Добавить в закладки

Невидимая броня от эксплойтов

Прочитали: 3144 Комментариев: 145 Рейтинг: 292

Чтобы нанести ущерб, вирусописателям мало создать вирус (троянца, adware и т. п.) – нужно еще произвести некие манипуляции на атакуемом компьютере.

Внедряемая злоумышленником программа совершенно не обязательно должна быть вредоносной. Скажем, для хищения денег у компании вполне достаточно поставить клавиатурного шпиона – легальную программу, предназначенную для фиксации действий определенных групп сотрудников, или программу удаленного управления, также легальную, обычно используемую системными администраторами. Есть легальные программы для блокирования экрана, шифрования (более того, это сервис операционной системы), майнинга (добычи) биткойнов и для многого другого.

Но что делать злоумышленнику, если в атакуемой системе запрещена установка нового ПО? Оказывается, выход есть и здесь. Злоумышленники могут использовать возвратно-ориентированное программирование (return oriented programming, ROP).

Суть данного метода состоит в том, что атакующему вообще не нужно внедрять вредоносное ПО – в атакуемой системе уже есть все необходимое. Злоумышленнику достаточно лишь знать о наличии определенных кусков кода в атакуемой программе или используемой ею библиотеке – и организовать последовательное выполнение этих кусков кода.

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

Этот тип атак известен очень давно, и сегодня операционные системы уже умеют от них защищаться. Например, можно запретить исполнение кода из областей программы, где заведомо могут находиться лишь данные.

Мало кто знает, но данное ограничение мешает работе антивирусов по причине наличия в них вирусных баз. Первые антивирусы были монолитными – в одном файле программа содержала и сам антивирус, и сигнатуры для обнаружения вирусов. Но это неудобно в связи с необходимостью обновления баз – их объем велик, и скачивать каждый раз целиком все базы – неудобно. Поэтому сейчас вирусные базы находятся в отдельных файлах и загружаются при старте антивируса в область данных программы. А поскольку базы содержат не только сигнатуры, но и исполняемый код, то для того, чтобы обходить ограничения операционных систем, приходится предпринимать определенные усилия.

Предотвращение выполнения кода, размещенного в области данных, не позволяет атаковать методом переполнения буфера. Но зачем размещать код, если он уже есть в программе или библиотеках системы? Атакующему нужно лишь подменить адреса возврата из определенных функций – и программа приобретет новый функционал.

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

Построение такой системы защиты возможно, но, увы, недоступно большинству пользователей, так как требует высокой квалификации.

#Dr.Web_ShellGuard #DDoS-атака #безопасность #взлом #терминология #уязвимость

Dr.Web рекомендует

Может ли защитить от подобной атаки антивирус – зачастую единственное средство защиты, которым располагает пользователь?

Атакующий модифицирует уже запущенную программу – области данных процесса в оперативной памяти. Поэтому файловый антивирус вполне может не заметить угрозы: ведь новых файлов в системе не появилось. Безопасность может обеспечить только контроль за изменением процессов изнутри. В Dr.Web за это отвечают технологии защиты от эксплойтов Dr.Web ShellGuard (в составе Dr.Web Security Space 11.0).

Получайте Dr.Web-ки за участие в проекте

Каждая активность = 1 Dr.Web-ка

Оцените выпуск

Сделайте репост

Поставьте «Нравится»

Чтобы получать награды надо войти на страницу выпуска через аккаунт на сайте «Доктор Веб» (или создать аккаунт). Аккаунт должен быть связан с вашим аккаунтом в социальной сети. Видео о связывании аккаунта.


Нам важно ваше мнение

10 Dr.Web-ок за комментарий в день выхода выпуска или 1 Dr.Web-ка в любой другой день. Комментарии публикуются автоматически и постмодерируются. Правила комментирования новостей «Доктор Веб».

Чтобы оставить комментарий, нужно зайти через свой аккаунт на сайте «Доктор Веб». Если аккаунта еще нет, его можно создать.

Комментарии пользователей


 
На страницу: