{"id":"CVE-2026-66754","summary":"Rouille 0.1.6 - 3.6.2 Reachable Assertion DoS via remove_prefix percent-encoding","details":"Rouille 0.1.6 through 3.6.2 contains a reachable assertion vulnerability in the Request::remove_prefix function that allows remote unauthenticated attackers to crash the server by sending a crafted percent-encoded URL. Attackers can send a request whose decoded path matches a configured prefix while the raw percent-encoded path does not, causing the assert! to fail and triggering either a 500 error or full process termination depending on the panic configuration.","modified":"2026-08-01T03:33:03.729600386Z","published":"2026-07-28T16:04:29.604Z","database_specific":{"cna_assigner":"VulnCheck","cwe_ids":["CWE-617"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/66xxx/CVE-2026-66754.json"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/66xxx/CVE-2026-66754.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-66754"},{"type":"ADVISORY","url":"https://www.vulncheck.com/advisories/rouille-reachable-assertion-dos-via-remove-prefix-percent-encoding"},{"type":"PACKAGE","url":"https://github.com/tomaka/rouille"},{"type":"EVIDENCE","url":"https://github.com/theopaid/Remote-Denial-of-Service-via-Reachable-Assertion-in-URL-Prefix-Handling-rouille-"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/tomaka/rouille","events":[{"introduced":"0"},{"last_affected":"536fa0eacaeef93168f3378a0296e3f99da7b3af"}],"database_specific":{"extracted_events":[{"introduced":"0.1.6"},{"last_affected":"3.6.2"}],"source":"AFFECTED_FIELD"}}],"versions":["v3.6.2","v3.6.1","v3.6.0","v3.5.0","v3.4.0","v3.3.1","v3.3.0","v3.2.1","v3.2.0","v3.1.1","v3.1.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-66754.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N"}]}