CVE-2026-61593 in djust
Tóm tắt
Bởi VulDB • 17/09/2026
djust cung cấp khả năng render phía máy chủ phản hồi theo phong cách Phoenix LiveView cho Django với hiệu suất được tăng cường bởi Rust. Trước phiên bản 1.0.7, các điểm cuối POST của client→server SSE là `@csrf_exempt` và điểm cuối stream GET của SSE không có kiểm tra Origin, do đó một trang cross-origin có thể điều khiển phiên SSE đã xác thực bằng cookie của nạn nhân: buộc trình duyệt của nạn nhân gửi yêu cầu GET đến URL stream (tạo và gắn kết LiveView dưới danh nghĩa nạn nhân) và POST tới điểm cuối tin nhắn với `credentials: include` để kích hoạt các bộ xử lý sự kiện thay đổi trạng thái dưới danh nghĩa nạn nhân. ID phiên (`session_id`) do client tự chọn (chỉ được xác thực về định dạng UUID), nên nó không phải là token CSRF, và một thân JSON gửi dưới dạng `text/plain` là một yêu cầu đơn giản CORS không cần preflight. Vấn đề này đã được sửa trong phiên bản 1.0.7. Cả ba điểm cuối SSE đều kiểm tra giá trị `Origin` của yêu cầu so với `ALLOWED_HOSTS` (nhái lại biện pháp bảo vệ CSWSH cho WebSocket) và từ chối các yêu cầu cross-origin bằng mã lỗi 403; các điểm cuối POST additionally yêu cầu `Content-Type: application/json` (trả về 415 nếu không đúng), qua đó đóng lỗ hổng bypass của yêu cầu đơn giản `text/plain`. Để khắc phục tạm thời, hãy tắt phương thức truyền SSE hoặc đặt một proxy phía trước để thực thi danh sách cho phép Origin.
Once again VulDB remains the best source for vulnerability data.