Bug 1798509 (CVE-2019-20445)

Summary: CVE-2019-20445 netty: HttpObjectDecoder.java allows Content-Length header to accompanied by second Content-Length header
Product: [Other] Security Response Reporter: Dhananjay Arunesh <darunesh>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: aboyko, aileenc, akoufoud, alazarot, almorale, anstephe, aos-bugs, asoldano, atangrin, ataylor, avibelli, bbaranow, bbuckingham, bcourt, bgeorges, bkearney, bmaxwell, bmontgom, brian.stansberry, btotty, cdewolf, chazlett, darran.lofthouse, dkreling, dosoudil, drieden, eparis, etirelli, ganandan, ggaughan, gmalinko, hhudgeon, ibek, iweiss, janstey, java-sig-commits, jawilson, jbalunas, jburrell, jcantril, jerboaa, jochrist, jokerman, jpallich, jperkins, jross, jstastny, jwon, krathod, kverlaen, kwills, lgao, loleary, lthon, lzap, mmccune, mnovotny, msochure, msvehla, mszynkie, nstielau, nwallace, paradhya, pdrozd, pgallagh, pjindal, pmackay, psotirop, rchan, rgodfrey, rguimara, rjerrido, rrajasek, rruss, rsvoboda, rsynek, sdaley, smaestri, sochotni, sokeeffe, spinder, sponnaga, sthorger, swoodman, theute, tom.jenkinson, xiwu
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: netty 4.1.44 Doc Type: If docs needed, set a value
Doc Text:
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.
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-02-13 20:09:46 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1798511, 1798769, 1798770, 1798771, 1798772, 1798773    
Bug Blocks: 1798529    

Description Dhananjay Arunesh 2020-02-05 14:20:13 UTC
A vulnerability was found in HttpObjectDecoder.java in Netty before 4.1.44 allows a Content-Length header to be accompanied by a second Content-Length header, or by a Transfer-Encoding header.

Reference:
https://github.com/netty/netty/compare/netty-4.1.43.Final...netty-4.1.44.Final
https://github.com/netty/netty/issues/9861
https://lists.apache.org/thread.html/r310d2ce22304d5298ff87f10134f918c87919b452734f9841d95682d@%3Ccommits.zookeeper.apache.org%3E
https://lists.apache.org/thread.html/r36fcf538b28f2029e8b4f6b9a772f3b107913a78f09b095c5b153a62@%3Cissues.zookeeper.apache.org%3E
https://lists.apache.org/thread.html/r640eb9b3213058a963e18291f903fc1584e577f60035f941e32f760a@%3Cissues.zookeeper.apache.org%3E
https://lists.apache.org/thread.html/r70b1ff22ee80e8101805b9a473116dd33265709007d2deb6f8c80bf2@%3Ccommits.druid.apache.org%3E
https://lists.apache.org/thread.html/r804895eedd72c9ec67898286eb185e04df852b0dd5fe53cf5b6138f9@%3Cissues.zookeeper.apache.org%3E
https://lists.apache.org/thread.html/r81700644754e66ffea465c869cb477de25f8041e21598e8818fc2c45@%3Cdev.zookeeper.apache.org%3E
https://lists.apache.org/thread.html/r96e08f929234e8ba1ef4a93a0fd2870f535a1f9ab628fabc46115986@%3Cdev.zookeeper.apache.org%3E
https://lists.apache.org/thread.html/r9b20cdac704cf9a583400350e2d5b576fa8417c18ddb961201676c60@%3Ccommits.zookeeper.apache.org%3E
https://lists.apache.org/thread.html/ra2ace4bcb5cf487f72cbcbfa0f8cc08e755ec2b93d7e69f276148b08@%3Cissues.zookeeper.apache.org%3E
https://lists.apache.org/thread.html/ra9fbfe7d4830ae675bf34c7c0f8c22fc8a4099f65706c1bc4f54c593@%3Cissues.zookeeper.apache.org%3E
https://lists.apache.org/thread.html/rce71d33747010d32d31d90f5d737dae26291d96552f513a266c92fbb@%3Cnotifications.zookeeper.apache.org%3E
https://lists.apache.org/thread.html/re45ee9256d3233c31d78e59ee59c7dc841c7fbd83d0769285b41e948@%3Ccommits.druid.apache.org%3E
https://lists.apache.org/thread.html/rfb55f245b08d8a6ec0fb4dc159022227cd22de34c4419c2fbb18802b@%3Cnotifications.zookeeper.apache.org%3E
https://lists.apache.org/thread.html/rff210a24f3a924829790e69eaefa84820902b7b31f17c3bf2def9114@%3Ccommits.druid.apache.org%3E

Comment 1 Dhananjay Arunesh 2020-02-05 14:20:53 UTC
Created netty tracking bugs for this issue:

Affects: fedora-all [bug 1798511]

Comment 9 Jonathan Christison 2020-02-13 12:13:36 UTC
Mitigation:

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

Comment 10 errata-xmlrpc 2020-02-13 14:51:06 UTC
This issue has been addressed in the following products:

  Red Hat AMQ Online 1.3.3 GA

Via RHSA-2020:0497 https://access.redhat.com/errata/RHSA-2020:0497

Comment 11 Product Security DevOps Team 2020-02-13 20:09:46 UTC
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):

https://access.redhat.com/security/cve/cve-2019-20445

Comment 14 errata-xmlrpc 2020-02-25 15:30:32 UTC
This issue has been addressed in the following products:

  AMQ Clients 2.y for RHEL 7
  AMQ Clients 2.y for RHEL 8
  AMQ Clients 2.y for RHEL 6

Via RHSA-2020:0601 https://access.redhat.com/errata/RHSA-2020:0601

