Cyber Resilience

CVE-2022-31160

MediumPublic PoC

Published: 20 July 2022

Published
20 July 2022
Modified
21 November 2024
KEV Added
Patch
CVSS Score v3.1 6.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
EPSS Score 0.0776 92.1th percentile
Risk Priority 17 60% EPSS · 20% KEV · 20% CVSS

Summary

CVE-2022-31160 is a medium-severity Cross-site Scripting (CWE-79) vulnerability in Drupal Jquery Ui Checkboxradio. Its CVSS base score is 6.1 (Medium).

Operationally, ranked in the top 7.9% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

Deeper analysis

jQuery UI versions prior to 1.13.2 contain a cross-site scripting vulnerability in the checkboxradio widget. When an input element is enclosed in a label and the widget is initialized on that input, the parent label contents are treated as the input label. Invoking the refresh method on such a widget causes any encoded HTML entities present in the initial markup to be decoded and rendered, which can result in script execution.

An attacker who can supply or influence the initial HTML markup containing a checkboxradio widget can trigger the flaw by arranging for the refresh method to be called after page load. Successful exploitation yields cross-site scripting capabilities that allow reading or modifying page contents and performing actions in the context of the affected origin, with the CVSS vector reflecting network attack vector, no authentication requirement, and required user interaction.

Advisories and the patch release note that the issue is resolved in jQuery UI 1.13.2. As a workaround when upgrading is not immediately feasible, any non-input contents inside the label element can be wrapped in a span tag to prevent the erroneous decoding behavior.

The EPSS score rose from a low baseline to a peak of 0.1526, indicating that exploitation interest emerged after disclosure before receding to the current value of 0.0776.

EU & UK References

Vulnerability details

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…

more

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`.

CWE(s)

Related Threats

No named actor attribution yet. ATT&CK technique mapping in progress for this CVE.

Affected Assets

jqueryui
jquery ui
≤ 1.13.2
netapp
h300s firmware
all versions
netapp
h500s firmware
all versions
netapp
h700s firmware
all versions
netapp
h410s firmware
all versions
netapp
h410c firmware
all versions
netapp
oncommand insight
all versions
drupal
jquery ui checkboxradio
8.x-1.0, 8.x-1.1, 8.x-1.2, 8.x-1.3
fedoraproject
fedora
35, 36, 37
debian
debian linux
10.0

Mitigating Controls

Likely Mitigating Controls AI

Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.

addresses: CWE-79

Penetration testing submits XSS payloads to web applications, detecting cross-site scripting flaws for subsequent remediation.

addresses: CWE-79

Validates web inputs to reject script-related content that could produce XSS.

addresses: CWE-79

Output validation against expected content can reject or sanitize script content in generated web pages, reducing XSS exploitability.

References