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

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


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

19989Шесть историй, которые умещаются на ладони 19986Как 30 000 аккаунтов Facebook оказались в руках вьетнамских хакеров? 19985LofyGang вернулась: как бразильские хакеры охотятся на геймеров через поддельные читы 19984Автономная проверка защиты: как не отстать от ИИ-атак 19983Взлом Trellix: хакеры добрались до исходного кода одной из ведущих компаний по... 19982Почему почти 3000 монет в норвежском поле перевернули представление о викингах? 19981Как поддельная CAPTCHA опустошает ваш счёт и крадёт криптовалюту? 19980Слежка за каждым шагом: как ИИ превращает государство в машину тотального контроля 19979Как хакеры грабят компании через звонок в «техподдержку» 19978Почему именно Нью-Йорк стал самым уязвимым городом восточного побережья перед... 19977Как одна команда git push открывала доступ к миллионам репозиториев 19976Зачем древние народы убивали ножами и мечами: оружие как основа власти 19975Как Python-бэкдор DEEPDOOR крадёт ваши облачные пароли незаметно? 19974Послание в бутылке: математика невозможного 19973Почему ИИ-инфраструктура стала новой целью хакеров быстрее, чем ждали все?
Ссылка