Среди антивирусных исследователей, занимавшихся изучением Stuxnet, поразительная сложность червя довольно быстра привела к консенсусу, согласно которому за созданием столь изощренной программы, скорее всего, стоит некая государственная спецслужба, щедро финансируемая и сильно продвинутая в компьютерных спецоперациях. Поначалу, правда, предполагалось, что цель Stuxnet — какая-нибудь серьезная авария на производстве, типа взрыва или массового выхода оборудования из строя. Однако последние результаты анализа в Symantec четко указывают на то, что червь был создан для куда более тонкого саботажа, скрытно длящегося продолжительное время на протяжении многих месяцев. Кроме того, уже не вызывает никакого сомнения, что авторы программы-диверсанта затачивали ее под совершенно конкретный объект (или ряд идентичных объектов), имея при этом подробные и обширные сведения о специфике системы-мишени.
Как указывается в досье Symantec, драйверы конвертера частоты используются для управления скоростью вращения другого устройства — например, мотора на производстве или электростанции. Увеличение частоты означает увеличение скорости вращения ротора в моторе. В конкретном случае Stuxnet, червь целенаправленно ищет процессорный модуль управления, изготовленный Profibus & Profinet International, который связывается с по меньшей мере 33 драйверами конвертера частоты, изготовленными иранской либо финской компанией. Stuxnet действует очень избирательно даже в тех случаях, когда находит тот объект, на который был нацелен. Если количество драйверов от иранской фирмы превышает то же количество от финской фирмы, то Stuxnet запускает одну последовательность событий. Если же финских драйверов больше, чем иранских, то в ход идет другая цепочка команд.
Как только Stuxnet устанавливает, что заразил систему-цель, он начинает перехватывать команды системы, подаваемые драйверам, изменяя их функционирование. Как поясняют аналитики Symantec, «Stuxnet меняет выходную частоту на краткие периоды времени, сначала задавая 1410 Гц, затем снижая ее до 2 Гц, а затем повышая до 1064 Гц... Модификация выходной частоты, по сути дела, лишает автоматическую систему управления возможностей функционировать надлежащим образом. ... [В коде программы имеется еще один признак того, что ее цель — очень конкретное реальное приложение.] Червя интересует процесс, который работает непрерывно на протяжении более месяца, поскольку лишь в этом случае код программы достигает желаемого эффекта. Процесс обогащения урана — типичный пример такого процесса, где центрифуги должны вращаться с очень точной скоростью на протяжении длительных периодов времени для того, чтобы выделить уран нужной чистоты. Если же эти центрифуги перестают вращаться с нужной высокой скоростью, то тогда процесс отделения более тяжелых изотопов урана нарушается. А итоговое качество урана на выходе будет существенно ниже, чем требуется».
Как обнаружили исследователи, в коде программы имеется длительное время выжидания между различными стадиями вредительских процессов, запускаемых червем — в некоторых случаях длительностью свыше трех недель. Это очевидным образом свидетельствует, что атакующая сторона была заинтересована в незаметном и продолжительном внедрении в работающую систему-мишень, а не во взрыве или тому подобной акции, которая сделала бы вредительство червя заметным.
Червь Stuxnet был явно разработан таким образом, чтобы как можно дольше скрываться от обнаружения. Так что даже если бы администрация зараженного объекта и обнаружила какие-то неполадки и перемены в работе оборудования на фабрике, там все равно не смогли бы увидеть, что это Stuxnet угнездился в их системе, перехватывая и изменяя команды управления. Во всяком случае, доступная ныне картина выглядит так, что о существовании столь изощренного червя практически никто не ведал до тех пор, пока информация о Stuxnet не была широко опубликована в июле нынешнего года.
С оригиналом «Досье Stuxnet» можно ознакомиться на сайте Symantec (PDF).
Кафедра Ваннаха: Математика по Арнольду и Джефферсону