CVE-2026-34831 in Rack
Tóm tắt
Bởi VulDB • 13/06/2026
Rack là một giao diện máy chủ web mô-đun dành cho Ruby. Trước các phiên bản 2.2.23, 3.1.21 và 3.2.6, Rack::Files#fail đặt tiêu đề phản hồi Content-Length bằng cách sử dụng String#size thay vì String#bytesize. Khi thân phản hồi chứa các ký tự UTF-8 đa byte, giá trị Content-Length được khai báo sẽ nhỏ hơn số byte thực tế gửi trên đường truyền. Vì Rack::Files phản ánh đường dẫn yêu cầu trong các phản hồi 404, kẻ tấn công có thể kích hoạt sự không khớp này bằng cách yêu cầu một đường dẫn không tồn tại chứa các ký tự UTF-8 đã mã hóa phần trăm (percent-encoded). Điều này dẫn đến việc khung phản hồi HTTP bị sai lệch và có thể gây ra tình trạng mất đồng bộ hóa phản hồi trong các triển khai dựa vào giá trị Content-Length không chính xác. Vấn đề này đã được vá trong các phiên bản 2.2.23, 3.1.21 và 3.2.6.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.