GitLab vá lỗ hổng AI Gateway nghiêm trọng 9.9 cho phép thực thi lệnh trên các máy chủ tự vận hành

Một lỗ hổng nghiêm trọng trong AI Gateway của GitLab có thể cho phép một người dùng đã đăng nhập với quyền truy cập Duo Agent Platform thực thi các lệnh trên gateway trong một số điều kiện nhất định. Lỗ hổng này ảnh hưởng đến các tổ chức tự vận hành gateway và đã được vá trong các phiên bản 19.2.4, 19.3.2 và 19.4.1. Lỗ hổng có mã danh CVE-2026-90970 với điểm CVSS cực cao 9.9/10.
Lỗ hổng GitLab AI Gateway

Một lỗ hổng nghiêm trọng trong AI Gateway của GitLab có thể cho phép một người dùng đã đăng nhập với quyền truy cập Duo Agent Platform thực thi các lệnh trên gateway trong một số điều kiện nhất định, GitLab cho biết trong một thông báo bảo mật.

AI Gateway là dịch vụ kết nối phiên bản GitLab với các mô hình AI, và chỉ những tổ chức tự vận hành (self-host) gateway của riêng họ mới cần thực hiện hành động khắc phục. Lỗ hổng đã được vá trong các phiên bản gateway 19.2.4, 19.3.2 và 19.4.1.

Lỗ hổng này được theo dõi mã danh CVE-2026-90970. GitLab đã công bố vào ngày 2 tháng 10 và xếp hạng mức độ nghiêm trọng với điểm CVSS là 9.9 trên 10.

GitLab vận hành AI Gateways cho khách hàng của mình và đã tiến hành vá lỗi cho các hệ thống này. Khách hàng sử dụng GitLab.com, GitLab Dedicated và các phiên bản tự quản lý (self-managed) sử dụng gateway do GitLab lưu trữ không cần phải thực hiện hành động nào, công ty cho biết.

Thay vào đó, các khách hàng tự quản lý có thể tự vận hành gateway của riêng họ, một tùy chọn mà GitLab cung cấp để giữ dữ liệu yêu cầu và phản hồi AI bên trong môi trường của chính khách hàng. GitLab khuyến nghị mạnh mẽ các khách hàng này nên cập nhật ngay lập tức. Công ty đã gửi hướng dẫn này cho các khách hàng có gateway tự vận hành trước khi công bố bản tin bảo mật.

Thông báo không cho biết liệu lỗ hổng đã bị khai thác trong các cuộc tấn công hay chưa. Cơ quan An ninh Cơ sở hạ tầng và An ninh mạng Hoa Kỳ (CISA) đã thêm một đánh giá vào hồ sơ CVE vào ngày 2 tháng 10, liệt kê tình trạng khai thác là "none" (chưa có). Hai giá trị khác của CISA bao gồm "public proof of concept" (đã có mã khai thác thử nghiệm công khai) và "active exploitation" (đang bị khai thác thực tế).

Các phiên bản bị ảnh hưởng và đã được vá lỗi

Các phiên bản dưới đây là các phiên bản AI Gateway. Gateway được cài đặt dưới dạng hình ảnh Docker riêng biệt hoặc biểu đồ Helm và có các bước cập nhật riêng.

Phiên bản Gateway đang sử dụng Phiên bản đã vá lỗi đầu tiên
18.1.6 hoặc mới hơn, trước 19.2.4 19.2.4
19.3, trước 19.3.2 19.3.2
19.4, trước 19.4.1 19.4.1

Để cập nhật triển khai Docker, hãy dừng và xóa container đang chạy, sau đó kéo (pull) và chạy tag hình ảnh mới, ví dụ: self-hosted-v19.4.1-ee. Các triển khai Helm sẽ thiết lập tag mới trong cài đặt hình ảnh của biểu đồ.

Không có phiên bản vá lỗi nào được liệt kê dưới 19.2.4. Điều này đồng nghĩa với việc mọi bản phát hành gateway từ 18.1.6 đến dòng 19.1 đều nằm trong phạm vi bị ảnh hưởng.

Hướng dẫn cài đặt của GitLab yêu cầu quản trị viên sử dụng hình ảnh gateway khớp với phiên bản phụ (minor version) của GitLab. Thông báo không cho biết liệu gateway 19.2.4 có hoạt động với GitLab 19.1 hoặc cũ hơn hay không, hoặc liệu các bản vá cho các dòng cũ hơn có được lên kế hoạch hay không.

Tính đến ngày 2 tháng 10, chính sách bảo trì của GitLab liệt kê 19.4, 19.3 và 19.2 là các bản phát hành GitLab nhận được các bản vá bảo mật. Đây cũng là ba dòng nhận được bản vá cho gateway.

Không có biện pháp khắc phục tạm thời (workaround) nào được liệt kê cho các gateway chưa thể cập nhật. Thông báo cũng không cung cấp cách thức để kiểm tra xem một gateway đã bị tấn công trước khi được cập nhật hay chưa.

Thông tin chi tiết về lỗ hổng

Lỗ hổng nằm trong mẫu gợi ý (prompt template) của một quy trình tùy chỉnh (custom flow), theo tiêu đề của thông báo bảo mật. Custom flow là một quy trình làm việc được hỗ trợ bởi AI mà người dùng tạo trên Duo Agent Platform để tự động hóa các tác vụ nhiều bước.

Một người dùng đã đăng nhập với quyền truy cập Duo Agent Platform có thể sử dụng lỗ hổng này để "thoát khỏi sandbox của mẫu gợi ý thông qua một cấu hình luồng được tạo đặc biệt," GitLab cho biết. Việc thoát khỏi sandbox có thể dẫn đến thực thi lệnh tùy ý (arbitrary command execution) trên gateway.

Các điều kiện cần thiết cho cuộc tấn công không được mô tả chi tiết, và không có vai trò người dùng nào được nêu tên ngoài quyền truy cập Duo Agent Platform.

Một gateway tự vận hành lưu trữ các khóa ký cho JSON Web Tokens (JWT), mà hướng dẫn cài đặt của GitLab cho biết phải được xử lý như các thông tin xác thực nhạy cảm. Nó cũng kết nối với phiên bản GitLab và với các nhà cung cấp mô hình AI của tổ chức.

GitLab đã ghi nhận người dùng HackerOne invisiblemeerkat đã báo cáo lỗ hổng này.

Vào tháng 2, GitLab đã vá một lỗ hổng gateway khác, CVE-2026-1868, cũng được xếp hạng 9.9. Một người dùng đã đăng nhập có thể tiếp cận lỗ hổng đó thông qua một định nghĩa luồng được tạo sẵn, và nó có thể dẫn đến từ chối dịch vụ hoặc thực thi mã trên gateway.

Cả hai lỗ hổng đều là điểm yếu của công cụ mẫu (template engine) cùng loại, CWE-1336. Thông báo mới không đề cập đến lỗ hổng hồi tháng 2.