{"id":"CVE-2026-44889","aliases":["GHSA-fh3h-vg37-cc95","PYSEC-2026-251"],"url":"https://o3.security/vulnerability/CVE-2026-44889","summary":"WebOb: Location header normalization during redirect leads to open redirect","details":"WebOb provides objects for HTTP requests and responses. Prior to 1.8.10, the normalization of the HTTP Location header during a redirect is vulnerable to an open redirect: WebOb joins the redirect target to the request URI using Python's urljoin, and since Python 3.10 the underlying urlsplit strips ASCII tab, carriage return, and newline characters before parsing, so a redirect target containing such characters can be reinterpreted as a protocol-relative URL whose authority is an attacker-controlled host. This bypasses the CVE-2024-42353 fix that escaped a leading double slash, allowing an attacker who influences the redirect location to send users to an arbitrary external site instead of the intended one. This vulnerability is fixed in 1.8.10.","published":"2026-06-22T21:30:11.789Z","modified":"2026-08-12T03:51:48.434747946Z","cvss":{"score":6.1,"severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"},"epss":{"score":0.00162,"percentile":0.05863,"asOf":"2026-08-20"},"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"PyPI","name":"webob","fixedVersion":"1.8.10"}],"fix":null,"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/44xxx/CVE-2026-44889.json"},{"type":"ADVISORY","url":"https://github.com/Pylons/webob/security/advisories/GHSA-fh3h-vg37-cc95"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-44889"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-12T03:51:48.434747946Z"}}