Microsoft випустила позапланові оновлення безпеки для .NET 8, .NET 9 і .NET 10, а також опублікувала третю попередню версію .NET 11 Release Candidate 3. Виправлення усувають дві серйозні вразливості, одна з яких пов’язана з обробкою стиснених даних і зачіпає всі платформи, а інша стосується певних дистрибутивів .NET для Linux. Компанія рекомендує якнайшвидше оновити відповідні середовища. Проблеми можуть впливати на програми, які використовують .NET для обробки даних, а в окремих випадках — створювати умови для витоку інформації, порушення роботи застосунків або підвищення привілеїв зловмисника. Вразливість Brotli зачіпає всі платформи Перша проблема, зареєстрована під ідентифікатором CVE-2026-111497, пов’язана з переповненням буфера під час використання алгоритму декомпресії Brotli в .NET. За певних умов помилка може дозволити неавтентифікованому зловмиснику читати або пошкоджувати пам’ять процесу. Потенційні наслідки включають розкриття конфіденційних даних, відмову в обслуговуванні та підвищення привілеїв. Вразливість стосується всіх платформ, на яких працюють відповідні компоненти .NET. Ризик можуть мати застосунки, що обробляють стиснені дані через декомпресію запитів ASP.NET Core, автоматичне розпакування HTTP-відповідей у HttpClient або API Brotli з бібліотеки System.IO.Compression. Це не означає, що кожна програма на .NET автоматично вразлива. Ризик залежить від того, чи використовує вона відповідні компоненти та як саме обробляє дані. Друга помилка стосується Linux Друга вразливість — CVE-2026-114148 — пов’язана з небезпечними метаданими про власників файлів у певних архівах .NET. За наявності відповідних умов локальний зловмисник може змінити файли та отримати підвищені привілеї. На відміну від проблеми Brotli, ця вразливість стосується лише Linux і залежить від типу дистрибутива та способу його отримання. Для .NET 10 і .NET 11 проблема зачіпає опубліковані в інтернеті архіви для складання з вихідного коду. У випадку .NET 8 і .NET 9 вона також поширюється на дистрибутиви ASP.NET Core, отримані через відповідні архіви. Тому виправлення важливе навіть для користувачів, які не збирають .NET самостійно з вихідного коду. Microsoft також повторно опублікувала виправлення для двох раніше оголошених у жовтні вразливостей: CVE-2026-70197, пов’язаної з пошкодженням пам’яті в SocketAsyncEventArgs, і CVE-2026-102870, що стосується налагоджувача Blazor WebAssembly. За поясненням компанії, попередні оновлення не повністю усували ці проблеми. Як правильно встановити оновлення .NET Спосіб оновлення залежить від того, як розгорнуто застосунок: Застосунки із залежністю від установленого середовища виконання: встановіть оновлену версію runtime для потрібної версії .NET і перезапустіть програму. Самодостатні застосунки (self-contained): перебудуйте та повторно опублікуйте застосунок з оновленим runtime. Звичайне оновлення .NET на сервері не змінює середовище виконання, вбудоване в такий застосунок. Контейнери: перебудуйте образи на основі оновлених образів .NET і повторно розгорніть контейнери. Збирання з вихідного коду: отримайте оновлені вихідні артефакти для своєї версії .NET і перебудуйте пакети. Користувачі архівів ASP.NET Core для .NET 8 і .NET 9: установіть оновлений архів ASP.NET Core Runtime, навіть якщо не збираєте платформу самостійно. Перевірити встановлені середовища виконання можна командою dotnet --list-runtimes. Оскільки оновлення виправляють помилки, які потенційно впливають на конфіденційність даних і безпеку систем, адміністраторам та розробникам варто перевірити всі середовища, де використовуються відповідні версії .NET, і переконатися, що виправлення застосовані належним чином.