{"id":"CVE-2026-114216","revision":"da2d061e757a4e1085aa274861cd0d71","records":[{"revision":"da2d061e757a4e1085aa274861cd0d71","observedAt":"2026-10-26T16:35:30.797+00:00","statement":{"source":"cve-program","id":"CVE-2026-114216","aliases":[],"title":"Chunk extensions accept bare LF and CR, enabling request smuggling in Bandit","description":"Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling') vulnerability in the HTTP/1.1 chunked body reader of mtrudel bandit allows an unauthenticated remote attacker to smuggle a second request past a front-end proxy via a chunk extension that contains a bare LF.\n\nThe chunked reader in lib/bandit/http1/socket.ex takes the chunk-size line to be everything up to the first CRLF and discards everything after ; without checking it against the RFC 9112 chunk-ext grammar, so bare LF, bare CR and other control bytes pass. A proxy that ends the size line at a bare LF reads 2;\\nxx\\r\\n40\\r\\n... as one request whose second chunk holds a GET /admin, while Bandit ends the body early and dispatches GET /admin as a separate pipelined request. Deployments without such a proxy in front of Bandit are not affected.\n\nThis issue affects bandit: from 1.12.4 before 1.14.0.","state":0,"publishedAt":"2026-10-26T13:30:41.225+00:00","modifiedAt":"2026-10-26T15:35:51.933+00:00","affected":[{"ecosystem":"https://repo.hex.pm","name":"bandit","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"collectionURL\": \"https://repo.hex.pm\",\n                    \"cpes\": [\n                        \"cpe:2.3:a:mtrudel:bandit:*:*:*:*:*:*:*:*\"\n                    ],\n                    \"defaultStatus\": \"unaffected\",\n                    \"packageName\": \"bandit\",\n                    \"packageURL\": \"pkg:hex/bandit\",\n                    \"product\": \"bandit\",\n                    \"repo\": \"https://github.com/mtrudel/bandit\",\n                    \"vendor\": \"mtrudel\",\n                    \"versions\": [\n                        {\n                            \"lessThan\": \"1.14.0\",\n                            \"status\": \"affected\",\n                            \"version\": \"1.12.4\",\n                            \"versionType\": \"semver\"\n                        }\n                    ]\n                }"},{"ecosystem":"https://github.com","name":"mtrudel/bandit","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"collectionURL\": \"https://github.com\",\n                    \"cpes\": [\n                        \"cpe:2.3:a:mtrudel:bandit:*:*:*:*:*:*:*:*\"\n                    ],\n                    \"defaultStatus\": \"unaffected\",\n                    \"packageName\": \"mtrudel/bandit\",\n                    \"packageURL\": \"pkg:github/mtrudel/bandit\",\n                    \"product\": \"bandit\",\n                    \"repo\": \"https://github.com/mtrudel/bandit\",\n                    \"vendor\": \"mtrudel\",\n                    \"versions\": [\n                        {\n                            \"lessThan\": \"220b9dfd27f9a21305be2afc75cbe585ddc24e7a\",\n                            \"status\": \"affected\",\n                            \"version\": \"c31e9e3c76dcbfc239a96eabed5341ced7885ae5\",\n                            \"versionType\": \"git\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:L/SI:L/SA:N","score":6.3,"severity":"MEDIUM"}],"references":["https://github.com/mtrudel/bandit/security/advisories/GHSA-w5wc-g2hc-g7m2","https://cna.erlef.org/cves/CVE-2026-114216.html","https://osv.dev/vulnerability/EEF-CVE-2026-114216","https://github.com/mtrudel/bandit/commit/c31e9e3c76dcbfc239a96eabed5341ced7885ae5","https://github.com/mtrudel/bandit/commit/220b9dfd27f9a21305be2afc75cbe585ddc24e7a"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-114216","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-114216","identifiers":["CVE-2026-114216"]},"retained":false,"historicalAffected":[]}],"coverage":[]}