Как злоумышленные SAS-токены могли привести к массовому заражению Windows через PC Manager?

В 2023 году исследователи Trend Micro обнаружили критические уязвимости в цепочке поставок Microsoft PC Manager, связанные с чрезмерно открытыми SAS-токенами к облачным хранилищам Azure. Эти токены предоставляли злоумышленникам возможность незаметно подменять официальные дистрибутивы и распространять вредоносное ПО миллионам пользователей Windows.
Как злоумышленные SAS-токены могли привести к массовому заражению Windows через PC Manager?
Изображение носит иллюстративный характер

PC Manager — инструмент для оптимизации Windows, доступный через официальный сайт , Microsoft App Store и через командную строку с помощью WinGet. Его распространение осуществляется через публичные облачные хранилища Azure, доступ к которым регулировался с помощью SAS-токенов (Shared Access Signature). Однако, как оказалось, настройки этих токенов были излишне щедрыми: они позволяли читать, записывать, удалять и просматривать содержимое контейнеров с дистрибутивами.

Первый сценарий атаки (ZDI-23-1527) был выявлен в сентябре 2023 года. Анализ YAML-манифестов WinGet, размещённых в репозитории microsoft/winget-pkgs на GitHub, показал, что начиная с 4 ноября 2022 года в открытом доступе находились ссылки с SAS-токенами к китайскому облачному аккаунту Azure distributestorage (blob.core.chinacloudapi.cn), контейнеру mvp размером 384 ГБ. Пример вредоносной ссылки:

officeplus.cn/mvp/10000/54247/MSPCManagerOffline_20230918.54247.exe?sv=2021-10-04&se=2024-03-16T09:17:53Z&sr=c&sp=rwdl&sig=...

Этот токен действовал до марта 2024 года и позволял не только скачивать, но и полностью изменять содержимое контейнера. Таким образом, любой желающий мог заменить все релизы PC Manager на вредоносные версии. Даже если WinGet предупреждает о несовпадении хэша SHA256, большинство пользователей продолжили бы доверять загрузкам из официального источника.

Второй сценарий (ZDI-23-1528) касался главного официального сайта . Кнопка загрузки на сайте вела через короткий адрес к дистрибутиву, хранящемуся в другом аккаунте Azure — pcmdistributestorage. Здесь контейнер mvp содержал 126,7 ГБ данных, а SAS-токен также позволял полный доступ к файлам. Особую опасность представлял тот факт, что автообновление включено по умолчанию в некоторых версиях, а MSI-файлы не были подписаны цифровым сертификатом. Теоретически, злоумышленник мог внедрить троян или подменить файлы на архивы с вредоносными скриптами, подписанными скомпрометированными сертификатами.

Риск усугублялся тем, что SAS-токены Azure бывают трёх типов: User Delegation (до 7 дней, требует Entra ID), Service и Account (до 9 999 лет, требуют ключа аккаунта). Если ключ аккаунта Azure утекал, создавалось неограниченное количество токенов с любыми правами. В случае обнаруженных уязвимостей токены были выданы слишком надолго и с избыточными правами.

Для обнаружения подобных инцидентов эксперты рекомендуют анализировать Azure Storage Analytics logs (несмотря на высокую стоимость и неполноту информации, например, отсутствие самой подписи токена), мониторить крупные передачи данных, отслеживать параметры sp в URL, выявлять доступы с подозрительных IP-адресов и user-agent, а также следить за анонимными запросами и попытками доступа к конфиденциальным файлам (например, .env, config, secret).

В ответ на отчёты исследователей Microsoft сначала ограничила права SAS-токенов только чтением, а затем полностью заменила открытые ссылки на загрузку прямыми URL Microsoft App Store, что исключило возможность сторонней подмены бинарных файлов.

Среди подобных инцидентов выделяется случай июня 2023 года, когда из-за чрезмерно открытого SAS-токена были раскрыты 38 ТБ внутренних данных Microsoft, включая резервные копии сотрудников и артефакты исследований ИИ.

Во избежание подобных проблем рекомендуется использовать SAS-токены с минимальными необходимыми правами (только чтение, только для одного файла), ограничивать срок действия до одного часа, делиться токенами только с доверенными клиентами, использовать политики отзыва (Stored Access Policy) и регулярно проводить аудит прав доступа. В случае утечки ключа необходимо срочно производить его ротацию, что аннулирует все активные токены.

Данные инциденты продемонстрировали, что даже крупные корпорации могут стать уязвимыми из-за ошибки в управлении облачными правами доступа, а своевременное реагирование и жёсткий контроль над облачной инфраструктурой критически важны для защиты цепочек поставок программного обеспечения.


Новое на сайте

20868Уязвимости Plex открыли путь майнерам и Linux-бэкдору 20867Взлом OpenCode Console: под угрозой могли оказаться ключи OpenAI, Anthropic и Google 20866Rank Math PRO: заражённое обновление оставило на сайтах самовосстанавливающийся бэкдор 20865Как исследовательские модели OpenAI обходили ограничения и присваивали чужие данные 20864Атака на BeyondTrust: шпионская группа получила доступ к серверам поддержки 20863Как пакет imgdecode превращает npm-зависимость в загрузчик вредоносного кода? 20862Как PEERSTITCH обходит проверки VPN-сессий FortiOS? 20861Что происходит, когда ИИ-агент выходит за пределы тестовой среды? 20860Как 37-летняя ошибка открыла путь к root в OpenBSD 7.9? 20859ИИ-модели для SOC: точный ответ зависит от улик 20858Как одна учётная запись ConnectWise открыла доступ к 173 арендаторам Microsoft 365? 20857Пять минут до заражения: как подменили обновления AOMEI Backupper 20856Ловушка под видом регистрации: как UAT-11985 крадёт аккаунты Google 20855Может ли виртуальная машина прочитать память хоста? 20854Как дешёвые Android-смартфоны превращаются в чужие прокси?
Ссылка