Как развивались компьютерные вирусы

Компьютерные вирусы быстро эволюционируют, меняя свои стратегии и совершенствуясь в острой конкуренции с технологиями безопасности. Рассказать драматичную историю эволюции зловредных программ "КШ" помог Виталий Трифонов, заместитель руководителя лаборатории компьютерной криминалистики Group-IB в Сингапуре

Скорая несется из Дюссельдорфа в соседний Вупперталь. Ночь. Пожилой пациентке в критическом состоянии нужна срочная помощь. Врачи приступят к операции, но будет поздно - женщина умрет.

И дело не в том, что в Университетской клинике Дюссельдорфа не оказалось нужного оборудования. Просто накануне хакеры зашифровали доступ к 30 серверам, и крупнейшая городская больница оказалась парализована на две недели: операции перенесли, приемы отменили, сюда перестали возить пациентов.

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

Мог ли представить себе такое математик Джон фон Нейман, описавший в 1949 году вирусные программы? Допускал ли такую возможность информатик Фред Коэн, который первым применил понятие "вирус" к коду, а в 1983 году разработал саморазмножающуюся программу, потратив на ее отладку восемь часов?

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

1970-1989: мозг-прародитель и первые компьютерные эпидемии

Прародитель интернета - сеть ARPANET - объединила в 1969 году четыре американских университета. А в 1971-м на свет появился предшественник будущих зловредов, способный ползать по Сети.

Боб Томас, сотрудник компании Bolt Beranek and Newman, работавший над операционной системой, которая отвечала за удаленное исполнение программ, создал Creeper (по-английски - вьющееся растение или пресмыкающееся), чтобы выяснить, возможна ли в принципе самовоспроизводящаяся программа. Creeper распространялся через модем, сохранял свою копию на зараженном компьютере и пытался удалить себя с предыдущего.

Малыш был безобидным, зубы еще не прорезались, и вредить он никому не собирался - да особо и некому было.

Первый вирус

Но в начале 1980-х наладили выпуск персональных машин, и у потенциальных вредителей стала появляться "кормовая база". А в 1986 году появился Brain - первый широко распространившийся вирус. Именно он легендарный прародитель всех сегодняшних вредоносных программ.

Его создатели всего лишь хотели наказать воров. Братья-программисты из Пакистана Амжат и Базит Фарук Алви разрабатывали программное обеспечение, но незащищенная Сеть позволяла конкурентам воровать их наработки. Братьям это не нравилось, и они написали Brain.

Программа распространялась через дискету. Вирус никак не мешал работать с устройством, но если кто-то решался похитить информацию, то Brain заражал операционную систему злоумышленника. К 1987 году он вышел за пределы Пакистана и заразил 18 тысяч компьютеров в США.

Первый червь

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

Вскоре после первой компьютерной эпидемии, в 1989-м, родился и первый червь. В отличие от вируса, это всегда отдельный файл. Ему не нужно заражать другие файлы. А вот наплодить свои копии - это пожалуйста. И если обнаружить его проще: червь не прячется в структуре файлов, то по скорости распространения он куда круче вируса.

Студент Корнеллского университета Роберт Моррис допустил ошибку стоимостью 96 миллионов долларов. Его детище стало первым зловредом, который нанес реальный финансовый ущерб.

Червь Морриса был программой, которая собирала информацию о пользователях ARPANET. Зловредом его сделала ошибка в коде: программа стала рассылать свои копии по другим компьютерам сети. Заразились примерно 9000 машин, в том числе компьютеры Исследовательского центра NASA. Все они были парализованы в течение пяти суток.

Первый троян

Ну а в декабре все того же 1989 года случилась первая эпидемия трояна Aids Information Diskette (дискета с информацией о СПИДе). Подобно ахейцам из гомеровской "Илиады", которые проникли за стены Трои, спрятавшись в коне, троянская программа маскируется под безобидные файлы. В данном случае "троянский конь" был идеальный: никто не ожидал подвоха от дискеты с информацией о страшном заболевании, которое недавно обрушилось на человечество.

Автор AIDS использовал для распространения настоящую почту: конверт, марки, почтальона. Получив доступ к адресам подписчиков журнала PC Business World и участников конференции ВОЗ по вопросам СПИДа, он разослал 20 тысяч дискет с вирусом.

Троян внедрялся после запуска, создавая свои скрытые файлы и модифицируя системные. Через какое-то время все файлы на жестком диске становились недоступными - кроме одного, в котором автор заразы Джозеф Попп предлагал прислать ему деньги.

Так на свет появились три основных типа зловредов: вирус, червь и троян.

