Как злоумышленные 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) и регулярно проводить аудит прав доступа. В случае утечки ключа необходимо срочно производить его ротацию, что аннулирует все активные токены.

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


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

19521Банковский троян VENON на Rust атакует Бразилию с помощью девяти техник обхода защиты 19520Бонобо агрессивны не меньше шимпанзе, но всё решают самки 19519Почему 600-килограммовый зонд NASA падает на Землю из-за солнечной активности? 19518«Липовый календарь»: как расписание превращает работников в расходный материал 19517Вредоносные Rust-пакеты и ИИ-бот крадут секреты разработчиков через CI/CD-пайплайны 19516Как хакеры за 72 часа превратили npm-пакет в ключ от целого облака AWS 19515Как WebDAV-диск и поддельная капча помогают обойти антивирус? 19514Могут ли простые числа скрываться внутри чёрных дыр? 19513Метеорит пробил крышу дома в Германии — откуда взялся огненный шар над Европой? 19512Уязвимости LeakyLooker в Google Looker Studio открывали доступ к чужим базам данных 19511Почему тысячи серверов оказываются открытой дверью для хакеров, хотя могли бы ею не быть? 19510Как исследователи за четыре минуты заставили ИИ-браузер Perplexity Comet попасться на... 19509Может ли женщина без влагалища и шейки матки зачать ребёнка естественным путём? 19508Зачем учёные из Вены создали QR-код, который невозможно увидеть без электронного... 19507Девять уязвимостей CrackArmor позволяют получить root-доступ через модуль безопасности...
Ссылка