Loading HuntDB...

GHSA-j7qv-pgf6-hvh4

GitHub Security Advisory

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

✓ GitHub Reviewed MODERATE Has CVE

Advisory Details

### 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:
```js
$( "#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](https://github.com/jquery/jquery-ui/issues). If you don't find an answer, open a new issue.

Affected Packages

npm jquery-ui
Affected versions: 0 (fixed in 1.13.0)
Maven org.webjars.npm:jquery-ui
Affected versions: 0 (fixed in 1.13.0)
RubyGems jquery-ui-rails
Affected versions: 0 (fixed in 7.0.0)
NuGet jQuery.UI.Combined
Affected versions: 0 (fixed in 1.13.0)

Related CVEs

Key Information

GHSA ID
GHSA-j7qv-pgf6-hvh4
Published
October 26, 2021 2:55 PM
Last Modified
October 27, 2021 5:00 PM
CVSS Score
5.0 /10
Primary Ecosystem
npm
Primary Package
jquery-ui
GitHub Reviewed
✓ Yes

Dataset

Last updated: September 30, 2025 6:30 AM

Data from GitHub Advisory Database. This information is provided for research and educational purposes.