Comment 15 Cedric Buissart 2020-02-28 08:09:46 UTC
Statement:

OpenShift Container Platform ships a vulnerable netty library as part of the logging-elasticsearch5 container. ElasticSearch's security team has stated that the previous vulnerability, CVE-2019-16869, does not poses a substantial practical threat to ElasticSearch 6 [1]. We agree that this issue would be difficult to exploit both these vulnerabilities on OpenShift Container Platform, so we're reducing the impact of this issue to moderate and may fix it in the future release.

Red Hat Satellite ships a vulnerable version of netty embedded in Candlepin. However, the flaw can not be triggered in that context, because HTTP requests are handled by Tomcat, not by netty. A future release may fix this.

[1]  https://github.com/elastic/elasticsearch/issues/49396

Comment 19 errata-xmlrpc 2020-03-03 16:13:22 UTC
This issue has been addressed in the following products:

  Red Hat Openshift Application Runtimes

Via RHSA-2020:0567 https://access.redhat.com/errata/RHSA-2020:0567

Comment 21 Jonathan Christison 2020-03-12 15:28:58 UTC
Marking AMQ-6 as low as it only uses netty in the context of integration tests, activemq components do not directly rely upon netty.

Comment 22 errata-xmlrpc 2020-03-12 17:00:47 UTC
This issue has been addressed in the following products:

  Red Hat JBoss Enterprise Application Platform

Via RHSA-2020:0811 https://access.redhat.com/errata/RHSA-2020:0811

Comment 23 errata-xmlrpc 2020-03-12 17:01:47 UTC
This issue has been addressed in the following products:

  Red Hat JBoss Enterprise Application Platform 7.2 for RHEL 8

Via RHSA-2020:0806 https://access.redhat.com/errata/RHSA-2020:0806

Comment 24 errata-xmlrpc 2020-03-12 17:04:42 UTC
This issue has been addressed in the following products:

  Red Hat JBoss Enterprise Application Platform 7.2 for RHEL 6

Via RHSA-2020:0804 https://access.redhat.com/errata/RHSA-2020:0804

Comment 25 errata-xmlrpc 2020-03-12 17:06:14 UTC
This issue has been addressed in the following products:

  Red Hat JBoss Enterprise Application Platform 7.2 for RHEL 7

Via RHSA-2020:0805 https://access.redhat.com/errata/RHSA-2020:0805

Comment 26 errata-xmlrpc 2020-03-23 08:23:18 UTC
This issue has been addressed in the following products:

  Red Hat AMQ

Via RHSA-2020:0922 https://access.redhat.com/errata/RHSA-2020:0922

Comment 27 errata-xmlrpc 2020-03-23 13:21:19 UTC
This issue has been addressed in the following products:

  Red Hat JBoss AMQ

Via RHSA-2020:0939 https://access.redhat.com/errata/RHSA-2020:0939

Comment 28 errata-xmlrpc 2020-03-23 20:14:06 UTC
This issue has been addressed in the following products:

  Red Hat Single Sign-On

Via RHSA-2020:0951 https://access.redhat.com/errata/RHSA-2020:0951

Comment 29 errata-xmlrpc 2020-04-14 13:05:36 UTC
This issue has been addressed in the following products:

  Red Hat AMQ 7.4.3

Via RHSA-2020:1445 https://access.redhat.com/errata/RHSA-2020:1445

Comment 30 errata-xmlrpc 2020-05-26 16:10:11 UTC
This issue has been addressed in the following products:

  Red Hat Data Grid 7.3.6

Via RHSA-2020:2321 https://access.redhat.com/errata/RHSA-2020:2321

Comment 31 errata-xmlrpc 2020-05-28 15:59:52 UTC
This issue has been addressed in the following products:

  EAP-CD 19 Tech Preview

Via RHSA-2020:2333 https://access.redhat.com/errata/RHSA-2020:2333

Comment 32 errata-xmlrpc 2020-07-28 15:55:56 UTC
This issue has been addressed in the following products:

  Red Hat Fuse 7.7.0

Via RHSA-2020:3192 https://access.redhat.com/errata/RHSA-2020:3192

Comment 33 errata-xmlrpc 2020-07-29 06:07:50 UTC
This issue has been addressed in the following products:

  Red Hat Decision Manager

Via RHSA-2020:3196 https://access.redhat.com/errata/RHSA-2020:3196

Comment 34 errata-xmlrpc 2020-07-29 06:23:07 UTC
This issue has been addressed in the following products:

  Red Hat Process Automation

Via RHSA-2020:3197 https://access.redhat.com/errata/RHSA-2020:3197

Comment 35 Jonathan Christison 2020-08-04 15:03:22 UTC
Marking Red Hat Jboss Fuse 6 as having a moderate impact, Fuse 6 distributes affected versions of Netty, however its use in Fuse 6 fabric-gateway is not susceptible to the vulnerability as the fabric-gateway will create a new http client upon each gateway invocation, this means there is no multiplexing of connections, this is a prerequisite of HTTP smuggling/desynchronisation attacks.

 This vulnerability is out of security support scope for the following products:
 * Red Hat JBoss Fuse 6

Please refer to https://access.redhat.com/support/policy/updates/jboss_notes for more details.

Comment 37 Jonathan Christison 2021-06-01 13:13:27 UTC
Marking Red Hat Fuse 7 as having a low impact, Fuse 7 distributes affected versions of Netty in the Karaf Narayana transaction manager, however the vulnerable functionality of these artifacts is not used.

Comment 39 errata-xmlrpc 2021-08-11 18:22:36 UTC
This issue has been addressed in the following products:

  Red Hat Fuse 7.9

Via RHSA-2021:3140 https://access.redhat.com/errata/RHSA-2021:3140