GHSA-gpqq-952q-5327

XSS in the `of` option of the `.position()` util in jquery-ui

At a glance

Published
Updated
CVE
CVE-2021-41184
Aliases
BIT-drupal-2021-41184
CVSS_V3
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N

Description

### Impact Accepting the value of the `of` option of the [`.position()`](https://api.jqueryui.com/position/) util from untrusted sources may execute untrusted code. For example, invoking the following code: ```js $( "#element" ).position( { my: "left top", at: "right bottom", of: "<img onerror='doEvilThing()' src='/404' />", collision: "none" } ); ``` will call the `doEvilThing()` function. ### Patches The issue is fixed in jQuery UI 1.13.0. Any string value passed to the `of` option is now treated as a CSS selector. ### Workarounds A workaround is to not accept the value of the `of` option 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

PackageVersions
npm · jquery-uiintroduced 0, fixed 1.13.0
Maven · org.webjars.npm:jquery-uiintroduced 0, fixed 1.13.0
NuGet · jQuery.UI.Combinedintroduced 0, fixed 1.13.0
RubyGems · jquery-ui-railsintroduced 0, fixed 7.0.0

References

Sources

SourceLicence
OSV.devCC-BY 4.0 — GitHub Advisory Database