Математика могла врать еще в 2005 году. Последствия вируса fast16, который бил по науке

Когда 2+2=5, и это не шутка, а операция саботажа.


fwqbk8zmflw5u0n1659upbe6k7l3od55.jpg


Специалисты SentinelLABS нашли вредоносный набор fast16, который мог незаметно портить результаты инженерных и научных расчётов ещё в 2005 году, за пять лет до Stuxnet. Судя по анализу, программа не просто крала данные или закреплялась в системе, а вмешивалась в вычисления так, чтобы заражённые машины выдавали одинаково неверные результаты.

fast16 состоял из служебного файла svcmgmt.exe и драйвера fast16.sys. Первый запускал службу, устанавливал её и распространял по сетям Windows 2000 и Windows XP. Второй работал на уровне ядра и перехватывал обращения к исполняемым файлам на диске. Когда драйвер находил подходящую программу, он менял её код прямо в памяти и подставлял собственные участки, влияющие на вычисления с плавающей точкой.

Целью, по всей видимости, были не массовые компьютеры, а узкие инженерные и научные пакеты. Специалисты проверили найденные шаблоны на старых коллекциях программ и обнаружили совпадения с ПО для точного моделирования, включая LS-DYNA 970, PKPM и гидродинамическую платформу MOHID. Такие системы применяют для расчётов в строительстве, моделирования аварий, взрывов, физических процессов, поведения материалов и водной среды.

Особенность fast16 в том, что вредоносный код мог портить не один результат, а целую цепочку проверок. svcmgmt.exe распространялся по сети через стандартные средства Windows, копировал себя на удалённые машины и запускал службу. Если несколько компьютеров в одной организации заражались одновременно, повторная проверка расчётов на соседней системе могла показать тот же неверный результат. Такой подход снижал шанс заметить подмену.

Перед установкой fast16 проверял, есть ли в системе защитные продукты. В коде нашли ключи реестра, связанные с решениями Symantec, Trend Micro, F-Secure, McAfee, Kaspersky, Zone Labs, Kerio, Agnitum и других производителей. Если такие признаки присутствовали, установка прекращалась. Для середины 2000-х подобная осторожность выглядит нетипично для обычных сетевых червей и больше похожа на инструмент хорошо подготовленной операции.

Важную роль в расследовании сыграла строка отладочного пути C:\buildy\driver\fd\i386\fast16.pdb, найденная в svcmgmt.exe. Она указала на драйвер fast16.sys. Позже то же имя, fast16, обнаружили в утечке ShadowBrokers , где были опубликованы компоненты, связанные с Агентством национальной безопасности США. В одном из файлов с пометками для операторов рядом с fast16 была фраза: «Nothing to see here – carry on».

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

Находка меняет представление о том, как развивался киберсаботаж. До сих пор главным ранним примером считался Stuxnet , обнаруженный в 2010 году. fast16 показывает, что инструменты для скрытого воздействия на физические процессы через программные расчёты существовали уже в середине 2000-х. При этом носитель использовал встроенный язык Lua, модульную архитектуру и драйверный перехват файловой системы задолго до известных платформ Flame и Project Sauron.

Файлы fast16 годами лежали в коллекциях образцов почти незамеченными. Даже сейчас svcmgmt.exe почти не определяется защитными движками. SentinelLABS опубликовала индикаторы компрометации и правила YARA, чтобы другие специалисты могли проверить архивы и, возможно, найти недостающие части операции.