Lỗ hổng nghiêm trọng CVE-2026-66033 trong libssh2 cho phép máy chủ SSH độc hại làm sập ứng dụng máy khách ngay trong quá trình bắt tay kết nối.
Tổng quan về lỗ hổng CVE-2026-66033
Mới đây, vào ngày 24/07/2026, thông tin về lỗ hổng bảo mật nghiêm trọng mang mã hiệu CVE-2026-66033 trên thư viện mã nguồn mở libssh2 đã chính thức được công bố. Lỗ hổng này được đánh giá ở mức độ nghiêm trọng HIGH (Mức độ Cao) trên thang điểm CVSS.
Sự cố này ảnh hưởng đến thư viện libssh2 các phiên bản từ 1.11.1 trở xuống, xuất hiện ngay ở giai đoạn tiền xác thực (pre-authentication). Điều này đồng nghĩa với việc kẻ tấn công có thể khai thác thành công mà không cần sở hữu tài khoản hay thông tin đăng nhập hợp lệ.
Phân tích kỹ thuật và Chi tiết tác động
Lỗ hổng CVE-2026-66033 phát sinh do lỗi tràn số nguyên (integer underflow) nằm trong hàm ssh2_cipher_crypt() thuộc tệp tin mã nguồn src/openssl.c.
Cụ thể, khi một ứng dụng máy khách (SSH client) sử dụng libssh2 thực hiện kết nối và thương lượng các thuật toán mã hóa AES-GCM với máy chủ SSH, lỗ hổng sẽ bị kích hoạt trong biểu thức tính toán kích thước khối (blocksize) trừ đi độ dài dữ liệu bổ sung (aadlen) và độ dài thẻ xác thực (authentication tag length).
Do lỗi tràn dưới số nguyên, hệ thống sẽ thực hiện phép đọc ngoài phạm vi (out-of-bounds read) và sau đó gọi hàm memcpy với tham số độ dài bộ nhớ cực lớn (tiệm cận giá trị SIZE_MAX). Tình trạng này khiến cho tiến trình của máy khách bị sập (crash) ngay lập tức trước khi bất kỳ bước xác thực người dùng nào được thực thi.
Đối tượng bị ảnh hưởng:
- Tất cả các ứng dụng, công cụ hoặc dịch vụ tích hợp thư viện
libssh2từ phiên bản 1.11.1 trở xuống. - Các hệ thống thực hiện kết nối SSH tự động hoặc chủ động kết nối tới các máy chủ SSH không tin cậy hoặc đã bị kẻ tấn công chiếm quyền kiểm soát.
Khuyến nghị khắc phục
Để đảm bảo an toàn cho ứng dụng và hệ thống, Bitech khuyến nghị các nhà phát triển và quản trị viên hệ thống thực hiện ngay các bước sau:
- Cập nhật mã nguồn thư viện: Cập nhật ngay thư viện
libssh2lên bản vá mới nhất chứa commita2ed82d40964bbc0d64cd717aa0a5a892117d2e6(đã được sửa đổi trong Pull Request #2401). - Biên dịch lại ứng dụng: Nếu ứng dụng của bạn sử dụng liên kết tĩnh (static linking) với
libssh2, hãy tiến hành tải bản mã nguồn đã vá lỗi và biên dịch lại toàn bộ ứng dụng. - Hạn chế kết nối không tin cậy: Trong thời gian chờ cập nhật, tránh để các ứng dụng máy khách kết nối tới các máy chủ SSH công cộng hoặc không xác định nguồn gốc.
Nguồn tham khảo
- NVD NIST Detail: https://nvd.nist.gov/vuln/detail/CVE-2026-66033
- GitHub libssh2 Commit: https://github.com/libssh2/libssh2/commit/a2ed82d40964bbc0d64cd717aa0a5a892117d2e6
- GitHub libssh2 PR #2401: https://github.com/libssh2/libssh2/pull/2401
- VulnCheck Advisory: https://www.vulncheck.com/advisories/libssh2-integer-underflow-dos-via-aes-gcm-cipher-negotiation
Ngày phát hành: 24/07/2026
Nguồn: NVD — CVE-2026-66033
Tham khảo: https://github.com/libssh2/libssh2/commit/a2ed82d40964bbc0d64cd717aa0a5a892117d2e6
Tham khảo: https://github.com/libssh2/libssh2/pull/2401
Tham khảo: https://www.vulncheck.com/advisories/libssh2-integer-underflow-dos-via-aes-gcm-cipher-negotiation