Skip to main content

Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in jquery-ui

CVE-2022-31160

  • jquery-ui
  • jQuery.UI.Combined
  • jquery-ui-rails
  • org.webjars.bowergithub.jquery:jquery-ui
  • org.webjars.bower:jquery-ui
  • org.webjars:jquery-ui
  • org.webjars.npm:jquery-ui
  • org.webjars.npm:jquery-ui-package
Severity Medium
Score 6.1/10

Summary

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 the parent label contents considered as the input label. Calling `.checkboxradio( "refresh" )` on such a widget and the initial HTML containing encoded HTML entities will make them get erroneously decoded. This can lead to potentially executing JavaScript code. To remediate the issue, someone who can change the initial HTML can wrap all the non-input contents of the `label` in a `span`.

  • LOW
  • NETWORK
  • LOW
  • CHANGED
  • REQUIRED
  • NONE
  • LOW
  • NONE

CWE-79 - Cross Site Scripting

Cross-Site Scripting, commonly referred to as XSS, is the most dominant class of vulnerabilities. It allows an attacker to inject malicious code into a pregnable web application and victimize its users. The exploitation of such a weakness can cause severe issues such as account takeover, and sensitive data exfiltration. Because of the prevalence of XSS vulnerabilities and their high rate of exploitation, it has remained in the OWASP top 10 vulnerabilities for years.

Advisory Timeline

  • Published