Stuxnet: первые жертвы
История операции кибер-саботажа Stuxnet остается одной из самой любимых тем дисскуссий среди исследователей безопасности по всему миру. Считающийся первым известным кибер-оружием, Stuxnet был нацелен на иранскую ядерную программу и использовал тонкий и прекрасно спроектированный механизм.
Для предыстории вы можете ознакомиться с нашими прошлыми публикациями об этой Stuxnet саге:
Одной из причин для перечитывания и возврата к теме Stuxnet является публикация (11 ноября 2014 года) книги «Countdown to Zero Day» журналистки Ким Зеттер.
Мы очень довольны этой книгой, которая включает новую и ранее не публиковавшуюся информацию о Stuxnet. Часть информации фактически основана на интервью, которые Ким Зеттер проводила с членами команды GReAT. В дополнение к выходу книги мы также решили опубликовать новую техническую информацию о некоторых ранее неизвестных аспектах атаки Stuxnet.
Несмотря на то, что после обнаружения Stuxnet прошло уже более четырех лет, он исследован в деталях, а о его истории уже написаны книги и научные труды, до сих пор достоверно не установлено, на какой именно объект был нацелен червь. Вероятней всего, Stuxnet должен был воздействовать на моторы центрифуг по обогащению урана. Но где находились эти центрифуги — на заводе в городе Нетенз (Natanz) или, возможно, в Фордо (Fordow)? Или может быть где-то еще?
Неизвестно, куда направлялся Stuxnet, но зато известно, откуда он начал свой путь.
Мы оставим за рамками этого блогпоста историю самой ранней известной версии червя — «Stuxnet 0.5» и сфокусируемся на наиболее известных вариантах, созданных в 2009 и 2010 годах. (О различиях между ними читайте в нашей публикации 2012 года Back to Stuxnet: the missing link)
В феврале 2011 года компания Symantec опубликовала новую версию своего отчета «W32.Stuxnet Dossier». В отчете сообщалось, что на основании анализа более 3000 файлов червя Symantec удалось установить, что распространение Stuxnet происходило через пять организаций, причем некоторые из них были атакованы дважды –в 2009 и в 2010 году.
Скриншот из отчета Symantec
Получить данную информацию удалось благодаря одной интересной особенности червя. При заражении компьютеров Stuxnet сохраняет информацию об имени, домене и IP-адресе пораженной системы. Эта информация хранится в теле червя и пополняется новыми данными при заражении следующей жертвы. Таким образом, внутри файлов Stuxnet можно найти информацию о пройденном им пути и установить первоначальный компьютер, с которого инфекция начала распространение.
Пример информации, извлеченной из файла Stuxnet
В своем отчете Symantec оставил эти организации анонимными, однако именно эти данные являются крайне важными для понимания истории распространения червя.
На протяжении двух лет мы собирали файлы Stuxnet. Проверив более 2000 таких файлов, мы установили все 5 организаций, которые являлись первыми жертвами разных вариантов червя в 2009 и 2010 году. Анализ их деятельности, возможно, объяснит, почему именно они стали «Patient Zero» (Zero victims).
«Domain A» 22 июня 2009 года была создана версия Stuxnet 2009 (назовем ее Stuxnet.a). Эта информация содержится в теле червя — в нем указана дата компиляции основного модуля. Спустя всего лишь несколько часов червь заразил первый компьютер. Столь короткий временной промежуток между созданием файла и временем заражения практически полностью исключает версию о том, что заражение происходило при помощи USB-диска — он просто физически не успел бы попасть от авторов червя в атакованную организацию.
Название инфицированной машины было «KASPERSKY», и она входила в домен «ISIE».
Когда мы впервые увидели это название, мы были весьма удивлены. Имя машины могло означать, что первоначальному заражению подвергся некий сервер, имеющий название нашего антивируса, установленного на нем. Однако имя локального домена ISIE давало не много информации, которая могла бы помочь установить настоящее название организации.
Исходя из предположения о том, что жертва находилась в Иране, мы предположили, что жертвой было Iranian Society of Industrial Engineers (ISIE) или связанный с ним Iranian institute of Industrial Engineering (IIIE). Или это был какой-то другой ISIE и совсем не в Иране? Учитывая использование нашего антивируса, мы также рассматривали и версию о том, что ISIE может быть какой-то российской компанией.
Нам потребовалось много времени, чтобы установить, какая это в действительности была организация, но в конце концов нам с 99% уверенностью это удалось.Это Foolad Technic Engineering Co (FIECO), иранская компания с штаб-квартирой в Исфахане. Компания занимается созданием автоматизированных систем для иранских промышленных предприятий (в основном в области производства стали и энергии) и насчитывает более 300 сотрудников.
Скриншот с веб-сайта компании
Компания имеет непосредственное отношение к системам промышленного производства на основе PLC.
— Implementing bench scale and pilot scale projects, such as datacommunication between PLC existing in a plant and a remote pointthrough internet, by defining home page on a CP (Communication Processor)card connected to a S7 CPU.- Implementing different network structures, such as, As interface, profibusDP, Ethernet, MPI, profibus PA In electronic and light communication channels.
Несомненно, что в сети этой компании имеются материалы, чертежи и планы многих крупнейших промышленных предприятий в Иране. Не стоит забывать о том, что помимо взаимодействия с моторами, Stuxnet нес в себе и шпионских функционал и собирал информацию об обнаруженных в зараженной системе проектах STEP 7.
В 2010 году эта же организация вновь подверглась атаке, на этот раз при помощи третьего варианта Stuxnet, созданного 14 апреля 2010 года. 26 апреля заражению вновь подвергся тот же самый компьютер, что и в 2009 году — «KASPERSKY.ISIE».
Такая настойчивость авторов Stuxnet может свидетельствовать о том, что они считали Foolad Technic Engineering Co не только одним из кратчайших путей к финальной мишени червя, но и крайне интересным объектом для сбора данных о промышленности Ирана.
«Domain B» Еще одна организация стала объектом атак несколько раз — в 2009 и дважды в 2010 году. По сути дела, каждый из трех вариантов Stuxnet отправлялся туда. В данном случае атакующие действовали еще настойчивее, чем в отношении FIECO.
Следует отметить, что именно эта жертва является Patient Zero глобальной эпидемии 2010 года. Заражение этой организации в ходе второй атаки (в марте 2010 года) привели к наибольшему распространению Stuxnet — сначала в Иране, а затем и по всему миру. При этом распространение червя после заражения этой же организации в июне 2009 и мае 2010 года было крайне незначительным. О причинах этого мы также сделаем предположения.
Возьмем самый распространенный вариант Stuxnet 2010 (он же Stuxnet.b). Он был скомпилирован 1 марта 2010 года. Первое же заражение произошло спустя три недели — 23 марта.
Помимо имени компьютера и домена Stuxnet записал и IP-адрес машины. То, что этот адрес изменился 29 марта, может косвенно свидетельствовать о том, что это был ноутбук, который периодически подключался в локальную сеть компании.
Однако что же это за компания? Домен «behpajooh» сразу же приводит нас к обнаружению искомого — Behpajooh Co. Elec & Comp. Engineering.
Как и Foolad Techic, эта компания находится в городе Исфахан и тоже занимается разработкой систем автоматизации промышленных производств. Очевидно, что и здесь мы имеем дело с специалистами в области SCADA/PLC.
Скриншот с веб-сайта компании
Собирая информацию о Behpajooh Co, мы обнаружили еще кое-что интересное. Это была заметка от 2006 года, опубликованная в дубайской (ОАЭ) газете Khaleej Times.
В статье говорится о том, что одна из дубайских фирм была уличена в контрабандных поставках компонент для создания бомб в Иран. Назван был и получатель груза в Иране — некая «Bejpajooh INC» из Исфахана.
Почему же заражение в марте 2010 года компании Behpajooh повлекло за собой наиболее массовое распространение Stuxnet? Как нам кажется, ответ здесь кроется во второй организации в цепочке заражений, начавшихся с Behpajooh.
Как видно, 24 апреля 2010 года Stuxnet попал из сети компании Behpajooh в новую сеть — с доменным именем MSCCO. Поиск всех возможных вариантов привел нас к выводу, что наиболее вероятной жертвой является Mobarakeh Steel Company (MSC), крупнейший в Иране металлургический комплекс и одно из наиболее крупных промышленных предприятий страны, которое находится недалеко от все того же города Исфахан (в нем же базируются описанные выше жертвы Behpajooh и Foolad Technic).
Попадание Stuxnet на данный завод, очевидно связанный с десятками других предприятий Ирана и громадным числом компьютеров на производстве, вызвало цепную реакцию стремительного распространения червя по тысячам систем в течение всего лишь 2–3 месяцев. Например, анализ логов истории заражений показывает, что уже в июле 2010 года данная ветвь заражений дошла до компьютеров на предприятиях в России и Белоруссии.
«Domain C» 7 июля 2009 года Stuxnet 2009 поразил еще одну цель, с которой он должен был начать свой путь к финальному назначению. Жертвой стал компьютер с именем «applserver» (application server?) в домене NEDA.
Идентификация пострадавшей организации в данном случае была довольно простым делом. Вне всякого сомнения это Neda Industrial Group — организация, с сентября 2008 года находящаяся в списке санкций Министерства Юстиции США и обвиняемая в нелегальном экспорте запрещенных веществ в Иран, в том числе в военных целях. Полное досье на эту компанию можно найти на сайте Iran Watch.
В линии распространения Stuxnet отдельный интерес вызывает одна из дочерних организаций группы: «Allegedly the controlling entity of Nedaye Micron Electronic Company in Tehran, Iran and Neda Overseas Electronics LLC in Dubai, UAE; provides services in industrial automation for power plants, the cement industry, and the oil, gas and petrochemical sector; established in the mid 1980s under the name NEDA Computer Products Incorporated as a fully private joint stock company».
Neda была атакована только один раз, в июле 2009 года, и Stuxnet не удалось выйти за пределы организации, судя по имеющимся у нас логам заражений. Однако возможно это и не было его целью в данном случае. Как мы уже отмечали, функция кражи информации о проектах STEP 7 в зараженных системах также представляла отдельный интерес для авторов Stuxnet.
«Domain D» Четвертая жертва в 2009 году подверглась заражению одновременно с Neda — 7 июля. Интересно, что и тут (см. Applserver в Neda), если судить по имени компьютера — SRV1 в домене CGJ, заражение началось с сервера.
Что же такое «CGJ»? Мы довольно много времени потратили на поиск ответа, используя поисковые системы и социальные сети, и практически на 100% уверены в том, что это «Control-Gostar Jahed Company» — еще одна иранская компания, выполняющая работы в области автоматизации промышленного производства.
Control Gostar Jahed (CGJ) (Private Joint Stock, Since 1383) Founded with the aim of localization of industrial automation technology, and employing the technical know-how and execution power of 30 full-time personnel in the Tehran office and more than 50 workshop personnel, has achieved a high capacity in providing engineering and technical services.
The companys major focus over the years has been on the following domains:- Design, procurement, construction, programming and commissioning of control systems (DCS, PLC, ESD, F&G)- Design, manufacture and installation of low voltage fixed and sliding panels (using the products of CUBIC Denmark)- Upgrading hardware, software and optimization of industrial automation systems- Consulting services and basic and detailed design of electrical and instrumentation systems- Installation of electrical and control systems
В отличие от Neda Group, эта организация отсутствует в списках объектов санкций против Ирана. Выбор её в качестве начальной жертвы, вероятно, был обусловлен внушительным портфолио сотрудничества с крупнейшими иранскими компаниями, работающими как в области нефтедобычи, так и в металлургической и энергетической сфере.Эта организация была атакована только один раз, в 2009 году, и это заражение, практически не вышедшее за пределы компании, составляет наименьшую часть из всех известных линий распространения Stuxnet.
«Domain E» Пятая и последняя из «нулевых» жертв выделяется числом первоначально зараженных систем. В отличие от всех описанных выше случаев здесь атака началась сразу с трех компьютеров в один день (11 мая 2010 года), но в разное время.
Информация из трех разных файлов Stuxnet
KALASERVER, ANTIVIRUSPC, NAMADSERVER — судя по названию, и здесь, как минимум, было два сервера.
Такой паттерн при заражении практически полностью исключает вероятность такого первоначального вектора атаки как электронная почта. Вряд ли здесь все началось с открытого получателем письма, содержащего вложение с эксплойтом.
Что же такое Kala? Здесь есть два наиболее вероятных ответа, и мы не знаем, какой из них правильный. В обоих случаях речь идет о попавших под санкции компаниях, напрямую связанных с ядерной программой Ирана.
Это может быть Kala Naft, досье на которую имеется на сайте Iran Watch.
Но наиболее вероятной жертвой выглядит Kala Electric, также известная как Kalaye Electric Co. Это фактически идеальный объект для атаки, если сопоставить основную задачу Stuxnet (вывод из строя центрифуг для обогащения урана), известные данные по иранской ядерной программе и логику распространения червя.
Именно Kala Electric называют основным разработчиком иранских центрифуг IR-1 для обогащения урана.
У компании нет вебсайта, но можно найти довольно много информации об её деятельности — это одна из ключевых структур во всей иранской ядерной программе.
Источник: http://www.iranwatch.org/iranian-entities/kalaye-electric-company
Довольно подробная информация также может быть найдена на сайте ISIS (Institute for Science and International Security).
Based on Iran’s revised declaration about this site, originally, Kalaye Electric was a private company that was bought by the Atomic Energy Organization of Iran (AEOI). The name «Kalaye Electric» means «electric goods,» implying that Iran kept the original name to help disguise the true purpose of the facility.
Iran declared that Kalaye Electric became the primary IR-1 centrifuge development and testing site after such work was moved in 1995 from the Tehran Nuclear Research Center. The IAEA has reported that between 1997 and 2002, Iran assembled and tested IR-1 centrifuges at Kalaye
Since moving many centrifuge research and development activities to the Pilot Fuel Enrichment Plant (PFEP) at Natanz, Kalaye Electric has remained an important centrifuge research and development site.
Существуют также спутниковые снимки завода Kala Electric, на котором, как считается, и производилась разработка и тестирование центрифуг.
Источник: http://www.isisnucleariran.org/sites/detail/kalaye/
Таким образом, выбор именно этой организации как первого звена в цепочке заражений, которая должна привести червя к цели, выглядит совершенно логичным. Даже вызывает удивление, почему эта организация не была зафиксирована в атаках 2009 года.
Заключение Stuxnet остается одним из самых интересных образцов когда-либо созданного вредоносного кода. Можно сказать, что в цифровом мире атаки Stuxnet являются кибер-эквивалентом атак на Нагасаки и Хиросиму в 1945 году.
Чтобы успешно проникнуть в тщательно охраняемые установки, где Иран разрабатывает свою ядерную программу, атакующим пришлось решить сложную задачу: как вредоносный код может попасть в место, которое не имеет прямого подключения к интернету? Нападение на отдельные «высокопрофильные» организации было решением, и, вероятно, успешным.
К несчастью, из-за определенных ошибок или дыр в архитектуре, Stuxnet начал заражать другие организации и распространяться через интернет. Атакующие потеряли контроль над червем, который заразил сотни тысяч систем в дополнение к оригинальным целям.
Конечно, один из главных остающихся вопросов — были ли другие вредоносные программы, похожие на Stuxnet, или это был единственный в своем роде эксперимент? Будущее несомненно даст нам ответ.
Полный текст статьи читайте на Лаборатория Касперского