Новая кампания с бэкдором FlutterShell на macOS показывает неприятную для Apple и удобную для злоумышленников реальность: вредонос можно провести через рекламу в Google и YouTube, подписать валидным Apple Developer ID и даже успешно прогнать через notarization. Для разработчиков, IT-руководителей и команд безопасности это не очередная история про «не ставьте подозрительные приложения», а сигнал, что обычная цепочка доверия на Mac снова трещит по швам.
О кампании под кодовым именем Operation FlutterBridge, как пишет The Hacker News, сообщили исследователи Palo Alto Networks Unit 42. Они связывают ее с кластером CL-CRI-1089, активным как минимум с 2023 года. Текущая активность названа следующим этапом цепочки JSCoreRunner, также известной как FileRipple, о которой уже рассказывали в конце августа 2025 года. Теперь у операторов появился новый инструмент: FlutterShell, написанный на фреймворке Flutter и умеющий не только навязывать рекламу, но и выполнять shell-команды, работать с файловой системой и вытягивать переменные окружения.
Схема распространения выглядит довольно приземленно, оттого и опасно. Пользователей macOS в США, Канаде, Австралии, Франции и Германии заманивали через рекламные объявления в Google и YouTube, где вредонос маскировался под легитимные десктопные приложения. Для размещения такой рекламы использовалась сеть формально верифицированных компаний, среди которых названы AdsParkPro LTD, Advantage Web Marketing LLC и SOFT WE ART LIMITED, позже переименованная в PACIFIC TRADE SOLUTIONS LTD. Аккаунты этих рекламодателей в Google Ads Transparency Center на момент публикации уже недоступны, но, по данным исследователей, записи в YouControl и британском Companies House указывают на связи этих фирм с гражданами Украины. Это важная деталь не для геополитических выводов, а для понимания масштаба: злоумышленники не просто покупают серый трафик, а выстраивают инфраструктуру, которая проходит формальные проверки рекламных платформ.
После запуска зараженного приложения начинается уже не маркетинг, а вполне прикладной захват браузера. FlutterShell меняет конфигурационные файлы Google Chrome и принудительно гонит трафик через контролируемую злоумышленниками прослойку, набитую рекламой. На этом все не заканчивается. Исследователи также увидели системный fingerprinting и кражу данных браузерных сессий. Для бизнеса это означает, что история не сводится к раздражающим баннерам: если на машине сотрудника перехватываются сессии, дальше вопрос уже в доступе к корпоративным сервисам, внутренним панелям и SaaS-инструментам, где браузер давно стал главным рабочим клиентом.
Самая интересная инженерная часть здесь связана с архитектурой. FlutterShell использует WebView и мост между JavaScript и нативным кодом. Проще говоря, заметная часть логики живет не внутри бинарника, а на внешнем сайте, откуда ее можно подгружать и менять на лету. Для атакующей стороны это почти подарок: не нужно каждый раз пересобирать приложение и заново распространять обновленный образец, достаточно поменять поведение на сервере. Для защитников это, наоборот, лишняя головная боль. Даже если аналитик разобрал текущий бинарник, завтра тот же образец может вести себя иначе. Исследователи обнаружили три варианта FlutterShell: PodcastsLounge, PDF-Brain и PDF-Ninja. Причем у PDF-Brain и PDF-Ninja была функция AI-суммаризации документов, но с неприятной оговоркой: файлы сначала отправлялись через сервер злоумышленников, а уже потом обрабатывались. Для компаний, где сотрудники любят «умные» PDF-инструменты, это выглядит как почти идеальный канал утечки, замаскированный под полезную функцию.
Отдельно бьет по репутации Apple то, что все изученные образцы были подписаны действительными Apple Developer ID и успешно проходили notarization. То есть стандартные автоматические проверки на момент отправки не считали их вредоносными. Это не первая история, когда легитимные механизмы доверия используются против самих пользователей, но кейс с FlutterShell на macOS особенно показателен. Во-первых, речь идет не о нишевом трояне, а о массовом канале дистрибуции через рекламные платформы. Во-вторых, у группы уже есть портфель похожих операций: Unit 42 связывает с тем же кластером кампании Recipe Lister и Calendaromatic, входящие в более широкую линейку TamperedChef, также известную как EvilAI. Общий почерк один и тот же: троянизированные productivity-приложения, потенциально нежелательные программы, adware и постоянные попытки придать всему этому вид обычного софта, который пользователь сам скачал и сам запустил.
Для русскоязычной IT-аудитории вывод неприятно практичный. Если в компании до сих пор считают macOS «по умолчанию безопасной» платформой для топов, дизайнеров, продактов и разработчиков, то эту модель пора пересматривать. Нужны не только MDM и базовый список разрешенного ПО, но и контроль браузерных политик, телеметрия по изменениям конфигов Chrome, ограничения на установку утилит из рекламы и отдельная работа с привычкой пользователей искать «быстрый PDF-инструмент» или «AI-суммаризатор» прямо через поиск. Разработчикам это тоже полезный холодный душ: Flutter и WebView давно воспринимаются как удобные кроссплатформенные инструменты, но в руках атакующих они превращаются в конструктор малвари с быстрой доставкой новых функций.
Главный вопрос теперь не в том, найдут ли еще одну вариацию FlutterShell на macOS, а в том, насколько быстро рекламные платформы и экосистема Apple научатся отлавливать такие цепочки до установки. Пока злоумышленники успевают одновременно играть на доверии к Google Ads, на привычке пользователей скачивать «полезный» софт из поиска и на самом факте, что подписанное и notarized-приложение у многих до сих пор автоматически считается безопасным.