Áp dụng cho
Win 10 Ent LTSB 2016 Win 10 Ent LTSC 2019 Windows 10 IoT Enterprise LTSC 2021 Windows 10, version 22H2, all editions Windows 11 Home and Pro, version 22H2 Windows 11 Enterprise Multi-Session, version 22H2 Windows 11 Enterprise and Education, version 22H2 Windows 11 IoT Enterprise, version 22H2 Windows 11 SE, version 23H2 Windows 11 Home and Pro, version 23H2 Windows 11 Enterprise and Education, version 23H2 Windows 11 Enterprise Multi-Session, version 23H2 Windows 11 version 24H2, all editions Windows 11 version 25H2, all editions Windows Server 2012 ESU Windows Server 2012 R2 ESU Windows Server 2016 Windows Server 2019 Windows Server 2022 Windows Server 2025

Ngày phát hành ban đầu: Ngày 21 tháng 11 năm 2025

ID KB: 5073121

Giới thiệu

Các bản cập nhật Windows ngày 14 tháng 10 năm 2025 khắc phục sự cố CVE-2024-30098 đã tiết lộ các sự cố trong các ứng dụng mà mã không xác định chính xác nhà cung cấp nào đang quản lý khóa cho chứng chỉ phát tán từ thẻ thông minh đến kho chứng chỉ. Xác định sai này có thể khiến các thao tác mã hóa không thành công trong một số kịch bản nhất định. Tài liệu này cung cấp hướng dẫn cho các nhà phát triển ứng dụng về cách phát hiện bộ xử lý chính xác và giải quyết những vấn đề này.

Tóm tắt

Khi chứng chỉ được phát tán từ thẻ thông minh cửa hàng chứng chỉ Windows, quá trình phát tán có thể sử dụng một trong các nhà cung cấp sau đây:

  • Nhà cung cấp Dịch vụ Mã hóa Kế thừa (CSP), dựa trên Giao diện Lập trình Ứng dụng Mã hóa kế thừa (CAPI)

  • Key Storage Provider (KSP), dựa trên Cryptography API: Next Generation (CNG). Đây là phiên bản thay thế hiện đại được giới thiệu trong Windows Vista.

Trước khi bản sửa lỗi cho CVE-2024-30098, thuật toán phát tán sử dụng CSP cho các chứng chỉ dựa trên RSA và KSP cho tất cả các chứng chỉ khác. Cách tiếp cận này không an toàn vì CAPI không hỗ trợ thuật toán mã hóa hiện đại, hạn chế khả năng bảo mật.

Ngày 14 tháng 10 năm 2025, các bản cập nhật bảo mật đã loại bỏ xử lý đặc biệt này và bây giờ KSP được sử dụng cho tất cả các chứng chỉ.

Xác định tập hợp API sẽ sử dụng

Các ứng dụng dựa trên các phím RSA đang được quản lý bởi CSP có thể bị lỗi khi khóa được quản lý bởi KSP. Để giải quyết vấn đề này, các ứng dụng phải phát hiện nhà cung cấp nào quản lý khóa và sử dụng bộ API tương ứng (CAPI hoặc CNG).

Quan trọng: Không sử dụng hàm CryptAcquireContextW hoặc CryptAcquireContextA vì API bị phản đối. Thay vào đó, hãy sử dụng hàm CryptAcquireCertificatePrivateKey .

Hàm CryptAcquireCertificatePrivateKey

Gọi CryptAcquireCertificatePrivateKey sẽ trả về núm điều khiển (phCryptProvOrNCryptKey) thuộc loại HCRYPTPROV_OR_NCRYPT_KEY_HANDLE. Núm điều khiển này có thể là:

  • Xử lý CSP (HCRYPTPROV): Sử dụng các hàm CryptoAPI như CryptSignHash.

  • CNG handle (NCRYPT_KEY_HANDLE): Use CNG functions like NCryptSignHash.

Lưu ý: Khi gọi CryptAcquireCertificatePrivateKey, hãy nhớ đưa thông tin CRYPT_ACQUIRE_PREFER_NCRYPT_KEY_FLAG vào tham số dwFlags.

Để xác định loại núm điều khiển, hãy kiểm tra giá trị pdwKeySpec :

giá trị pdwKeySpec

Crypto API để sử dụng

AT_KEYEXCHANGE hoặc AT_SIGNATURE

CAPI

CERT_NCRYPT_KEY_SPEC

CNG

Giải pháp thay thế

Giải pháp tạm thời có sẵn cho khách hàng bị ảnh hưởng bởi việc thực thi thay đổi này. Khóa đăng ký tạm thời có sẵn để chuyển hành vi từ Chế độ thực thi sang chế độ Kiểm tra.

Quan trọng: Hỗ trợ cho khóa đăng ký này sẽ bị loại bỏ trong các bản cập nhật tháng 4 năm 2026.

Đường dẫn đăng ký

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Calais

Loại

REG_DWORD

Tên giá trị

DisableCapiOverrideForRSA

Dữ liệu giá trị

  • 1 = bật bản sửa lỗi

  • 0 hoặc loại bỏ phím = tắt bản sửa lỗi – chuyển sang chế độ kiểm tra

Tham khảo

Lưu trữ và Truy xuất Khóa

Hàm CryptAcquireCertificatePrivateKey (wincrypt.h)

CVE-2024-30098 | Lỗ hổng Bỏ qua Tính năng Bảo mật của Dịch vụ Mã hóa Windows

.

Bạn cần thêm trợ giúp?

Bạn muốn xem các tùy chọn khác?

Khám phá các lợi ích của gói đăng ký, xem qua các khóa đào tạo, tìm hiểu cách bảo mật thiết bị của bạn và hơn thế nữa.