1999: Melissa
Едва ли программист из Нью-Джерси задумывался о том, чтобы собрать ботнет из миллионов машин и использовать его для рассылки спама. Врядли мог представить последствия создания своего, казалось бы, безобидного червя Melissa. Ведь даже распространение тот начинал не с инета - впервые он был обнаружен 26 марта в конференции alt.sex внутри Usenet - в то время еще популярной сети для общения и обмена файлами. К сообщению был приложен файл, содержащий пароли на 80 порнушных сайтов: позарившись на «клубничку», файлик с радостью открыли многие. А дальше пошло-поехало: червь тут же начал распространение, отправляя себя по 50 контрактам из записной книжки пользователя. Это был первый успешный почтовый червь, распространяемый через e-mail.
Вирус заражает файлы документов и шаблонов MS Word и рассылает свои копии в сообщениях электронной почты при помощи MS Outlook. Распространяется чрезвычайно быстро:
процедура рассылки зараженных писем отсылает большое количество вирусных копий по адресам из всех списков адресной книги MS Outlook. Для рассылки своих копий через электронную почту вирус использует возможность Visual Basic активизировать другие приложения MS Windows и использовать их процедуры. Вирус вызывает MS Outlook, считывает из базы адресов Outlook адреса электронной почты и посылает по этим адресам сообщение. Написав в сообщение текст аля «Вот документ, о котором ты меня спрашивал», червь приаттачивал к письму текущий открытый документ пользователя (естественно, заражая его). В результате, так вполне могли распространиться конфиденциальные файлы пользователя.
Стремительное распространение вируса серьезно нагрузило почтовые серверы - им пришлось обрабатывать на несколько порядков больше отправлений, чем обычно. Тысячи машин по всему миру не выдержали нагрузки — они же не железные, в конце концов, а полупроводниковые! — и вышли из строя. К 27 марта распространение вируса приняло характер эпидемии; 29 марта он проник уже на компьютеры всех стран мира, подключенных к Сети, в том числе и на российские.
Найденному силами ФБР Девиду Смиту грозили 10 лет тюрьмы, но в итоге он «легко отделался» – 20 месяцев заключения и штраф в размере $5000.
2000: Loveletter
В следующем году - новая почтовая эпидемия, в мае вызванная вирусом Love Letter (или Love Bug). Письма, содержащие незамысловатое ILOVEYOU в строке темы, посыпались на ничего не подозревающих пользователей градом. И все было бы замечательно, если бы к письму не была приложена небольшая программка на языке Visual Basic Script. Запускалась она, стоило только пользователю открыть вложенный файл Love-letter-for-you.txt.vbs:
The Subject: ILOVEYOU
Message body: kindly check the attached LOVELETTER coming from me.
Attached file name: LOVE-LETTER-FOR-YOU.TXT.vbs
На лицо отличный пример социальной инженерии и прием двойного расширения, – что помогло скрыть подлинную природу файла (по умолчанию Windows не показывает второе, настоящее, расширение файла). Ну а коль скоро пользователь файл запустил (а почему, собственно, нет? - тогда люди доверяли друг другу), можно делать свое дело. Полностью написанная на скриптовом языке (с использованием Windows Scripting Host), малварь честно рассылает копии тела по всем адресам из адресной книги почтовой программы MS Outlook, после чего приступает к деструктивной части, закачивая и устанавливая в системе троя. Путь до исполняемого файла просто прописывался как домашняя страница в параметрах Internet Explorer. Это обеспечивало его автоматическую загрузку, а запуск в системе гарантировал специально созданный ключ в реестре. Далее домашняя страница возвращалась на свое место - и ушастый пользователь даже не замечал изменений.
Судя по всему, автора сильно пекла проблема двойного расширения, поэтому зараженный компьютер на локальных и присоединенных сетевых дисках создавал файлы .vbs к уже существующим документам. Если в папке был файл rulez.mp3, то тут же создавался rulez.mp3.vbs с телом червя - и так повсюду. Другой способ распространения, который также давал плоды - через скрипты mIRC, т.е. самую распространенную программу для бешено популярных тогда IRC-чатов.
Пользователям автоматически передавалась HTML-ка, предлагающая закачать некий ActiveX-элемент. Что находилось внутри, объяснять не надо, а проверить, что прислал им хороший приятель, соглашались многие.
Первый случай активности вируса был зафиксирован 5 мая 2000 г., а уже через сутки им были частично или полностью поражены сети ЦРУ, NASA, Министерства энергетики, конгресса США, Пентагона, британской палаты общин и еще множества организаций. Ущерб, нанесенный червем в первые дни активности, был оценен в $9 млрд. Офигительно? В любом случае, автора скрипта так не нашли, несмотря на оставленный им автограф:
barok -loveletter(vbe) < i hate go to school >
by: spyder / [email protected] / @GRAMMERSoft Group / Manila,Philippines
2001: Code Red
Из-за этого червя сайту Белого дома США пришлось поменять IP
Брешь в ISS позволяла легко выполнять на сервере удаленный код. Разработчики Code Red не сильно заморачивались и приделали эксплоит к простейшему сканнеру, который работал «в лоб». Специально сформированные запросы тупо отправлялись на все сгенерированные адреса подряд, в надежде, что где-то окажется вожделенный IIS. В итоге, оборудование попросту стало задыхаться от огромного количества мусорного трафика, который генерировали ноды по всему мира. В логах Apache, на который, естественно, уязвимость IIS не распространялась, можно было обнаружить подобные запросы:
GET /default.ida?NNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNN
%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801
%u9090%u6858%ucbd3%u7801%u9090%u9090%u8190%u00c3
%u0003%u8b00%u531b%u53ff%u0078%u0000%u00=a HTTP/1.0
В процессе работы Code Red не использовал никаких временных или постоянных файлов. Червь уникален:
он существует либо в системной памяти зараженных компьютеров, либо в виде TCP/IP-пакета при пересылке на удаленные машины. Но наличие заразы на сервере обнаруживалось без всякого антивируса. Поскольку в памяти компьютера может существовать сразу сотни активных процессов червя, то тормоза и лаги были неизбежны. Сам червь помимо распространения заменял содержимое страниц на зараженных серверах на сообщение: «HELLO! Welcome to http://www.worm.com! Hacked By Chinese!». А между 20 и 28 числами месяца тело червя должно было начать DoS-атаку на несколько IP-адресов, один из которых принадлежал американскому Белому дому.
В августе этого же года начал распространяться новый червь Code Red II, код которого, несмотря на схожее название, был создан заново и предоставлял владельцам полный контроль над зараженными машинами.
2002: Nimda
Запустившегося в сентябре 2001 года червя ну никак не могли не связать с деятельностью Алькайды, заодно рассказывая о мощных технологиях, применяемых в новой заразе. Но если присказки о терроризме были выдумкой журналистов, то очевидная продвинутость нового червя была на лицо. Фишка Nimda заключалась сразу в нескольких каналах распространения, благодаря которым ему удалось в считанные минуты распространиться по Сети. Разберемся по порядку.
- Наибольший пробив удалось достичь за счет эксплоита, который использовал уязвимость в Internet Explore'е, позволяющую автоматически запускать приаттаченный к письму файл. Прикрепленный к письму README.EXE (написаный, кстати, на С++) беспрепятственно запускался на машине и комфортно начинал свое распространение. Причем, для поиска новых адресатов вирус кропотливо сканировал документы на жестком диске, а также запрашивал с помощью специальной MAPI-функции список адресатов с сервера Microsoft Exchange.
- Другой способ распространения - расшаренные ресурсы в локалке. После сканирования всех доступных шар Nimda создавал там файлы с почтовыми сообщениями, имеющие расширение .EML и .NWS. Во время нажатия они открываются в почтовой программе, что автоматически влекло за собой заражение, как если бы письмо просто пришло по почте.
- Про дырявый IIS, уязвимость в котором уже использовали другие черви, создатели забыть не могли. И поэтому довольно эффективно пробивали майкросовский веб-демон с помощью уязвимости directory traversal. В случае заражения веб-сервера на нем случайным образом выбирались странички, откуда начиналась загрузка вируса посетителям.
- И еще интересный ход - Nimda не стеснялся и активно использовал бекдоры, оставленные в системах червями Code Red II и sadmind/IIS.
- Добавим, что Nimda имел опасный побочный эффект, который мог допустить утечку конфиденциальной информации с зараженных компьютеров. Червь добавлял пользователя под именем «Guest» в группу пользователей «Администраторы». Таким образом, обычные гости получали полный доступ к ресурсам компьютера. Более того, все локальные диски открывались через шары для полного доступа.
Concept Virus(CV) V.5, Copyright(C)2001 R.P.China
2003: Slammer
Незадачливые жители стран Северной Америки были сильно удивлены, когда 25 января многие банкоматы попросту перестали работать. Во всем мире со сбоями работали службы по заказу и резервированию авиабилетов, многие сервисы вообще не были доступны. Но набивший оскомину финансовый кризис тут вовсе не причем - это лишь всплеск активности червя Slammer. Активность впервые замечена в 12:30 по среднеатлантическому времени, а к 12:33 количество зараженных машин удваивалось каждые 8.5 секунд.
В основе червя лежала уязвимость в Microsoft SQL Server, концепция которой была представлена David Litchfield на конференции BlackHat. Отправляя на 1434 скомпрометированный пакет, вирус мог выполнить на удаленной машине произвольный код и, в свою очередь, продолжить распространение. По различным отчетам сообщается, что вирусу удалось заразить 75.000 машин за каких-то десять минут, – но как? Большую роль сыграло, что тело вируса составляли всего 376 байт, которые помещались в один единственный UDP-пакет. Slammer не использовал тормозной TCP, применяемый для просмотра сайтов, передачи файлов и т.д., а потом требующий постоянных квитков-подтверждений. Уязвимый сервис, позволяющий приложениям автоматически обращаться к нужной базе данных, как раз принимал запросы по UDP - а значит, можно было рассылать тело вируса со скоростью несколько десятков запросов в секунду!
Несмотря на то, что патч для уязвимости был выпущен за 6 месяцев до эпидемии, а вирус никак не проявлял себя на зараженной машине, последствия от Slammer'а были колоссальными. Роутеры и маршрутизаторы на магистралях были настолько перегружены трафиком, что лавиноблазно выбивали друг у друга, в конце концов отключив некоторые бэкбоны. Южная Корея была полностью отрублена от инета и находилась в таком состоянии почти 24 часа. Только представь: никакого интернета и мобильной связи с внешним миром для 27 миллионов человек. Забавно, что многие жертвы даже не знали, что на их машине установлена такая специфическая вещь как SQL.