Сетевые эксплойты – от проблемы к решению
Краткий обзор
Данная статья обсуждает проблемы сетевых эксплойтов и опасности, которые они представляют. Кроме того, подробно рассматриваются шаги, которые необходимо предпринять пользователю, чтобы минимизировать вероятность быть подвергнутым риску, представляемому эксплойтами.
Введение
Распространение вредоносного ПО сегодня является одной из наиболее важных проблем при использовании Интернета. В отличие от прежних “назойливых” вирусов, современные вредоносные программы бесшумны и незаметны. Вот пример, знакомый многим пользователям пример.
После работы в сети на новом ноутбуке или настольном компьютере в течение пары месяцев – или старом ПК со свежеустановленной системой Windows, вы замечаете, что он начинает вести себя странно – отображает всплывающие окна, сообщает об ошибках Windows и других программ, испытывает проблемы при загрузке и производит массу других странных действий, не проявлявшихся ранее. К сожалению, перед тем как начать работать, вы не вооружились средствами безопасности, но вы пытаетесь компенсировать потери, установив антивирус. Неудивительно, что первая проверка обнаруживает наличие в памяти и на вашем жестком диске множество угроз. Вы пытаетесь выяснить, что же такое вы делали, какие сайты посещали, что подцепили всю эту гадость – загружали ли вы (или другие члены вашей семьи или коллеги) исполняемые файлы с подозрительных сайтов или из файлообменных сетей, отвечали ли на спам или фишинговые сообщения? Между тем, к этому могло привести все, что угодно, и кто угодно мог явиться причиной. Более актуальная проблема – как предотвратить такое скрытое заражение в будущем.
Введение в сетевые эксплойты
Универсального определения не существует. В сущности, эксплойт – это любая программа, разработаная с целью выявления или использования уязвимостей в другом ПО. Сетевые эксплойты пользуются дырами в браузере, его подключаемых модулях и других сетевых приложениях, включая Word, Acrobat и другие ‘стандартные’ программы.
Веб-эксплойтами можно назвать множество различных вещей – скрытую загрузку и установку вредоносного ПО, незаметное или автоматическое заражение – но все они означают одно и то же. Ваш компьютер может быть заражен когда вы просто работаете в сети, и для этого необязательно предпринимать какие-либо действия по загрузке файлов. Сетевые эксплойты способствуют тихой установке вредоносного ПО на ваш компьютер без вашего разрешения и могут являться причиной кражи данных, «зомбирования» вашего компьютера, сбоев в его работе и других серьезных проблем.
Жизненный цикл уязвимости
Приведенная диаграмма иллюстрирует жизненный цикл программной уязвимости и эксплойта, использующего ее1.
Приложение публично выпускается.
Безнравственный исследователь или хакер обнаруживает уязвимость в приложении, но не уведомляет о ней разработчика. Вместо этого, он предоставляет информацию вирусописателям за деньги или иное вознаграждение. Авторы вредоносного ПО создают вредоносный код, использующий эту уязвимость. Эти угрозы неизвестны вендорам средств безопасности, поэтому их невозможно обнаружить; такие угрозы обычно называются «угрозами нулевого дня».
Разработчик уязвимого ПО узнает о бреши через публичные каналы. Это может произойти множеством способов, обычно в результате изысканий хакеров, просочившихся с подпольных форумов, через контакты пользователей или партнеров или с помощью параллельных исследований, проводимых добропорядочными пользователями.
Код, написанный для демонстрации уязвимости, не несет опасности, а служит доказательством актуальности исследований, а также того, что без установки патча уязвимость может быть использована настоящим вредоносным ПО. Подобный код используется в основном для убеждения разработчика в возможности использования уязвимости.
После того, как разработчик оценивает ситуацию и делает вывод о том, что необходимо обновление, он начинает разрабатывать исправление.
Разработчик создает патч, закрывающий уязвимость. Обновление безопасности распространяется через стандартную систему обновлений приложения.
Пользователь устанавливает патч и таким образом защищает приложение от использования уязвимости.
Где-то между пунктами 2 и 7 появляется эксплойт, начинающий заражать уязвимых пользователей. Этот период называется «окном возможности», когда хакер может завладеть системой пользователя без его на то согласия, воспользовавшись обнаруженной незакрытой учязвимостью.
--------------------------------------------------------------------------------
1Когда исследователь безопасности сообщает разработчику об уязвимости, не публикуя при этом где-либо информацию о ней, вероятность использования этой уязвимости значительно уменьшается. После того, как разработчик исправит уязвимость, подробности бреши могут быть опубликованы без опасения подвергнуть пользователей риску, конечно, если пользователи установили обновление. Исследование показывает, что пользователи, вовремя не установившие обновление, подвергаются гораздо большему риску заражения.
Как работают эксплойты
Как только хакеры узнают о существовании уязвимости, они начинают писать вредоносное ПО, которое ее использует. Такое ПО может потребовать коллективных усилий нескольких групп хакеров или может быть написано одним, крайне искусным хакером; последний может также являться первооткрывателем уязвимости.
Иногда в подпольном мире выпускаются и продаются целые наборы инструментов для использования уязвимостей. Они стоят около 500-1000 долларов США и поддерживаются недорогими обновлениями, высылаемыми покупателям при добавлении в пакет новых эксплойтов, использующих новые уязвимости (подобно обновлению обычного ПО его разработчиком). Известными примерами таких пакетов являются российские программы WebAttacker и MPack. Они содержат набор эксплойтов, использующих известные уязвимости в сторонних модулях и других компонентах браузера (от уязвимости анимированного курсора Microsoft и переполнения буфера Apple QuickTime до многочисленных уязвимостей в ActiveX, JavaScript и других расширениях IE).
После того, как хакеры создали эксплойт, им необходимо спрятать его таким образом, чтобы пользователи, намеренно или случайно посетившие конкретный сайт, автоматически заражались, ничего не подозревая. Примеры компрометации сайтов многочисленны, но обычно хакеры используют один или несколько из следующих подходов:
С помощью спама привлекают внимание пользователя к сайту, поддерживаемому хакерами. Чтобы заставить пользователя посетить сайт необходимо использовать изощренную подмену DNS-имени, атаки, использующие социальную инженерию и прочие методы.
Создают несколько заражающих сайтов, имена которых напоминают легитимные, например, регистрируя веб-адреса с незначительными отличиями в написании (microsooft.com, dowload.com)
Компрометируют веб-сайты, принадлежащие легитимным компаниям и внедряют вредоносный код до того, как владелец сайта заблокирует вторжение. Подобное недавно произошло с сайтом Bank of India.
Внедряют ссылки-ловушки на файлы, расположенные на сайтах социальных сетей, таких как ВКонтакте.ру, которые указывают на внешний код, использующий уязвимости в сторонних модулях, необходимых для выполнения этого кода.
Как заработать на эксплойтах – бизнес-модель
Эксплойты могут приносить своим создателям большой доход. По оценкам некоторых источников, по прибыли киберпруступники превосходят торговцев наркотиками и большая доля этих денег исходит от продажи эксплойтов. Эксплойты могут обогащать своих создателей несколькими способами:
Заражать компьютеры пользователей всеми типами вредоносного ПО, которые могут приносить доход от шантажа, продажи ложных anti-spyware продуктов или продажи персональной информации, полученной с помощью кейлоггеров и т.п.
Продавать эксплойты другим преступникам.
Через вымогательство путем шантажа компаний-разработчиков ПО.
Борьба с угрозами эксплойтов
Существует ряд простых шагов, которые вы можете предпринять для обеспечения защиты вашей системы от эксплойтов:
Отслеживайте и устанавливайте обновления для вашей системы и всегда используйте последнюю версию браузера.
Отключайте ненужную функциональность, такую как ActiveX, или разрешайте ее только на знакомых и доверенных сайтах.
Не посещайте неизвестные или потенциально небезопасные сайты.
Используйте программы, инспектирующие содержимое веб-сайтов в реальном времени до того, как разрешить пользователю работать с ним. Такие программы как Link Scanner Pro проверяют HTML-код целевого сайта, гарантируя отсутствие внедренных скрытых угроз. Расширение Finjan SecureBrowsing оценивает код и репутацию сайта прежде чем разрешить доступ к нему.
Используйте брандмауэр, обеспечивающий защиту от новейших угроз с помощью блокировки несанкционированной сетевой и локальной активности программ. Outpost Firewall Pro 2008 в составе Outpost Security Suite Pro 2008 предоставляет возможность создания и настройки базы вредоносных сайтов, доступ к которым будет блокироваться.
Заключение
Эксплойты представляют реальную измеримую опасность для вашего компьютера, но если вы вооружены знаниями, здравым смыслом и нужным ПО, вы можете быть уверены, что они не коснутся вашей цифровой жизни.
P.S.: Вы - пользователь Outpost? Расскажите о своем опыте в рамках конкурса реальных историй «Как меня защитил Outpost» и получите великолепный смартфон Glofiish X500+ и пожизненную лицензию на Outpost 2008!