원문 캡처 · devblogs.microsoft.com
원문 캡처 · devblogs.microsoft.com

마이크로소프트가 .NET 8·9·10 보안 업데이트와 .NET 11 Release Candidate 3를 배포했다. Brotli 압축 해제 취약점 등을 수정했으며, 가능한 한 빨리 업데이트할 것을 권고했다.

이번 업데이트는 Brotli 압축 해제 알고리즘 사용 과정의 버퍼 오버플로 취약점인 CVE-2026-111497을 해결한다. 인증되지 않은 공격자가 프로세스 메모리를 읽거나 손상해 정보 유출, 서비스 거부, 권한 상승을 일으킬 수 있다. 영향을 받는 플랫폼은 전체 플랫폼이다. Brotli 알고리즘에 관한 설명은 RFC 7932를 참고하면 된다.

또한 Linux용 .NET tarball의 소유권 메타데이터 문제인 CVE-2026-114148을 수정했다. 취약한 tarball은 로컬 공격자가 파일을 수정하고 권한을 높이는 데 악용될 수 있다. .NET 10과 .NET 11에서는 소스 빌드 tarball만 영향을 받는다. .NET 8과 .NET 9에서는 ASP.NET Core tarball로 배포된 ASP.NET Core도 영향을 받으므로, .NET을 소스에서 빌드하지 않는 사용자도 해당할 수 있다.

애플리케이션이 Brotli로 압축된 데이터를 처리하면 영향을 받을 수 있다. 해당 경로에는 ASP.NET Core 요청 압축 해제, HttpClient의 자동 응답 압축 해제, System.IO.Compression의 Brotli API가 포함된다. 요청 압축 해제와 자동 응답 압축 해제는 기본적으로 활성화되어 있지 않다. .NET Framework는 영향을 받지 않는다.

이번 배포에는 2026년 10월 13일 릴리스에서 완전히 해결되지 않았던 CVE-2026-70197(SocketAsyncEventArgs 메모리 손상)과 CVE-2026-102870(Blazor WebAssembly 디버거)의 수정도 포함됐다. 전자는 .NET 8·9·10·11, 후자는 .NET 10·11에 해당한다. 취약점 세부 내용과 영향받는 제품은 각 보안 권고에서 확인할 수 있다.

.NET 버전업데이트
.NET 88.0.33
.NET 99.0.22
.NET 1010.0.14
.NET 11Release Candidate 3

각 버전의 SDK와 런타임은 .NET 8, .NET 9, .NET 10, .NET 11 다운로드 페이지에서 받을 수 있다. .NET 11 RC2 사용자는 수정 사항을 받으려면 RC3으로 업데이트해야 한다.

프레임워크 종속 애플리케이션은 대상 .NET 버전의 업데이트된 런타임을 설치한 뒤 애플리케이션을 다시 시작한다. 자체 포함 애플리케이션은 업데이트된 런타임으로 다시 빌드하고 게시해야 한다. 호스트에 새 런타임을 설치하는 것만으로는 애플리케이션에 포함된 런타임이 바뀌지 않는다. 컨테이너는 업데이트된 .NET 컨테이너 이미지로 다시 빌드하고 배포한다.

소스 빌드 사용자는 해당 .NET 버전의 업데이트된 소스 빌드 산출물을 받아 패키지를 다시 빌드해야 tarball 소유권 수정이 반영된다. .NET 8·9의 ASP.NET Core tarball 사용자는 새 ASP.NET Core 런타임 tarball로 설치를 업데이트해야 한다. 이 경우 .NET을 소스에서 빌드하지 않아도 업데이트가 필요하다.

설치된 런타임은 다음 명령으로 확인할 수 있다.

dotnet --list-runtimes

프레임워크 종속 배포에서는 대상 버전에 맞는 업데이트된 런타임이 설치됐는지 확인한다. 자체 포함 애플리케이션과 컨테이너는 런타임을 별도로 포함하므로 따로 점검해야 한다. 자세한 내용은 .NET 배포 문서에서 확인할 수 있다. 업데이트 후 문제가 발생하면 .NET 릴리스 피드백 이슈에 보고할 수 있다.