CVE-2026-77372 in VeraCrypt
Tóm tắt
Bởi VulDB • 05/11/2026
VeraCrypt cung cấp mã hóa đĩa với bảo mật mạnh mẽ dựa trên TrueCrypt. Trước phiên bản 1.26.30, các đường dẫn serialization trong src/Platform/Serializer.cpp và src/Volume/VolumePassword.cpp cho Unix, macOS và FreeBSD chấp nhận các giá trị độ dài (length) và số lượng (count) không đáng tin cậy khi giải serialize dữ liệu có thể chuyển từ GUI hoặc CLI không đặc quyền sang trợ lý CoreService ở mức root. Serializer::DeserializeWString phân bổ floor(size / sizeof(wchar_t)) phần tử nhưng đọc size byte, do đó một kích thước không được căn chỉnh (non-aligned size) có thể gây tràn bộ nhớ heap (heap overflow). VolumePassword::Deserialize chấp nhận các giá trị PasswordSize lớn hơn buffer mật khẩu cố định 128-byte, cho phép các thành phần tiêu thụ downstream như DataPtr() và Size(), chẳng hạn như KDF, đọc vượt ra ngoài buffer. DeserializeString, DeserializeWString và các trình đọc danh sách chuỗi và wide-string cũng thiếu kiểm soát giới hạn phân bổ và bộ sưu tập (collection bounds), có thể gây cạn kiệt tài nguyên bộ nhớ; hơn nữa, một lệnh gọi DeserializeString với độ dài bằng 0 có thể truy cập vào vector rỗng. Windows sử dụng một đường dẫn khác, và trình ghi pipe CoreService ngay lập tức là tiến trình cha cùng người dùng, do đó mức độ phơi nhiễm được mô tả ở đây là ranh giới phòng thủ theo chiều sâu (defense-in-depth boundary) cục bộ chứ không phải cuộc tấn công từ xa. Vấn đề này đã được sửa chữa trong phiên bản 1.26.30.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.