Bug 2095862 (CVE-2022-2053)

Summary: CVE-2022-2053 undertow: Large AJP request may cause DoS
Product: [Other] Security Response Reporter: Patrick Del Bello <pdelbell>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: aboyko, aileenc, alazarot, anstephe, asoldano, avibelli, bbaranow, bgeorges, bmaxwell, boliveir, brian.stansberry, cdewolf, chazlett, clement.escoffier, cmoulliard, dandread, darran.lofthouse, dkreling, dosoudil, eglynn, emingora, eric.wittmann, fjuma, fmongiar, ggrzybek, gmalinko, gsmet, hamadhan, ibek, ikanello, iweiss, janstey, jjoyce, jnethert, jochrist, jrokos, jwon, kverlaen, lgao, lhh, lpeer, lthon, mburns, mkolesni, mnovotny, mosmerov, msochure, msvehla, nwallace, pantinor, pdelbell, pdrozd, peholase, pgallagh, pjindal, pmackay, probinso, pskopek, rguimara, rrajasek, rruss, rstancel, rsvoboda, sbiarozk, scohen, sdouglas, security-response-team, smaestri, spower, sthorger, tom.jenkinson
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: undertow 2.2.19.Final, undertow 2.3.0.Alpha2 Doc Type: If docs needed, set a value
Doc Text:
A flaw was found in Undertow. AJP requests to the server may allow an attacker to send a malicious request and trigger server errors, resulting in a denial of service.
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-12-08 21:03:04 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:    
Bug Blocks: 2094369, 2095888    

Description Patrick Del Bello 2022-06-10 18:58:04 UTC
When a POST request comes through AJP and the request exceeds the max-post-size limit (maxEntitySize), Undertow's AjpServerRequestConduit implementation closes a connection without sending any response to the client/proxy. This behavior results in that a front-end proxy marking the backend worker (application server) as an error state and not forward requests to the worker for a while.

In mod_cluster, this continues until the next STATUS request (10 seconds intervals) from the application server updates the server state. So, in the worst case, it can result in "All workers are in error state" and mod_cluster responds "503 Service Unavailable" for a while (up to 10 seconds).
In mod_proxy_balancer, it does not forward requests to the worker until the "retry" timeout passes. However, luckily, mod_proxy_balancer has "forcerecovery" setting (On by default; this parameter can force the immediate recovery of all workers without considering the retry parameter of the workers if all workers of a balancer are in error state.). So, unlike mod_cluster, mod_proxy_balancer does not result in responding "503 Service Unavailable".

An attacker could use this behavior to send a malicious request and trigger server errors, resulting in DoS (denial of service)

Comment 5 errata-xmlrpc 2022-10-05 16:32:36 UTC
This issue has been addressed in the following products:

  Red Hat JBoss Enterprise Application Platform 7.4 for RHEL 9

Via RHSA-2022:6823 https://access.redhat.com/errata/RHSA-2022:6823

Comment 6 errata-xmlrpc 2022-10-05 16:35:04 UTC
This issue has been addressed in the following products:

  Red Hat JBoss Enterprise Application Platform 7.4 on RHEL 7

Via RHSA-2022:6821 https://access.redhat.com/errata/RHSA-2022:6821

Comment 7 errata-xmlrpc 2022-10-05 16:39:17 UTC
This issue has been addressed in the following products:

  Red Hat JBoss Enterprise Application Platform 7.4 for RHEL 8

Via RHSA-2022:6822 https://access.redhat.com/errata/RHSA-2022:6822

Comment 8 errata-xmlrpc 2022-10-05 16:46:49 UTC
This issue has been addressed in the following products:

  Red Hat JBoss Enterprise Application Platform

Via RHSA-2022:6825 https://access.redhat.com/errata/RHSA-2022:6825

Comment 11 errata-xmlrpc 2022-11-28 14:39:47 UTC
This issue has been addressed in the following products:

  Red Hat Fuse 7.11.1

Via RHSA-2022:8652 https://access.redhat.com/errata/RHSA-2022:8652

Comment 12 Product Security DevOps Team 2022-12-08 21:03:00 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-2022-2053