Bug 2110705 (CVE-2022-31160)

Summary: CVE-2022-31160 jqueryui: XSS when refreshing a checkboxradio with an HTML-like initial text label
Product: [Other] Security Response Reporter: Anten Skrabec <askrabec>
Component: vulnerabilityAssignee: Nobody <nobody>
Status: NEW --- QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: aileenc, apevec, chazlett, eglynn, extras-orphan, gmalinko, janstey, jjoyce, jochrist, jwon, lhh, mburns, mrunge, openstack-sig, pdelbell, rdopiera, rhos-maint, spower
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Fixed In Version: jquery-ui 1.13.2 Doc Type: If docs needed, set a value
Doc Text:
A flaw was found in the jquery-UI package. Affected versions of this package are vulnerable to Cross-site scripting (XSS) attack via the initialization of a check-box-radio widget on an input tag enclosed within a label, leading to the parent label contents being considered as the input label.
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 2110707, 2110709, 2110706, 2110708, 2110959, 2110960, 2110961    
Bug Blocks: 2110712    

Description Anten Skrabec 2022-07-25 18:03:37 UTC
jQuery UI is a curated set of user interface interactions, effects, widgets, and themes built on top of jQuery. Versions prior to 1.13.2 are potentially vulnerable to cross-site scripting. Initializing a checkboxradio widget on an input enclosed within a label makes that parent label contents considered as the input label. Calling `.checkboxradio( "refresh" )` on such a widget and the initial HTML contained encoded HTML entities will make them erroneously get decoded. This can lead to potentially executing JavaScript code. The bug has been patched in jQuery UI 1.13.2. To remediate the issue, someone who can change the initial HTML can wrap all the non-input contents of the `label` in a `span`.


Comment 1 Anten Skrabec 2022-07-25 18:04:01 UTC
Created js-jquery-ui tracking bugs for this issue:

Affects: epel-all [bug 2110706]
Affects: fedora-all [bug 2110708]

Created python-XStatic-jquery-ui tracking bugs for this issue:

Affects: epel-all [bug 2110707]
Affects: openstack-rdo [bug 2110709]