Wikileaks продолжает обнародовать огромный архив секретных документов и хакерских инструментов Центрального разведывательного управления (ЦРУ) США, который ранее «утек» у спецслужб и оказался в распоряжении ресурса. Публикации выходят с марта 2017 года и снабжаются грифом Vault 7, рассказывая о самых разных инструментах и техниках.
На этой неделе Wikileaks представила документацию, посвященную проекту AngelFire. Данный фреймворк создан для атак на компьютеры, работающие под управлением Windows XP и Windows 7.
Согласно инструкции (PDF), AngelFire состоит из пяти компонентов, каждый из которых выполняет собственную функцию:
- Solartime – малварь, модифицирующая загрузочный сектор с целью загрузки Wolfcreek;
- Wolfcreek – самозагружающийся драйвер, способный загружать другие драйверы и user-mode приложения;
- Keystone (ранее MagicWand) – компонент ответственный за запуск других имплантов (имплантами спецслужбы называют свое вредоносное ПО). Судя по документам, импланты работают исключительно в памяти, не оставляя следов на жестком диске;
- BadMFS – скрытая файловая система, создаваемая в конце активного раздела. AngelFire использует BadMFS для хранения компонентов. Все файлы зашифрованы и обфусцированы;
- Windows Transitory File System – наиболее новый компонент в составе AngelFire, альтернатива BadMFS. Вместо хранения файлов в скрытой файловой системе, Windows Transitory File System использует для этих целей временные файлы.
Судя по опубликованным бумагам, AngelFire работает на 32- и 64-битных версиях Windows XP и Windows 7, а также Windows Server 2008 R2.
Интересно, что по сравнению с другими инструментами ЦРУ, о которых мы знаем благодаря публикациям цикла Vault 7, AngelFire выглядит неоконченным и имеет множество проблем. К примеру, DLL persistence для XP не поддерживается, использующийся эвристический алгоритм несовершенен, BadMFS могут обнаруживать защитные решения, а Keystone всегда маскируется под процесс C:\Windows\system32\svchost.exe и не может динамически подстраиваться к ситуации, к примеру, если Windows установлена в другом разделе.