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

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


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

19817В Луксоре нашли стелу с римским императором в образе фараона 19816Экипаж Artemis II о моменте, когда земля исчезла за луной 19815Почему луна выглядит по-разному в разных точках земли? 19814Adobe экстренно закрыла опасную дыру в Acrobat Reader, которую хакеры использовали с... 19813Метеорный поток, рождённый из умирающего астероида 19812Когда робот пишет за тебя прощальную смс 19811Что общего у лунной миссии, толстого попугая, загадочной плащаницы и лекарства от диабета? 19810Какие снимки Artemis II уже стали иконами лунной программы? 19809Кто на самом деле хочет сладкого — вы или ваши бактерии? 19808Как рекламные данные 500 миллионов телефонов оказались в руках спецслужб? 19807Экипаж Artemis II вернулся на землю после десяти дней в космосе 19806Зелёная и коричневая луна: почему геологи Artemis II уже не могут усидеть на месте 19805Эксперты уверены в теплозащитном щите Artemis II, несмотря на проблемы предшественника 19804Выжить внутри торнадо: каково это — когда тебя засасывает в воронку 19803Аляскинские косатки-охотники на млекопитающих замечены у берегов Сиэтла
Ссылка