Lỗ hổng zero-day SGLang cực kỳ nguy hiểm

Lỗ hổng zero-day SGLang cực kỳ nguy hiểm

lỗ hổng zero-day trong SGLang inference server cho phép thực thi mã tùy ý trên máy chủ suy luận AI. Lỗ hổng này được theo dõi dưới mã CVE-2026-5760 và có thể bị khai thác thông qua các mô hình GGUF chứa payload độc hại, dẫn đến remote code execution trên hệ thống lưu trữ mô hình.

Cơ chế tấn công đặt ra rủi ro bảo mật nghiêm trọng cho các triển khai AI doanh nghiệp, đặc biệt khi tải mô hình từ kho công khai như Hugging Face mà không có bước xác minh nguồn. Thông tin tham chiếu về mã CVE có thể tra cứu tại NVD.

Phân tích lỗ hổng CVE-2026-5760 trong SGLang

Nguyên nhân gốc nằm ở cách SGLang xử lý các conversational template do mô hình máy học cung cấp. Lỗi xuất hiện trong reranking endpoint, được truy cập qua đường dẫn /v1/rerank.

Khi SGLang render các chat template này, framework được cấu hình dùng engine Jinja2 thông qua thiết lập environment() thay vì một cơ chế sandbox an toàn hơn. Do quá trình render không bị cô lập hoặc giới hạn đúng cách, bất kỳ đoạn Python script nào nhúng trong metadata của mô hình đều có thể tự động chạy.

Cách triển khai này tạo ra một tình huống điển hình của Server-Side Template Injection (SSTI), từ đó cho phép kẻ tấn công kiểm soát tiến trình suy luận AI và mở rộng thành remote code execution.

Điều kiện khai thác và chuỗi tấn công

Để khai thác lỗ hổng zero-day này, kẻ tấn công không cần truy cập trực tiếp vào hạ tầng mục tiêu hay mạng nội bộ của doanh nghiệp. Thay vào đó, chúng chỉ cần khiến quản trị viên hệ thống hoặc pipeline triển khai tự động tải một file mô hình đã bị chèn mã độc.

Chuỗi khai thác được mô tả trong proof-of-concept exploit do nhà nghiên cứu Stuub công bố trên GitHub: https://github.com/Stuub/SGLang-0.5.9-RCE.

Cơ chế khai thác qua Jinja2

Payload độc hại tận dụng kỹ thuật escape đã biết của Jinja2 để thực thi lệnh hệ thống. Bằng cách chèn lệnh OS popen qua template variables, mã độc thoát khỏi phạm vi xử lý dự kiến của ứng dụng và chạy các lệnh của hệ điều hành.

Khi khai thác thành công, kẻ tấn công đạt được Remote Code Execution (RCE). Từ đây, chúng có thể:

  • Đọc hoặc đánh cắp dữ liệu nhạy cảm trên máy chủ.
  • Cài đặt mã độc hoặc công cụ hậu khai thác.
  • Di chuyển sang các tài nguyên mạng nội bộ khác.

Đây là một cảnh báo CVE cho chuỗi cung ứng AI, vì một mô hình tưởng chừng hợp lệ có thể trở thành phương tiện xâm nhập trái phép vào hệ thống bị tấn công.

Ảnh hưởng hệ thống và phạm vi rủi ro bảo mật

Lỗ hổng này không chỉ tác động đến tiến trình suy luận AI mà còn ảnh hưởng trực tiếp đến máy chủ nền tảng. Khi mô hình độc hại được nạp vào, mã nhúng trong metadata có thể chạy trong bối cảnh của dịch vụ SGLang, làm lộ dữ liệu, phá vỡ tính toàn vẹn của ứng dụng và mở rộng quyền điều khiển sang các thành phần khác.

Với các hệ thống triển khai AI quy mô lớn, nguy cơ nằm ở việc một file mô hình từ nguồn không tin cậy có thể kích hoạt hệ thống bị xâm nhập mà không cần khai thác mạng truyền thống. Điều này làm tăng đáng kể nguy cơ bảo mật trong pipeline triển khai và vận hành.

Khuyến nghị bảo vệ và giảm thiểu

Các nhóm kỹ thuật cần kiểm tra nghiêm ngặt an toàn thông tin trong toàn bộ AI supply chain và chỉ cho phép triển khai GGUF từ nguồn đã xác minh. Việc rà soát file mô hình trước khi nạp vào môi trường production là cần thiết để giảm nguy cơ lỗ hổng zero-day bị khai thác qua template injection.

Ngoài ra, cần xem xét lại cách SGLang sử dụng Jinja2 trong môi trường render template, đặc biệt tại endpoint /v1/rerank. Nếu framework không cung cấp sandbox phù hợp, khả năng thực thi lệnh hệ thống sẽ tiếp tục là một điểm rủi ro trọng yếu.

Trong bối cảnh này, cập nhật bản vá và kiểm soát nguồn mô hình là hai bước bắt buộc để giảm thiểu rủi ro bảo mật từ các lỗ hổng CVE tương tự. Việc giám sát tải mô hình, kiểm tra metadata và giới hạn đặc quyền của dịch vụ suy luận cũng cần được áp dụng như một phần của quy trình bảo mật chuẩn.