1990-1999: офисные и почтовые вредители

Зловреды эволюционировали вместе с мирными программами. Так, в 90-е появились макровирусы - используя макроязыки*, они легко перемещались из одного файла в другой. Чаще всего они "жили" в MS Word. После открытия зараженного файла зловреды начинали инфицировать все новые объекты. Впрочем, не только Word распространял заразу. В 1996-м макровирус Laroux повредил файлы MS Excel на компьютерах нефтекомпаний Аляски и Южной Африки.

*Макроязыки - программы, позволяющие использовать не отдельные команды, а целые куски кода из нескольких команд (макросы), создавать и определять макросы и переводить их в конечный код.

К концу десятилетия зловреды научились выжидать. Они могли долго ничего не делать, оставаясь незаметными для антивирусных программ. А потом пробуждались от "спячки".

Так, написанный в июне 1998 года Win95.CIH, больше известный как "Чернобыль", был активирован лишь 26 апреля 1999-го - в день 13-й годовщины аварии на ЧАЭС. Пострадало полмиллиона компьютеров. "Чернобыль" оказался настоящим хищником: он портил данные на жестких дисках и в микросхемах BIOS на материнской плате.

А завершились девяностые появлением вируса нового типа - Melissa. Зараза научилась перемещаться по электронной почте в прикрепленном файле. Пользователь открывал его, и вирус рассылал сам себя первым 50 контактам адресной книги Microsoft Outlook.

Инфицированному компьютеру Melissa не вредила. Но из-за огромного потока новых писем корпоративные сервисы выходили из строя. Ущерб составил 80 миллионов долларов.

2000-2009: гонка вооружений и антиядерная атака

Новые атаки и методы распространения

Третье тысячелетие началось с признания в любви. Оказалось, ее не хватало как минимум трем миллионам пользователей по всему миру. По крайней мере они без раздумий ринулись смотреть вложенный в письмо файл LOVE-LETTER-FOR-YOU.txt.vbs.

Почтовый червь ILOVEYOU стал самым разрушительным зловредом в мире, за что попал в Книгу рекордов Гиннесса. В отличие от макровирусов, эта программка распространялась не как зараженный вордовский документ, но как VBS*-файл. Он стирал файлы на жестком диске, поверх записывал собственные копии и через Outlook Express распространялся дальше. Следующим пользователям письма приходили со знакомых адресов, они открывали их, а заодно и дорогу червю. Нанесенный ущерб - 10-15 миллиардов долларов.

*VBS - расширение файлов-программ, написанных на языке Microsoft Visual Basic Script. Такие файлы могут запускаться в среде Microsoft.

Безопасники vs хакеры

Технологии защиты в эти годы были сравнительно простые. Хакеры писали новую вредоносную программу - она попадала в антивирусную лабораторию, где реверс-инженеры занимались обратным программированием, обновляя антивирусные базы.

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

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

Но антивирусные разработки тоже не стояли на месте. У каждого файла есть точка входа - место старта исполнения программы. И один из путей внедрения вируса как раз связан с изменением точки входа. Однако антивирусы научились, еще даже не обнаружив врага, уже в точке входа видеть подозрительный код и определять файл как опасный.

Червивая политика

Что не удалось полиморфу, сделал червь по имени Stuxnet. 17 июня 2010 года стало черным днем для информационной безопасности: зловред смог физически разрушить инфраструктуру.

Stuxnet был разработан разведками Израиля и США для противодействия иранской ядерной программе. Будучи запущенным, этот червь воздействовал на частоту, с которой раскручивались центрифуги для обогащения урана, а заодно подделывал данные об их вращении - приборы показывали, что все в порядке. Ну а чтобы добраться до станции обогащения, хакеры использовали уязвимости USB-устройств. Червь прыгал с флешки на флешку и ждал, пока с помощью сотрудников не попадет на рабочую станцию, где сможет начать действовать. В итоге было выведено из строя около тысячи центрифуг и сорваны сроки запуска Бушерской АЭС.

2010-2014: зловредные сети

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

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

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

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

2015-2020: самые продвинутые и опасные

APT-атаки

Сотрудница отдела кадров крупного банка включила компьютер. Ей на почту пришло письмо, она его открыла: "Здравствуйте! Меня зовут Сергей Иванов, интересуюсь вакансией финансового консультанта. Прикрепляю резюме. Буду рад обратной связи. Спасибо!"

Сотрудница отдела кадров - человек ответственный. По должностной инструкции она обязана просматривать все поступающие обращения. Она открывает обычный вордовский файл, а там… Там и в самом деле резюме Сергея Иванова, который мечтает стать финансовым консультантом.

