{"id":"CVE-2026-42581","title":"Netty is an asynchronous, event-driven network application framework","summary":"Netty is an asynchronous, event-driven network application framework. Prior to 4.2.13.Final and 4.1.133.Final, HttpObjectDecoder strips a conflicting Content-Length header when a request carries both Transfer-Encoding: chunked and Conten…","severity":"medium","cvss":5.8,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:N","cwe":["CWE-444"],"vendor":"netty","product":"netty","affected":["netty < 4.1.133","netty >= 4.2.0, < 4.2.13"],"patched":["netty 4.2.13"],"published":"2026-05-13","updated":"2026-09-18","sourceUpdated":"2026-09-18T13:18:20.120","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-42581","references":[{"url":"https://github.com/netty/netty/security/advisories/GHSA-xxqh-mfjm-7mv9","label":"security-advisories@github.com"},{"url":"https://access.redhat.com/errata/RHSA-2026:23808","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:24502","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:25123","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:28010","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:36820","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:37390","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:42644","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:49700","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:49701","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:53644","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:53645","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:53646","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:54435","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:65126","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:66488","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:66545","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/security/cve/CVE-2026-42581","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2477232","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://github.com/netty/netty/security/advisories/GHSA-xxqh-mfjm-7mv9","label":"134c704f-9b21-4f2e-91b3-4a467353bcc0"},{"url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-42581.json","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:53806","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-42581"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-42581"},{"url":"https://access.redhat.com/errata/RHSA-2026:69459"}],"tags":["nvd","cve.org","exploit-available","csaf","vex","red-hat"],"epss":0.0063,"epssPercentile":0.48507,"exploitAvailable":true,"ssvc":{"exploitation":"poc","automatable":"yes","technicalImpact":"partial","timestamp":"2026-05-13T18:42:38.397208Z"},"scores":{"nvd":5.8,"vendor":7.2,"cna":5.8},"ingestedAt":"2026-07-10T02:55:35.309Z","slug":"CVE-2026-42581","body":"## Overview\n\nNetty is an asynchronous, event-driven network application framework. Prior to 4.2.13.Final and 4.1.133.Final, HttpObjectDecoder strips a conflicting Content-Length header when a request carries both Transfer-Encoding: chunked and Content-Length, but only for HTTP/1.1 messages. The guard is absent for HTTP/1.0. An attacker that sends an HTTP/1.0 request with both headers causes Netty to decode the body as chunked while leaving Content-Length intact in the forwarded HttpMessage. Any downstream proxy or handler that trusts Content-Length over Transfer-Encoding will disagree on message boundaries, enabling request smuggling. This vulnerability is fixed in 4.2.13.Final and 4.1.133.Final.\n\n## Affected\n\n- `netty < 4.1.133`\n- `netty >= 4.2.0, < 4.2.13`\n\n## Remediation\n\nUpgrade past the affected range:\n\n- `netty 4.2.13`\n\n## Vendor advisories\n\n- **RHSA-2026:49700** · Red Hat · fixed in: Red Hat JBoss EAP 8.1 for RHEL 10, Red Hat JBoss EAP 8.1 for RHEL 8, Red Hat JBoss EAP 8.1 for RHEL 9 · released 2026-08-03 · [advisory](https://access.redhat.com/errata/RHSA-2026:49700)\n- **RHSA-2026:53644** · Red Hat · fixed in: Red Hat JBoss EAP 7.4 ELS for RHEL 7 Server · released 2026-08-11 · [advisory](https://access.redhat.com/errata/RHSA-2026:53644)\n- **RHSA-2026:28010** · Red Hat · fixed in: Cryostat 4 on RHEL 9 · released 2026-06-22 · [advisory](https://access.redhat.com/errata/RHSA-2026:28010)\n- **RHSA-2026:53806** · Red Hat · fixed in: Red Hat JBoss Enterprise Application Platform 7.4.25 · released 2026-08-11 · [advisory](https://access.redhat.com/errata/RHSA-2026:53806)\n- **RHSA-2026:42644** · Red Hat · fixed in: Red Hat OpenShift AI 2.25 · released 2026-07-21 · [advisory](https://access.redhat.com/errata/RHSA-2026:42644)\n- **RHSA-2026:25123** · Red Hat · fixed in: Red Hat OpenShift Dev Spaces 3.28 · released 2026-06-10 · [advisory](https://access.redhat.com/errata/RHSA-2026:25123)\n- **RHSA-2026:36820** · Red Hat · fixed in: Red Hat OpenShift Dev Spaces 3.29 · released 2026-07-08 · [advisory](https://access.redhat.com/errata/RHSA-2026:36820)\n- **RHSA-2026:37390** · Red Hat · fixed in: Red Hat build of Apache Camel 4.18.1.P1 for Spring Boot 3.5.16 · released 2026-07-09 · [advisory](https://access.redhat.com/errata/RHSA-2026:37390)\n- **RHSA-2026:23808** · Red Hat · fixed in: Red Hat build of Quarkus 3.27.4 · released 2026-06-10 · [advisory](https://access.redhat.com/errata/RHSA-2026:23808)\n- **RHSA-2026:24502** · Red Hat · fixed in: Red Hat build of Quarkus 3.33.2 · released 2026-06-10 · [advisory](https://access.redhat.com/errata/RHSA-2026:24502)\n- **RHSA-2026:54435** · Red Hat · fixed in: Streams for Apache Kafka 3.2.1 · released 2026-08-12 · [advisory](https://access.redhat.com/errata/RHSA-2026:54435)\n- **Red Hat VEX** · Important · affected: OpenShift Serverless, Red Hat build of Apicurio Registry 2, Red Hat build of Apicurio Registry 3, Red Hat build of Debezium 3, Red Hat Build of Keycloak, Red Hat build of OptaPlanner 8, … · no fix planned: Red Hat build of OptaPlanner 8, Red Hat build of Apicurio Registry 2, Red Hat build of Debezium 3, Red Hat Build of Keycloak, … · updated 2026-09-21 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-42581.json)\n- **RHSA-2026:65126** · Red Hat · fixed in: Red Hat OpenShift AI 2.25 · released 2026-09-08 · [advisory](https://access.redhat.com/errata/RHSA-2026:65126)\n- **RHSA-2026:66545** · Red Hat · fixed in: Red Hat AMQ Broker 7.13.6 · released 2026-09-10 · [advisory](https://access.redhat.com/errata/RHSA-2026:66545)\n- **RHSA-2026:66488** · Red Hat · fixed in: Red Hat AMQ Broker 7.14.1 · released 2026-09-10 · [advisory](https://access.redhat.com/errata/RHSA-2026:66488)\n- **RHSA-2026:49701** · Red Hat · fixed in: Red Hat JBoss Enterprise Application Platform 8.1.7.GA · released 2026-08-03 · [advisory](https://access.redhat.com/errata/RHSA-2026:49701)\n- **RHSA-2026:53645** · Red Hat · fixed in: Red Hat JBoss EAP 7.4 ELS for RHEL 8 · released 2026-08-11 · [advisory](https://access.redhat.com/errata/RHSA-2026:53645)\n- **RHSA-2026:53646** · Red Hat · fixed in: Red Hat JBoss EAP 7.4 ELS for RHEL 9 · released 2026-08-11 · [advisory](https://access.redhat.com/errata/RHSA-2026:53646)\n- **RHSA-2026:69459** · Red Hat · fixed in: AMQ Clients 2026.Q3 · released 2026-09-21 · [advisory](https://access.redhat.com/errata/RHSA-2026:69459)","depth":"twilight","depthScore":44,"depthScoreParts":{"impact":31.9,"likelihood":0.1,"exploitation":12,"ransomware":0},"changes":[{"seq":201648,"id":"CVE-2026-42581","ts":1789399580688,"field":"exploit_available","old":"false","new":"true"},{"seq":200380,"id":"CVE-2026-42581","ts":1789397183242,"field":"exploit_available","old":"true","new":"false"},{"seq":198304,"id":"CVE-2026-42581","ts":1789391813010,"field":"exploit_available","old":"false","new":"true"},{"seq":196097,"id":"CVE-2026-42581","ts":1789383457923,"field":"exploit_available","old":"true","new":"false"},{"seq":195026,"id":"CVE-2026-42581","ts":1789380354588,"field":"exploit_available","old":"false","new":"true"},{"seq":193813,"id":"CVE-2026-42581","ts":1789378319678,"field":"exploit_available","old":"true","new":"false"},{"seq":192600,"id":"CVE-2026-42581","ts":1789376301790,"field":"exploit_available","old":"false","new":"true"},{"seq":191387,"id":"CVE-2026-42581","ts":1789373213747,"field":"exploit_available","old":"true","new":"false"},{"seq":190172,"id":"CVE-2026-42581","ts":1789369193978,"field":"exploit_available","old":"false","new":"true"},{"seq":188959,"id":"CVE-2026-42581","ts":1789368076007,"field":"exploit_available","old":"true","new":"false"},{"seq":187742,"id":"CVE-2026-42581","ts":1789365049885,"field":"exploit_available","old":"false","new":"true"},{"seq":186529,"id":"CVE-2026-42581","ts":1789363068701,"field":"exploit_available","old":"true","new":"false"},{"seq":185315,"id":"CVE-2026-42581","ts":1789361007181,"field":"exploit_available","old":"false","new":"true"},{"seq":184102,"id":"CVE-2026-42581","ts":1789357991876,"field":"exploit_available","old":"true","new":"false"},{"seq":182353,"id":"CVE-2026-42581","ts":1789354147109,"field":"exploit_available","old":"false","new":"true"},{"seq":181146,"id":"CVE-2026-42581","ts":1789352988194,"field":"exploit_available","old":"true","new":"false"},{"seq":179939,"id":"CVE-2026-42581","ts":1789350056783,"field":"exploit_available","old":"false","new":"true"},{"seq":178732,"id":"CVE-2026-42581","ts":1789347904621,"field":"exploit_available","old":"true","new":"false"},{"seq":177525,"id":"CVE-2026-42581","ts":1789346209584,"field":"exploit_available","old":"false","new":"true"},{"seq":176318,"id":"CVE-2026-42581","ts":1789342813194,"field":"exploit_available","old":"true","new":"false"},{"seq":175772,"id":"CVE-2026-42581","ts":1789338596251,"field":"exploit_available","old":"false","new":"true"},{"seq":175642,"id":"CVE-2026-42581","ts":1789338438473,"field":"exploit_available","old":"true","new":"false"},{"seq":174437,"id":"CVE-2026-42581","ts":1789334638263,"field":"exploit_available","old":"false","new":"true"},{"seq":173232,"id":"CVE-2026-42581","ts":1789333301683,"field":"exploit_available","old":"true","new":"false"},{"seq":172046,"id":"CVE-2026-42581","ts":1789330930272,"field":"exploit_available","old":"false","new":"true"},{"seq":170860,"id":"CVE-2026-42581","ts":1789328435847,"field":"exploit_available","old":"true","new":"false"},{"seq":169655,"id":"CVE-2026-42581","ts":1789326953984,"field":"exploit_available","old":"false","new":"true"},{"seq":168450,"id":"CVE-2026-42581","ts":1789323506155,"field":"exploit_available","old":"true","new":"false"},{"seq":167245,"id":"CVE-2026-42581","ts":1789319409571,"field":"exploit_available","old":"false","new":"true"},{"seq":166040,"id":"CVE-2026-42581","ts":1789318364075,"field":"exploit_available","old":"true","new":"false"},{"seq":164835,"id":"CVE-2026-42581","ts":1789315587241,"field":"exploit_available","old":"false","new":"true"},{"seq":163630,"id":"CVE-2026-42581","ts":1789313305565,"field":"exploit_available","old":"true","new":"false"},{"seq":162425,"id":"CVE-2026-42581","ts":1789311741048,"field":"exploit_available","old":"false","new":"true"},{"seq":161220,"id":"CVE-2026-42581","ts":1789308329213,"field":"exploit_available","old":"true","new":"false"},{"seq":160725,"id":"CVE-2026-42581","ts":1789304257862,"field":"exploit_available","old":"false","new":"true"},{"seq":158563,"id":"CVE-2026-42581","ts":1789299339093,"field":"exploit_available","old":"true","new":"false"},{"seq":157527,"id":"CVE-2026-42581","ts":1789296493440,"field":"exploit_available","old":"false","new":"true"},{"seq":156322,"id":"CVE-2026-42581","ts":1789294433206,"field":"exploit_available","old":"true","new":"false"},{"seq":155117,"id":"CVE-2026-42581","ts":1789292689653,"field":"exploit_available","old":"false","new":"true"},{"seq":153912,"id":"CVE-2026-42581","ts":1789289412321,"field":"exploit_available","old":"true","new":"false"},{"seq":152562,"id":"CVE-2026-42581","ts":1789281307031,"field":"exploit_available","old":"false","new":"true"},{"seq":148058,"id":"CVE-2026-42581","ts":1789270929992,"field":"exploit_available","old":"true","new":"false"},{"seq":146098,"id":"CVE-2026-42581","ts":1789269199056,"field":"exploit_available","old":"false","new":"true"},{"seq":145001,"id":"CVE-2026-42581","ts":1789266156575,"field":"exploit_available","old":"true","new":"false"},{"seq":143905,"id":"CVE-2026-42581","ts":1789262494215,"field":"exploit_available","old":"false","new":"true"},{"seq":142741,"id":"CVE-2026-42581","ts":1789261246191,"field":"exploit_available","old":"true","new":"false"},{"seq":141577,"id":"CVE-2026-42581","ts":1789258645752,"field":"exploit_available","old":"false","new":"true"},{"seq":140379,"id":"CVE-2026-42581","ts":1789256446450,"field":"exploit_available","old":"true","new":"false"},{"seq":139181,"id":"CVE-2026-42581","ts":1789254627034,"field":"exploit_available","old":"false","new":"true"},{"seq":137983,"id":"CVE-2026-42581","ts":1789251628274,"field":"exploit_available","old":"true","new":"false"}]}