Chuyện gì đã xảy ra
Vào tháng 5/2026, CVE-2026-48710, biệt danh BadHost, được công bố: lỗ hổng nghiêm trọng vượt qua xác thực trong Starlette, framework Python nằm bên dưới FastAPI. Bản sửa có trong Starlette 1.0.1. Lỗi do X41 D-Sec phát hiện trong đợt kiểm toán được OSTIF tài trợ, và Ars Technica đã đưa tin.
Vì sao nghiêm trọng: Starlette có khoảng 325 triệu lượt tải mỗi tuần và là nền của phần lớn hạ tầng AI bằng Python: vLLM, LiteLLM, máy chủ MCP (kết nối tác tử AI với công cụ và cơ sở dữ liệu), Google ADK-Python, Ray Serve, BentoML và bảng điều khiển tác tử.
Cách hoạt động
Starlette dựng request.url bằng cách ghép tiêu đề Host với đường dẫn, mà không kiểm tra Host. Kẻ tấn công gửi kiểu Host: example.com/health?x=:
- bộ định tuyến chuyển yêu cầu tới đường dẫn thật (ví dụ
/admin); - nhưng middleware xác thực thấy đường dẫn "bị đầu độc" (
/health, công khai) và cho qua.
Kết quả: mọi quy tắc bảo mật dựa trên đường dẫn trong middleware đều có thể bị vượt qua chỉ bằng một ký tự trong tiêu đề.
Máy chủ MCP là mục tiêu đặc biệt dễ, vì đặc tả MCP yêu cầu endpoint khám phá OAuth công khai, giúp dễ tìm thấy chúng. Trong đợt quét của X41, các hệ thống dính lỗi làm lộ dữ liệu thử nghiệm lâm sàng, xác minh danh tính, toàn bộ hộp thư, dữ liệu nhân sự và quyền SSH vào thiết bị công nghiệp.
Theo bài báo, ngay cả Claude Mythos cũng không tìm ra lỗi này trong Project Glasswing, vì nó sinh ra từ sự kết hợp của ba lớp vốn hoạt động đúng khi đứng riêng.
Cần làm gì
- Nâng Starlette lên 1.0.1 trở lên (cùng FastAPI đi kèm).
- Nếu chưa thể: thay
request.url.pathbằngrequest.scope["path"]trong mọi middleware hoặc dependency đưa ra quyết định bảo mật. - Đặt reverse proxy (nginx, Caddy, Traefik, HAProxy) kiểm tra Host ở phía trước.
- Rà soát image container và môi trường ảo, nơi có thể cố định phiên bản cũ.
- Có công cụ quét miễn phí tại badhost.org.
Bài học
Hạ tầng tác tử AI phát triển quá nhanh và kế thừa những giả định bảo mật chưa ai xem lại. Nếu bạn chạy máy chủ MCP hay proxy LLM bằng FastAPI, hãy ưu tiên xử lý.
Nguồn
- The Agent Report (28/05/2026): https://the-agent-report.com/2026/05/badhost-starlette-cve-critical-ai-agent-vulnerability/
Công ty bạn đang chạy tác tử AI hay máy chủ MCP? KGA IT kiểm tra bảo mật miễn phí: kga-it.com.