Điểm chính
- Lỗ hổng CVE-2026-97229 trên GitLab đạt điểm CVSS tối đa 10.0, cho phép kẻ tấn công thực thi mã từ xa.
- Nguyên nhân cốt lõi bắt nguồn từ lỗi tràn số nguyên trong trình biên dịch regex khi xử lý ký tự Unicode trong hệ thống CI/CD.
- Kẻ tấn công có thể lợi dụng endpoint CI lint mà không cần xác thực để kiểm soát máy chủ dưới quyền tài khoản git.
Một lỗ hổng bảo mật nghiêm trọng mang mã định danh CVE-2026-97229 vừa được phát hiện trên GitLab, tạo ra nguy cơ thực thi mã từ xa (RCE) đối với các máy chủ đang sử dụng. Với điểm số CVSS đạt mức tối đa 10.0, đây được đánh giá là rủi ro cao nhất, đòi hỏi các đơn vị vận hành phải nhanh chóng tiến hành vá lỗi để phòng ngừa các cuộc tấn công mạng.
Nguyên nhân và cơ chế hình thành lỗ hổng
Theo ghi nhận từ cộng đồng nghiên cứu bảo mật, điểm yếu này xuất phát từ một lỗi tràn số nguyên nằm bên trong trình biên dịch biểu thức chính quy của hệ thống CI/CD trên GitLab. Sự cố kích hoạt khi nền tảng tiếp nhận các cấu hình pipeline đặc thù, kết hợp cùng các đường dẫn kho lưu trữ có chứa ký tự Unicode.
Chi tiết quá trình diễn ra qua endpoint CI lint, tính năng chuyên dùng để rà soát tính hợp lệ cho các tệp cấu hình CI/CD. Thời điểm kẻ xấu đưa tệp cấu hình mã độc vào nhánh của một dự án mở, trình biên dịch regex tiến hành xử lý các đường dẫn nói trên. Việc ứng dụng ký tự Unicode khiến ngôn ngữ Ruby thực hiện biên dịch lại biểu thức sau bước kiểm tra kích thước của GitLab, gây ra hiện trạng tràn số nguyên và bẻ lái luồng hoạt động của engine regex sang hàm thực thi lệnh.
Phương thức khai thác và tác động thực tế
Dựa trên mã khai thác thử nghiệm (PoC) do chuyên gia Jonah Burgess công bố, kịch bản tấn công đòi hỏi kẻ gian phải có quyền đẩy nhánh vào một dự án công khai. Tiếp đó, đối tượng gửi yêu cầu tới endpoint CI lint hoàn toàn không cần thông qua token xác thực hay cookie. Dù tiến trình lệnh chỉ chạy dưới quyền của tài khoản git thay vì quyền quản trị tối cao, mức độ can thiệp này vẫn đủ để chiếm quyền kiểm soát máy chủ mục tiêu.
Các chuyên gia cũng chỉ ra rằng tiến trình khai thác thường đi kèm hiện tượng lỗi HTTP 502 do tiến trình worker bị đóng đột ngột sau khi lệnh hoàn tất. Dù vậy, phản hồi này không đồng nghĩa với việc tấn công bất thành; trên thực tế, kết quả lệnh vẫn được chuyển về qua hình thức callback, chứng minh việc thực thi mã từ xa đã diễn ra trót lọt.
Biện pháp khắc phục và khuyến nghị
Trước mối đe dọa từ CVE-2026-97229, lực lượng quản trị hệ thống cần nhanh chóng triển khai các phương án xử lý cần thiết. Do mã PoC đã được phát tán công khai, mức độ rủi ro bị lợi dụng trong thực tế là rất lớn, buộc những tổ chức vận hành phiên bản GitLab tự quản lý phải xem đây là nhiệm vụ bảo mật ưu tiên hàng đầu.



