Microsoft закрыла критическую уязвимость в ASP.NET Core
Компания Microsoft выпустила срочное обновление для устранения серьёзной уязвимости в платформе ASP.NET Core. Проблема могла позволить злоумышленникам повысить свои привилегии в системе — вплоть до получения прав уровня SYSTEM. Разберёмся, в чём суть угрозы и кому она грозит.
Что за уязвимость
Уязвимость получила идентификатор CVE‑2026‑40372 и оценку 9,1 из 10,0 по шкале CVSS — это высокий уровень опасности. Её классифицируют как важную (Important). Обнаружил и сообщил о проблеме анонимный исследователь.
Суть проблемы — в некорректной проверке криптографической подписи в ASP.NET Core. Из‑за этого злоумышленник может удалённо повысить свои права в сети.
Чем грозит эксплуатация
При успешном использовании уязвимости атакующий может:
получать доступ к файлам;
изменять данные в системе;
подделывать полезные нагрузки (payload), которые проходят проверку подлинности DataProtection;
расшифровывать ранее защищённые данные — например, из файлов аутентификации (куки), токенов защиты от подделки запросов и т. д.;
выдавать себя за привилегированного пользователя;
получать легитимно подписанные токены:
Важно: такие токены остаются действительными даже после обновления до версии 10.0.7 — если не выполнить ротацию ключей DataProtection.
При каких условиях возможна атака
Эксплуатация уязвимости возможна только при одновременном выполнении трёх условий:
Приложение использует библиотеку Microsoft.AspNetCore.DataProtection 10.0.6 из NuGet — напрямую или через зависимый пакет (например, Microsoft.AspNetCore.DataProtection.StackExchangeRedis).
В рантайме загружается именно версия библиотеки из NuGet.
Приложение работает на Linux, macOS или другой не‑Windows‑системе.
В чём техническая причина проблемы
В пакетах NuGet Microsoft.AspNetCore.DataProtection версий 10.0.0–10.0.6 есть регрессия:
Из‑за этого механизм проверки подлинности даёт сбой — и злоумышленник может подделать данные так, чтобы система приняла их за легитимные.
Как защититься
Microsoft устранила уязвимость в ASP.NET Core версии 10.0.7. Чтобы обезопасить систему, необходимо:
Обновить платформу до версии 10.0.7.
Выполнить ротацию ключей DataProtection key ring — иначе ранее полученные злоумышленником токены останутся действительными.
Проверить, какие приложения используют уязвимую версию библиотеки, и обновить их.
Провести аудит безопасности — особенно если есть подозрения на возможную эксплуатацию уязвимости.