17.04.2005

Уроки, извлеченные из заражений вирусами

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

автор Jason Gordon

0. Введение

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

Вирусы, включая сетевых червей, троянских коней и др., настолько же хорошо, а иногда и лучше, представляют картину сети в рабочей обстановке, и администратор может кое-чему научиться при анализе компромисса системы. Эта статья не ставит целью заражение администраторами своих систем, вместо этого она покажет, что может раскрыть о состоянии сети непреднамеренное заражение. В то время как компании типа Symantec сообщают о том, что 40% лидирующих Интернет компаний были заражены вирусами в течение шести месяцев, было бы полезно узнать, какие уроки можно извлечь из этих заражений. В особенности после заражения важно оценить техническую сторону периметра безопасности (включая сетевые фильтры, ACL и т.п.) и нетехническую (время реагирования, план действий и т.д.).

Многие подобные статьи, обсуждающие вирусные эпидемии, фокусируются на одной проблеме: компьютеры должны быть обновлены. За последние несколько лет эта проблема расширилась до: компьютеры должны быть обновлены вовремя и быстро. Конечно, это важная часть сетевой безопасности, но она не затрагивает другую важную информацию, которая может быть получена из последствий заражения.

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

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

1. Вирусы переходят допустимые границы

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

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

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

2. План урока

Каждый вид проникновения, перечисленные ниже, дает уникальный взгляд на уязвимости в сети.

2.1 Сетевые черви

Черви типа Sasser создаются для эксплуатирования какой-либо одной уязвимости. Если сканер безопасности показал, что 98% систем в локальной сети имеют обновление 835732 (MS04-011), но 15% заражены Sasser’ом, значит что-то не так. Либо сканер неправильно обработал отклики, либо кто-то в вашей организации переустановил системы, откатив обновления. Следует отметить, что черви используют настоящие эксплойты при сканировании сетей, в отличие от безопасных проверок сканеров уязвимостей, и соответственно количество неправильных откликов на порядок меньше.

Сетевые черви также дают возможность взглянуть, как определенные сегменты сети реагируют на разный вид трафика. К примеру, используя червь Sasser, можно сделать вывод, что системы пропускают трафик на 445 порт, если они были поражены червем. Если это шокирует администратора, то следует произвести пересмотр правил сетевого фильтра, ACL или пользовательских брандмауэров. Открытый порт может быть результатом настройки/установки какого-нибудь приложения, которое не было учтено администратором.

Кроме того, сетевые черви часто проводят стресс тесты в качестве одной из своих функций распространения. Запуск Sasser’ом от 128 до 1024 потоков в целях распространения более чем достаточно для подобного теста.

2.2 Массовые рассылки

Заражение через массовые рассылки даст администратору много полезной информации о структуре почтовой системы. Во-первых, заражение укажет путь к исполняемым файлам, проникшим в сеть. Это может послужить стимулом к усилению политики безопасности и запрещению передачи EXE, VBS и ZIP файловых расширений. Может, почта проникла через клиенты webmail, и следует запретить доступ к общедоступным сервисам типа Yahoo!, Hotmail и Gmail на уровне сетевых фильтров.

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

2.3 Паразитические вирусы

Само понятие вируса подразумевает заражение файлов добавлением своего кода в доверенные исполняемые файлы. Такая ситуация может быть результатом некачественного скачивания/обмена фалами со стороны пользователей. Если вирус проник через флоппи-диск, скачиванием из сети или другим методом, заражение указывает на неспособность системы безопасности справиться с подобной угрозой. Для жизненно-важных систем может понадобиться IDS типа Tripwire. Опять же, может оказаться, что познания пользователей в этой области низки. И наконец, следует обратить внимание на настройки антивирусного ПО.

2.4 Черви, распространяющиеся через общедоступные документы

Черви, распространяющиеся через совместно используемые документы указывают на плохую внутри-сетевую безопасность. Если это червь типа Lovegate, записывающий себя во все видимые общедоступные каталоги, или Nebiwo (Deborm), распространяющегося через административные каталоги, это указывает, что есть как минимум один незащищенный компьютер в сети. Почти всегда оказывается, что есть каталоги без пароля или с легко подбираемым паролем. Если есть системы, не имеющие администраторского пароля, черви легко их найдут.

