Спецпроекты

Безопасность Администратору Стратегия безопасности Маркет

Как ловили новый мега-вирус. Подробности расследования

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

Главный антивирусный эксперт «Лаборатории Касперского» Александр Гостев рассказал на конференции PHDays подробности недавнего обнаружения кибернетического «супероружия» - червя Worm.Win32.Flame.

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

По заказу подключившегося к решению проблемы Международного союза электросвязи (ITU) «Лаборатория» начала исследование. «Мы обнаружили следы присутствия троянской программы с богатой функциональностью на нескольких компьютерах в регионе, т.е. на Ближнем Востоке», - говорит Гостев. CNews уже писал о гигантском для такого ПО размере основного модуля: после полной распаковки файла на 6 МБ его полный размер достиг 20 МБ, что примерно в 20 раз больше, чем у известного Stuxnet. Также стало ясно, что функционал Flame предусматривает загрузку дополнительных модулей с серверов управления.

С определением языка программирования, в отличие от Duqu, проблем не возникло. Flame писали на интерпретируемом свободно распространяемом LUA, созданном в бразильском университете. Это потребовало добавления в код трояна интерпретатора LUA. Осталось не ясным как происходило первоначальное заражение машин. Гостев предполагает, что для этого могла использоваться уязвимость в Windows Media Player, позволяющая вместо проигрывания видеоролика запускать на атакуемом ПК произвольный код.

В функционале Flame многое напоминает промышленное деловое ПО. После установки трояна он создает базу данных Mini SQL (mSQL) с формализованным описанием всего хранящегося на пораженном хосте. Скриншоты, отправляемые в зашифрованном виде на управляющие сервера, Flame снимает только с интерфейсов процессов, перечисленных в специальном списке. Помимо него существует «черный список» процессов, скриншоты окон которых делать не надо. В первую очередь в него входят антивирусы. Среди других функций трояна – сетевой сниффер, аудиошпион, поиск соседних устройств по Bluetooth, распространение через общие папки, запуск HTTP-сервера и т.п. Интересно, что активируя порт Bluetooth программа присваивает устройству специфическое название, позволяющее обнаружить инфицированный узел с небольших расстояний. Даты создания файлов ПО были отредактированы, что не позволяет точно определить время его разработки.

Всего «Лаборатория» зафиксировала 500 зараженных машин, из который в Иране находилось около 200. Еще 100 – не территории Израиля и Палестины. Александр Гостев предупредил, что поскольку определение положения проводилось с помощью публичных данных об IP-адресах, то возможна погрешность. Далее по числу инфицированных хостов шла Сирия. По его расчетам на полный анализ программы потребуется не менее полугода. Сымитировав пустую зараженную машину, аналитикам удалось получить запросы от управляющего этой небольшой сетью центра. Страны, откуда они приходили, постоянно менялись – Германия, Турция и т.д.

Когда операторы Flame решили удалить свое ПО из контролируемого «Лабораторией» узла (Гостев связывает это с тем, что ничего ценного на этой машине не было), в очередной пришедшей команде на деинсталяцию содержался полный список файлов и ключей реестра, используемых программой. Это сильно помогло аналитикам понять ее полный функционал, включая подгружаемые модули.

«Судя по всему, операторы поддерживали популяцию одновременно всего около 50 активных зараженных машин, - говорит Гостев. – Длившаяся несколько лет операция, для проведения которой был зарегистрирован десяток доменов и подключены постоянно работающие операторы, была свернута в течение 2-3 часов после того, как только мы объявили о своей находке. Серверы управления бросили зараженные хосты и стали недоступны».

Интрига состоит в том, что функции надежного удаления файлов, с которой начались поиски, в Flame как раз нет. А значит, полагает Гостев, помимо Duqu, Stuxnet и Flame существует по меньшей мере еще одна разработка, поразившая промышленное предприятие Ирана.

Отметим, что параллельно в конце мая об обнаружении Flame заявил Symantec. В пресс-службе «Лаборатории» CNews заверили, что американский вендор сделал это почти на месяц позже: свое первое сообщение о трояне российский разработчик антивирусов датирует началом мая.

Денис Легезо

Короткая ссылка