Экстренное обновление Microsoft устраняет критическую уязвимость в .NET, угрожающую целостности данных

.NET

Корпорация Microsoft выпустила внеплановое экстренное обновление безопасности для устранения критической уязвимости в платформе .NET. Этот шаг, обходящий обычный график выпуска исправлений (так называемый "out-of-band"), сигнализирует о высокой степени угрозы, требующей немедленных действий. Уязвимость, зарегистрированная как CVE-2026-40372, является ошибкой повышения привилегий, которая ставит под угрозу безопасность данных в огромном количестве приложений, использующих компонент ASP.NET Core Data Protection. Для организаций, чья инфраструктура построена на этих технологиях, промедление с установкой патча может привести к серьезным последствиям, включая несанкционированный доступ и манипуляцию защищенной информацией.

Уязвимость CVE-2026-40372

Инцидент начался с, казалось бы, рутинных проблем. После ежемесячного обновления .NET 10.0.6 в рамках "Вторника патчей" разработчики начали массово сообщать о неожиданных сбоях при расшифровке данных в своих приложениях. Первоначально эти ошибки могли выглядеть как функциональный сбой. Однако, расследуя отчеты на GitHub, специалисты по безопасности Microsoft обнаружили, что корень проблемы лежит гораздо глубже и представляет собой серьезную брешь в системе защиты. Ошибка была внесена в виде регрессии - непреднамеренного ухудшения кода во время предыдущего обновления, что является наглядным примером того, как даже плановые исправления могут порождать новые риски.

Техническая суть уязвимости кроется в пакете Microsoft.AspNetCore.DataProtection. В затронутых версиях (с 10.0.0 по 10.0.6) управляемый аутентифицированный шифровальщик некорректно обрабатывал код аутентификации сообщений на основе хеша (HMAC). Этот криптографический механизм жизненно важен для проверки целостности и подлинности зашифрованных данных. В сбойной версии шифровальщик вычислял проверочный тег (validation tag), используя неверные байты полезной нагрузки, после чего полученный хеш попросту отбрасывался. На практике это означает, что механизм проверки целостности переставал работать. Злоумышленник, воспользовавшись этой уязвимостью, мог потенциально модифицировать зашифрованные данные, подменить полезную нагрузку и, как следствие, повысить свои привилегии в системе, не вызывая при этом срабатывания механизмов аутентификации. Таким образом, фундаментальный принцип "конфиденциальность и целостность" был нарушен.

Круг потенциально затронутых систем чрезвычайно широк. Под угрозой оказалось любое приложение, использующее ASP.NET Core Data Protection для защиты конфиденциальной информации - сессионных токенов, cookies аутентификации, ключей шифрования для базы данных или любой другой чувствительной нагрузки. Это касается как веб-приложений, развернутых на серверах, так и микросервисов в контейнерах. Особое внимание следует уделить контейнеризированным средам: образы Docker, основанные на уязвимых версиях .NET, будут нести в себе эту проблему до тех пор, пока не будут пересобраны на основе исправленного базового образа. Специалистам по информационной безопасности необходимо немедленно начать аудит своих сред, чтобы выявить все активы, использующие пакет Microsoft.AspNetCore.DataProtection в опасных версиях.

Важно понимать, что устранение данной уязвимости - не просто вопрос установки системного обновления на сервер операционной системы. Это требует скоординированных действий команд разработки и эксплуатации. Процесс исправления включает несколько обязательных шагов. Во-первых, необходимо загрузить и установить обновленную среду выполнения .NET 10.0.7 или пакет SDK с официального портала Microsoft. Успешность установки можно проверить, выполнив в командной строке команду "dotnet --info". Однако ключевой и наиболее важный этап - это ручное обновление зависимости Microsoft.AspNetCore.DataProtection до версии 10.0.7 непосредственно в конфигурационных файлах проекта, таких как ".csproj". После этого приложение необходимо полностью пересобрать, чтобы оно стало использовать исправленные криптографические библиотеки. Финальным шагом является повторное развертывание обновленных приложений в производственной среде, используя свежие установочные пакеты или, что критически важно, обновленные образы контейнеров.

Microsoft призывает разработчиков, столкнувшихся с проблемами стабильности или неожиданным поведением в процессе применения патча, сообщать о них через репозиторий обратной связи по выпускам .NET. Такая обратная связь помогает инженерам компании обеспечивать стабильность и надежность будущих криптографических обновлений. Данный инцидент служит суровым напоминанием для индустрии о сложности управления зависимостями в современных цепочках поставок программного обеспечения и о необходимости тщательного тестирования даже рутинных обновлений, особенно тех, что затрагивают фундаментальные механизмы безопасности, такие как криптография и защита данных. Оперативное применение патча и пересборка приложений являются на данный момент единственными эффективными мерами по смягчению серьезных рисков, связанных с CVE-2026-40372.

Ссылки

Комментарии: 0