2.5 Троянские кони

Как и вирусы, заражающие исполняемые файлы, заражения троянскими конями указывают на слабости в пользовательской безопасности. Часто у пользователей существуют проблемы с посещением определенных сайтов, скачиванием/чтением программ/скриптов или медиа-файлами, внесенными в сеть.

Подобно «черному входу», троянские кони позволяют системе общаться с удаленным управляющим. Когда Agobot заражает сегмент сети и начинает сканировать/заражать другие системы, то появляется указание на существование туннеля, через который передаются команды и данные. На этом этапе следует анализировать фильтры пакетов и портов.

3. Извлеченные уроки

В каждом из вышеприведенных примеров есть одна техническая и нетехническая проблема, которая требует внимания. Каждая проблема требует решения. Решение нетехнических проблем техническими методами будет головной болью для любого администратора. Профессионалы знают, что существует немного методов защиты, которые пользователь может осуществить без обучения. Также у пользователя или атакующего будет меньше проблем обойти плохо настроенную систему безопасности.

Обратившись к первому примеру, заражению Sasser’ом, можно выделить нетехнические проблемы. В этом случае, если администраторы переустановят клиентские системы, без установки нужных обновлений, результаты сканирования потеряют силу. Часто это решается с помощью политики безопасности для всей сети.

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

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

Если червь MyDoom поразил вашу сеть, то можно сделать заключение, что почтовые серверы не заблокировали сообщения с прикрепленными EXE, COM, BAT, CMD, PIF, SCR или ZIP файлами. Если у вашей организации есть необходимость в передаче подобных файлов, то следует создать дополнительный уровень безопасности, например обучение пользователей. Если такое обучение по каким-либо причинам невозможно, то сетевое/пользовательское антивирусное ПО должно быть соответственно настроено.

4. Механизмы обнаружения и оповещения

Если сетевые черви поражают вашу сеть несколько раз в году, необходимо установить улучшенную систему обнаружения. В больших организациях с тысячами клиентов сложно держать антивирусные базы обновленными и работающими, в частности большое количество мобильных пользователей. Очень важно иметь еще одну линию антивирусной защиты перед пользователями, и большие организации стремятся иметь дополнительное антивирусное ПО от второго производителя на входе в сеть и/или IDS с опознанием сетевых червей.

Многие специалисты обсуждали пользу IDS в обнаружении вирусной активности. Что бы ни говорили специалисты, установленная IDS всегда улучшит обнаружение сетевых червей. Хотя это не лежит в основе подобных инструментов, многие IDS позволяют быстро и с возможностью настройки добавить подписи известных вирусов. По своей натуре IDS находится в хорошей позиции для обнаружения червей, проверяя каждый пакет, проходящий по сети. Также IDS может увидеть червя, распространяющегося с компьютера с плохо настроенным антивирусным ПО, что не дано любому антивирусу.

Подписи вирусов пишутся и распространяются на сайтах типа Bleeding Snort. Один момент, который администраторы узнали от вирусов, это то, что для распространения червю нужно много разведывательной информации. Blaster и Sasser не стремились к невидимости, открывая до 1024 потоков при сканировании уязвимых систем. Их можно было легко обнаружить из-за их активности. Массовые «рассылщики» должны посылать большое количество сообщений для поражения других систем. Активность на 25 TCP порту должно обратить внимание администратора до того, как дело зайдет слишком далеко. Вирусы, распространяющиеся через общедоступные документы должны иметь более специализированные подписи, например вариант самого червя для сравнения. Однако IDS может указать на большое количество неправильных входов на SMB-ресурсы.

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

5. Заключение

Можно сделать вывод, что заражение вирусом даст возможность исследовать состояние сетевой безопасности. Также это позволит доказать вашему руководству необходимость дополнительного финансирования для предотвращения дальнейших поражений.

или введите имя

CAPTCHA