Ecosyste.ms: Advisories

An open API service providing security vulnerability metadata for many open source software ecosystems.

Security Advisories: GSA_kwCzR0hTQS1qN3F2LXBnZjYtaHZoNM0Wtw

XSS in `*Text` options of the Datepicker widget in jquery-ui

Impact

Accepting the value of various *Text options of the Datepicker widget from untrusted sources may execute untrusted code. For example, initializing the datepicker in the following way:

$( "#datepicker" ).datepicker( {
	showButtonPanel: true,
	showOn: "both",
	closeText: "<script>doEvilThing( 'closeText XSS' )</script>",
	currentText: "<script>doEvilThing( 'currentText XSS' )</script>",
	prevText: "<script>doEvilThing( 'prevText XSS' )</script>",
	nextText: "<script>doEvilThing( 'nextText XSS' )</script>",
	buttonText: "<script>doEvilThing( 'buttonText XSS' )</script>",
	appendText: "<script>doEvilThing( 'appendText XSS' )</script>",
} );

will call doEvilThing with 6 different parameters coming from all *Text options.

Patches

The issue is fixed in jQuery UI 1.13.0. The values passed to various *Text options are now always treated as pure text, not HTML.

Workarounds

A workaround is to not accept the value of the *Text options from untrusted sources.

For more information

If you have any questions or comments about this advisory, search for a relevant issue in the jQuery UI repo. If you don't find an answer, open a new issue.

Permalink: https://github.com/advisories/GHSA-j7qv-pgf6-hvh4
JSON: https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS1qN3F2LXBnZjYtaHZoNM0Wtw
Source: GitHub Advisory Database
Origin: Unspecified
Severity: Moderate
Classification: General
Published: about 3 years ago
Updated: about 1 year ago


CVSS Score: 6.5
CVSS vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N

Identifiers: GHSA-j7qv-pgf6-hvh4, CVE-2021-41183
References: Repository: https://github.com/jquery/jquery-ui
Blast Radius: 59.3

Affected Packages

rubygems:jquery-ui-rails
Dependent packages: 311
Dependent repositories: 43,038
Downloads: 76,330,690 total
Affected Version Ranges: < 7.0.0
Fixed in: 7.0.0
All affected versions: 0.0.1, 0.0.2, 0.1.0, 0.2.0, 0.2.1, 0.2.2, 0.3.0, 0.4.0, 0.4.1, 0.5.0, 1.0.0, 1.1.0, 1.1.1, 2.0.0, 2.0.1, 2.0.2, 3.0.0, 3.0.1, 4.0.0, 4.0.1, 4.0.2, 4.0.3, 4.0.4, 4.0.5, 4.1.0, 4.1.1, 4.1.2, 4.2.0, 4.2.1, 5.0.0, 5.0.1, 5.0.2, 5.0.3, 5.0.4, 5.0.5, 6.0.0, 6.0.1
All unaffected versions: 7.0.0
nuget:jQuery.UI.Combined
Dependent packages: 27
Dependent repositories: 0
Downloads: 49,208,189 total
Affected Version Ranges: < 1.13.0
Fixed in: 1.13.0
All affected versions: 1.8.9, 1.8.10, 1.8.11, 1.8.12, 1.8.13, 1.8.14, 1.8.15, 1.8.16, 1.8.17, 1.8.18, 1.8.19, 1.8.20, 1.8.21, 1.8.22, 1.8.23, 1.8.24, 1.9.0, 1.9.1, 1.9.2, 1.10.0, 1.10.1, 1.10.2, 1.10.3, 1.10.4, 1.11.0, 1.11.1, 1.11.2, 1.11.3, 1.11.4, 1.12.0, 1.12.1
All unaffected versions: 1.13.0, 1.13.1, 1.13.2, 1.13.3, 1.14.1
maven:org.webjars.npm:jquery-ui
Dependent packages: 20
Dependent repositories: 1
Downloads:
Affected Version Ranges: < 1.13.0
Fixed in: 1.13.0
All affected versions: 1.10.4, 1.10.5, 1.12.0, 1.12.1
All unaffected versions: 1.13.0, 1.13.1, 1.13.2, 1.13.3, 1.14.0, 1.14.1
npm:jquery-ui
Dependent packages: 788
Dependent repositories: 21,377
Downloads: 2,237,355 last month
Affected Version Ranges: < 1.13.0
Fixed in: 1.13.0
All affected versions: 1.10.4, 1.10.5, 1.12.0, 1.12.1
All unaffected versions: 1.13.0, 1.13.1, 1.13.2, 1.13.3, 1.14.0, 1.14.1