CWE
444
Advisory Published
CVE Published
Advisory Published
Updated

CVE-2019-20445

First published: Wed Jan 29 2020(Updated: )

A flaw was found in Netty before version 4.1.44, where it accepted multiple Content-Length headers and also accepted both Transfer-Encoding, as well as Content-Length headers where it should reject the message under such circumstances. In circumstances where Netty is used in the context of a server, it could result in a viable HTTP smuggling vulnerability.

Credit: cve@mitre.org

Affected SoftwareAffected VersionHow to fix
maven/io.netty:netty<4.0.0
maven/org.jboss.netty:netty<4.0.0
maven/io.netty:netty-handler>=4.0.0<4.1.45
4.1.45
redhat/qpid-proton<0:0.30.0-4.el6_10
0:0.30.0-4.el6_10
redhat/qpid-proton<0:0.30.0-2.el7
0:0.30.0-2.el7
redhat/nodejs-rhea<0:1.0.16-1.el8
0:1.0.16-1.el8
redhat/qpid-proton<0:0.30.0-3.el8
0:0.30.0-3.el8
redhat/eap7-netty<0:4.1.45-1.Final_redhat_00001.1.el6ea
0:4.1.45-1.Final_redhat_00001.1.el6ea
redhat/eap7-activemq-artemis<0:2.9.0-2.redhat_00009.1.el6ea
0:2.9.0-2.redhat_00009.1.el6ea
redhat/eap7-apache-commons-beanutils<0:1.9.4-1.redhat_00002.1.el6ea
0:1.9.4-1.redhat_00002.1.el6ea
redhat/eap7-glassfish-el<0:3.0.1-4.b08_redhat_00003.1.el6ea
0:3.0.1-4.b08_redhat_00003.1.el6ea
redhat/eap7-glassfish-jaxb<0:2.3.3-4.b02_redhat_00001.1.el6ea
0:2.3.3-4.b02_redhat_00001.1.el6ea
redhat/eap7-glassfish-jsf<0:2.3.5-7.SP3_redhat_00005.1.el6ea
0:2.3.5-7.SP3_redhat_00005.1.el6ea
redhat/eap7-hal-console<0:3.0.20-1.Final_redhat_00001.1.el6ea
0:3.0.20-1.Final_redhat_00001.1.el6ea
redhat/eap7-hibernate<0:5.3.15-1.Final_redhat_00001.1.el6ea
0:5.3.15-1.Final_redhat_00001.1.el6ea
redhat/eap7-infinispan<0:9.3.8-1.Final_redhat_00001.1.el6ea
0:9.3.8-1.Final_redhat_00001.1.el6ea
redhat/eap7-ironjacamar<0:1.4.20-1.Final_redhat_00001.1.el6ea
0:1.4.20-1.Final_redhat_00001.1.el6ea
redhat/eap7-jackson-databind<0:2.9.10.2-1.redhat_00001.1.el6ea
0:2.9.10.2-1.redhat_00001.1.el6ea
redhat/eap7-jaegertracing-jaeger-client-java<0:0.34.1-1.redhat_00002.1.el6ea
0:0.34.1-1.redhat_00002.1.el6ea
redhat/eap7-jboss-ejb-client<0:4.0.28-1.Final_redhat_00001.1.el6ea
0:4.0.28-1.Final_redhat_00001.1.el6ea
redhat/eap7-jboss-remoting<0:5.0.17-1.Final_redhat_00001.1.el6ea
0:5.0.17-1.Final_redhat_00001.1.el6ea
redhat/eap7-jboss-server-migration<0:1.3.1-8.Final_redhat_00009.1.el6ea
0:1.3.1-8.Final_redhat_00009.1.el6ea
redhat/eap7-picketlink-bindings<0:2.5.5-23.SP12_redhat_00012.1.el6ea
0:2.5.5-23.SP12_redhat_00012.1.el6ea
redhat/eap7-stax2-api<0:4.2.0-1.redhat_00001.1.el6ea
0:4.2.0-1.redhat_00001.1.el6ea
redhat/eap7-sun-istack-commons<0:3.0.10-1.redhat_00001.1.el6ea
0:3.0.10-1.redhat_00001.1.el6ea
redhat/eap7-thrift<0:0.13.0-1.redhat_00002.1.el6ea
0:0.13.0-1.redhat_00002.1.el6ea
redhat/eap7-wildfly<0:7.2.7-4.GA_redhat_00004.1.el6ea
0:7.2.7-4.GA_redhat_00004.1.el6ea
redhat/eap7-wildfly-http-client<0:1.0.20-1.Final_redhat_00001.1.el6ea
0:1.0.20-1.Final_redhat_00001.1.el6ea
redhat/eap7-wildfly-openssl<0:1.0.9-2.SP03_redhat_00001.1.el6ea
0:1.0.9-2.SP03_redhat_00001.1.el6ea
redhat/eap7-wildfly-transaction-client<0:1.1.9-1.Final_redhat_00001.1.el6ea
0:1.1.9-1.Final_redhat_00001.1.el6ea
redhat/eap7-woodstox-core<0:6.0.3-1.redhat_00001.1.el6ea
0:6.0.3-1.redhat_00001.1.el6ea
redhat/eap7-xml-security<0:2.1.4-1.redhat_00001.1.el6ea
0:2.1.4-1.redhat_00001.1.el6ea
redhat/eap7-netty<0:4.1.45-1.Final_redhat_00001.1.el7ea
0:4.1.45-1.Final_redhat_00001.1.el7ea
redhat/eap7-activemq-artemis<0:2.9.0-2.redhat_00009.1.el7ea
0:2.9.0-2.redhat_00009.1.el7ea
redhat/eap7-apache-commons-beanutils<0:1.9.4-1.redhat_00002.1.el7ea
0:1.9.4-1.redhat_00002.1.el7ea
redhat/eap7-glassfish-el<0:3.0.1-4.b08_redhat_00003.1.el7ea
0:3.0.1-4.b08_redhat_00003.1.el7ea
redhat/eap7-glassfish-jaxb<0:2.3.3-4.b02_redhat_00001.1.el7ea
0:2.3.3-4.b02_redhat_00001.1.el7ea
redhat/eap7-glassfish-jsf<0:2.3.5-7.SP3_redhat_00005.1.el7ea
0:2.3.5-7.SP3_redhat_00005.1.el7ea
redhat/eap7-hal-console<0:3.0.20-1.Final_redhat_00001.1.el7ea
0:3.0.20-1.Final_redhat_00001.1.el7ea
redhat/eap7-hibernate<0:5.3.15-1.Final_redhat_00001.1.el7ea
0:5.3.15-1.Final_redhat_00001.1.el7ea
redhat/eap7-infinispan<0:9.3.8-1.Final_redhat_00001.1.el7ea
0:9.3.8-1.Final_redhat_00001.1.el7ea
redhat/eap7-ironjacamar<0:1.4.20-1.Final_redhat_00001.1.el7ea
0:1.4.20-1.Final_redhat_00001.1.el7ea
redhat/eap7-jackson-databind<0:2.9.10.2-1.redhat_00001.1.el7ea
0:2.9.10.2-1.redhat_00001.1.el7ea
redhat/eap7-jaegertracing-jaeger-client-java<0:0.34.1-1.redhat_00002.1.el7ea
0:0.34.1-1.redhat_00002.1.el7ea
redhat/eap7-jboss-ejb-client<0:4.0.28-1.Final_redhat_00001.1.el7ea
0:4.0.28-1.Final_redhat_00001.1.el7ea
redhat/eap7-jboss-remoting<0:5.0.17-1.Final_redhat_00001.1.el7ea
0:5.0.17-1.Final_redhat_00001.1.el7ea
redhat/eap7-jboss-server-migration<0:1.3.1-8.Final_redhat_00009.1.el7ea
0:1.3.1-8.Final_redhat_00009.1.el7ea
redhat/eap7-picketlink-bindings<0:2.5.5-23.SP12_redhat_00012.1.el7ea
0:2.5.5-23.SP12_redhat_00012.1.el7ea
redhat/eap7-stax2-api<0:4.2.0-1.redhat_00001.1.el7ea
0:4.2.0-1.redhat_00001.1.el7ea
redhat/eap7-sun-istack-commons<0:3.0.10-1.redhat_00001.1.el7ea
0:3.0.10-1.redhat_00001.1.el7ea
redhat/eap7-thrift<0:0.13.0-1.redhat_00002.1.el7ea
0:0.13.0-1.redhat_00002.1.el7ea
redhat/eap7-wildfly<0:7.2.7-4.GA_redhat_00004.1.el7ea
0:7.2.7-4.GA_redhat_00004.1.el7ea
redhat/eap7-wildfly-http-client<0:1.0.20-1.Final_redhat_00001.1.el7ea
0:1.0.20-1.Final_redhat_00001.1.el7ea
redhat/eap7-wildfly-openssl<0:1.0.9-2.SP03_redhat_00001.1.el7ea
0:1.0.9-2.SP03_redhat_00001.1.el7ea
redhat/eap7-wildfly-transaction-client<0:1.1.9-1.Final_redhat_00001.1.el7ea
0:1.1.9-1.Final_redhat_00001.1.el7ea
redhat/eap7-woodstox-core<0:6.0.3-1.redhat_00001.1.el7ea
0:6.0.3-1.redhat_00001.1.el7ea
redhat/eap7-xml-security<0:2.1.4-1.redhat_00001.1.el7ea
0:2.1.4-1.redhat_00001.1.el7ea
redhat/eap7-netty<0:4.1.45-1.Final_redhat_00001.1.el8ea
0:4.1.45-1.Final_redhat_00001.1.el8ea
redhat/eap7-activemq-artemis<0:2.9.0-2.redhat_00009.1.el8ea
0:2.9.0-2.redhat_00009.1.el8ea
redhat/eap7-apache-commons-beanutils<0:1.9.4-1.redhat_00002.1.el8ea
0:1.9.4-1.redhat_00002.1.el8ea
redhat/eap7-glassfish-el<0:3.0.1-4.b08_redhat_00003.1.el8ea
0:3.0.1-4.b08_redhat_00003.1.el8ea
redhat/eap7-glassfish-jaxb<0:2.3.3-4.b02_redhat_00001.1.el8ea
0:2.3.3-4.b02_redhat_00001.1.el8ea
redhat/eap7-glassfish-jsf<0:2.3.5-7.SP3_redhat_00005.1.el8ea
0:2.3.5-7.SP3_redhat_00005.1.el8ea
redhat/eap7-hal-console<0:3.0.20-1.Final_redhat_00001.1.el8ea
0:3.0.20-1.Final_redhat_00001.1.el8ea
redhat/eap7-hibernate<0:5.3.15-1.Final_redhat_00001.1.el8ea
0:5.3.15-1.Final_redhat_00001.1.el8ea
redhat/eap7-infinispan<0:9.3.8-1.Final_redhat_00001.1.el8ea
0:9.3.8-1.Final_redhat_00001.1.el8ea
redhat/eap7-ironjacamar<0:1.4.20-1.Final_redhat_00001.1.el8ea
0:1.4.20-1.Final_redhat_00001.1.el8ea
redhat/eap7-jackson-databind<0:2.9.10.2-1.redhat_00001.1.el8ea
0:2.9.10.2-1.redhat_00001.1.el8ea
redhat/eap7-jaegertracing-jaeger-client-java<0:0.34.1-1.redhat_00002.1.el8ea
0:0.34.1-1.redhat_00002.1.el8ea
redhat/eap7-jboss-ejb-client<0:4.0.28-1.Final_redhat_00001.1.el8ea
0:4.0.28-1.Final_redhat_00001.1.el8ea
redhat/eap7-jboss-remoting<0:5.0.17-1.Final_redhat_00001.1.el8ea
0:5.0.17-1.Final_redhat_00001.1.el8ea
redhat/eap7-jboss-server-migration<0:1.3.1-8.Final_redhat_00009.1.el8ea
0:1.3.1-8.Final_redhat_00009.1.el8ea
redhat/eap7-picketlink-bindings<0:2.5.5-23.SP12_redhat_00012.1.el8ea
0:2.5.5-23.SP12_redhat_00012.1.el8ea
redhat/eap7-stax2-api<0:4.2.0-1.redhat_00001.1.el8ea
0:4.2.0-1.redhat_00001.1.el8ea
redhat/eap7-sun-istack-commons<0:3.0.10-1.redhat_00001.1.el8ea
0:3.0.10-1.redhat_00001.1.el8ea
redhat/eap7-thrift<0:0.13.0-1.redhat_00002.1.el8ea
0:0.13.0-1.redhat_00002.1.el8ea
redhat/eap7-wildfly<0:7.2.7-4.GA_redhat_00004.1.el8ea
0:7.2.7-4.GA_redhat_00004.1.el8ea
redhat/eap7-wildfly-http-client<0:1.0.20-1.Final_redhat_00001.1.el8ea
0:1.0.20-1.Final_redhat_00001.1.el8ea
redhat/eap7-wildfly-openssl<0:1.0.9-2.SP03_redhat_00001.1.el8ea
0:1.0.9-2.SP03_redhat_00001.1.el8ea
redhat/eap7-wildfly-transaction-client<0:1.1.9-1.Final_redhat_00001.1.el8ea
0:1.1.9-1.Final_redhat_00001.1.el8ea
redhat/eap7-woodstox-core<0:6.0.3-1.redhat_00001.1.el8ea
0:6.0.3-1.redhat_00001.1.el8ea
redhat/eap7-xml-security<0:2.1.4-1.redhat_00001.1.el8ea
0:2.1.4-1.redhat_00001.1.el8ea
debian/netty
1:4.1.48-4+deb11u2
1:4.1.48-7+deb12u1
1:4.1.48-10
redhat/netty<4.1.44
4.1.44
Netty Netty<4.1.44
Debian GNU/Linux=8.0
Debian GNU/Linux=9.0
Debian GNU/Linux=10.0
Fedoraproject Fedora=33
Ubuntu Linux=18.04
All of
Any of
Red Hat JBoss AMQ Clients=2
redhat jboss enterprise application platform=7.2
redhat jboss enterprise application platform=7.3
Any of
Red Hat Enterprise Linux=6.0
Red Hat Enterprise Linux=7.0
Red Hat Enterprise Linux=8.0
Apache Spark=2.4.7
Apache Spark=2.4.8
IBM Data Virtualization on Cloud Pak for Data<=3.0
IBM Watson Query with Cloud Pak for Data<=2.2
IBM Watson Query with Cloud Pak for Data<=2.1
IBM Watson Query with Cloud Pak for Data<=2.0
IBM Data Virtualization on Cloud Pak for Data<=1.8
IBM Data Virtualization on Cloud Pak for Data<=1.7
NettyRPC<4.1.44
Debian=8.0
Debian=9.0
Debian=10.0
Fedora=33
Ubuntu=18.04
Red Hat JBoss AMQ Clients=2
JBoss Enterprise Application Platform=7.2
JBoss Enterprise Application Platform=7.3
Red Hat Enterprise Linux=6.0
Red Hat Enterprise Linux=7.0
Red Hat Enterprise Linux=8.0

Remedy

* Use HTTP/2 instead (clear boundaries between requests) * Disable reuse of backend connections eg. ```http-reuse never``` in HAProxy or whatever equivalent LB settings

Never miss a vulnerability like this again

Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.

Reference Links

Frequently Asked Questions

  • What is the severity of CVE-2019-20445?

    The CVE-2019-20445 vulnerability is considered high severity due to its potential to allow HTTP request smuggling attacks.

  • How do I fix CVE-2019-20445?

    To resolve CVE-2019-20445, upgrade to Netty version 4.1.45 or later.

  • Which versions of Netty are affected by CVE-2019-20445?

    Netty versions prior to 4.1.45 are affected by CVE-2019-20445.

  • What kind of attacks can CVE-2019-20445 facilitate?

    CVE-2019-20445 can facilitate HTTP request smuggling attacks due to improper handling of multiple Content-Length headers.

  • Is there a workaround for CVE-2019-20445 until I can update?

    There are no officially recommended workarounds for CVE-2019-20445; updating to a safe version is advised.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2025 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203