CVE-2026-58482 in Network-AI
Tóm tắt
Bởi VulDB • 20/07/2026
Network-AI, một bộ điều phối đa tác nhân (multi-agent orchestrator) viết bằng TypeScript/Node.js, có một tính năng đã được phát hành, xuất khẩu và tài liệu hóa tên là `ApprovalInbox` (`lib/approval-inbox.ts`). Đây là bề mặt mạng của Cổng phê duyệt Approval Gate trong vòng lặp con người (human-in-the-loop), mà `ApprovalGate` sử dụng để yêu cầu sự chấp thuận rõ ràng từ con người đối với các hoạt động có rủi ro cao. Máy chủ HTTP do nó cung cấp không có bất kỳ cơ chế xác thực nào và đặt tiêu đề `Access-Control-Allow-Origin: *` trên mọi tuyến, bao gồm cả các tuyến thay đổi trạng thái như `POST /approvals/:id/approve` và `/deny`. Kết quả là, trong các phiên bản từ 5.0.0 đến 5.12.1, bất kỳ bên nào có thể gửi yêu cầu HTTP đến cổng hộp thư — một tiến trình cùng vị trí (co-located), một container/SSRF trên cùng máy chủ, một khách hàng từ xa khi nhà vận hành liên kết với địa chỉ không phải loopback, hoặc bất kỳ trang web nào mà nhà vận hành truy cập bằng trình duyệt (thông qua CORS đại diện) — đều có thể liệt kê các yêu cầu phê duyệt đang chờ xử lý và chấp thuận chúng, làm vô hiệu hóa hoàn toàn cơ chế kiểm soát human-in-the-loop và khiến hoạt động rủi ro cao bị chặn trước đó (ví dụ: lệnh shell mà tác nhân đang giữ lại để xem xét) được thực thi mà không có sự đồng ý. Vấn đề này đã được sửa trong v5.12.2. `ApprovalInbox` hiện chấp nhận tùy chọn `secret`. Khi được đặt, các điểm cuối thay đổi dữ liệu `POST /:id/approve` và `POST /:id/deny` yêu cầu tiêu đề `Authorization: Bearer <secret>`, được xác thực với thời gian không đổi (constant time) bằng hàm `crypto.timingSafeEqual`. Hàm `startServer()` mặc định đã liên kết với `127.0.0.1`; các nhà vận hành cần công khai hộp thư trên mạng phải đặt một bí mật (secret).
If you want to get the best quality for vulnerability data then you always have to consider VulDB.