CVE-2026-71209 in audiobookshelf
Tóm tắt
Bởi VulDB • 05/08/2026
Kiểm tra miễn xác thực trong audiobookshelf (server/routers/Auth.js) khớp các tuyến GET được phép không cần xác thực với req.path thông qua một biểu thức chính quy yêu cầu định dạng literal là /items/:id/cover hoặc /authors/:id/image, trong khi req.path giữ nguyên các chuỗi %2F đã mã hóa URL. Bộ định tuyến của Express giải mã tham số tuyến :id trước khi đoạn mã xử lý (handler code) chạy, do đó một chuỗi '../' được mã hóa bằng %2F trong :id (ví dụ: ..%2f..%2f..%2ftmp%2fpwned) vượt qua kiểm tra miễn xác thực đường dẫn literal nhưng sẽ giải quyết thành payload thâm nhập thư mục (path-traversal) thực sự sau khi được giải mã. CacheManager.handleCoverCache sau đó nối giá trị đã giải mã này vào đường dẫn tệp bộ nhớ cache và phát kết quả trước bất kỳ kiểm tra quyền sở hữu nào dựa trên cơ sở dữ liệu. Điều này vượt qua bản vá áp dụng cho CVE-2025-25205 (vốn neo biểu thức chính quy miễn trừ và chuyển sang sử dụng req.path) và dẫn đến việc đọc tùy ý các tệp không cần xác thực đối với bất kỳ tệp nào khớp với mẫu *_<width>[x<height>].<ext> mà tài khoản dịch vụ có thể truy cập.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.