Но, к сожалению, вакансия уже неактуальна. Сотрудница отдела кадров закрывает файл и навсегда забывает о нем. Даже когда через 4-5 часов со счета банка начнут выводиться деньги, она не вспомнит об этом резюме.

В вордовском файле был встроен код. Он скачал вредоносную программу и установил ее на компьютер незаметно для пользователя. Так хакеры получили возможность перемещаться внутри сети банка. По сути, это цифровое оружие, и называется оно APT (Advanced Persistent Threat). Это кибератака, ориентированная на взлом конкретной цели и подготовленная на основе долговременного сбора информации о ней.

Во второй половине 2010-х APT-атаки участились. И мир оказался к этому не очень готов. Хакеры легко переключались с сервера на сервер, запускали вредоносные программы и выводили деньги либо собирали информацию. По данным ФинЦЕРТ Банка России, в 2018 году от этих атак пострадали 687 кредитно-финансовых организаций.

Самораспространяющиеся зловреды

В 2017 году уже можно было не открывать почту, не скачивать подозрительные вложения и не переходить по сомнительным ссылкам - и все равно подхватить заразу по имени WannaCry. Зашифрованными оказались компьютеры полумиллиона пользователей. Однако в итоге вымогатели получили всего 302 перевода на сумму 126 742 доллара. При этом общий ущерб компаний, подвергшихся атаке, превысил миллиард долларов.

Авторы WannaCry использовали уязвимость, которую компания Microsoft закрыла в обновлении MS17-010 от 14 марта 2017 года. Проще говоря, если компьютер не был обновлен, на нем оказывался зловред. В России, например, жертвами этой атаки стали МВД, МегаФон и РЖД.

Шифровальщики-вымогатели и майнеры

23 июля 2020 года миллионы любителей бега никуда не побежали. А велосипедисты никуда не поехали. Тот, кто все-таки отправился на тренировку, не смог поделиться ее результатами. А у пилотов гражданской авиации США не получилось обновить полетные карты. Ведь все они, спортсмены и пилоты, пользовались гаджетами и облачными сервисами компании Garmin, которая пострадала от кибератаки.

Чтобы заблокировать сервисы Garmin, хакеры использовали шифровальщика-вымогателя. И это самая актуальная IT-угроза. Раньше, взломав банк, нужно было еще добраться до места, где лежат деньги. Сейчас такие хлопоты ни к чему.

Мошенники получают или покупают у коллег доступ в сеть какой-либо организации и затем шифруют все корпоративные компьютеры и серверы. Ну и требуют выкуп за расшифровку.

У таких хакерских групп даже есть отделы оценщиков. Взяв в разработку конкретную фирму, они вычисляют ее годовую выручку и назначают сумму. Garmin "оштрафовали" на 10 миллионов долларов. Парализовать компанию удалось с помощью зловреда WastedLocker, специально модифицированного для атаки на эту компанию.

Есть и менее жестокие решения - майнеры. Эта программа заражает компьютеры, чтобы заставить их майнить криптовалюту для своего хозяина на другом конце интернета. Для организаций все это, как правило, проходит незаметно. Ведь майнер не станет потреблять 90% мощности машины - возьмет всего 30. А нерадивый системный администратор ничего и не заметит. Докупит серверов, и снова все станет хорошо.

Что дальше?

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

Таймлайн
  • 1971 - Creeper, первая самовоспроизводящаяся программа в Сети
  • 1983 - Фред Коэн сделал саморазмножающуюся программу и назвал ее вирусом
  • 1987 - Вирус-охранник Brain вызвал первую компьютерную эпидемию
  • 1989 - Червь Морриса - продукт ошибки в коде; AIDS - первый троян
  • 1995 - Макровирусы в MS Word
  • 1999 - В день 13-й годовщины аварии на Чернобыльской АЭС был активирован вирус "Чернобыль"; Melissa - первый вирус в прикрепленном к письму файле
  • 2000 - ILOVEYOU - самый разрушительный на сегодня червь, притворявшийся любовным посланием
  • 2004 - Caribe - первый червь, заразивший мобильные телефоны
  • 2010 - Вирус Stuxnet, сделанный военными США и Израиля, нанес реальный ущерб иранским ядерным объектам
  • 2017 - WannaCry взломал крупные организации по всему миру
  • 2020 - Червь-вымогатель WastedLocker прицельно атаковал фирму Garmin и потребовал 10 миллионов долларов; Взлом больницы в Дюссельдорфе привел к смерти человека