GHSA-9MRQ-CJGH-32G2
Vulnerability from github – Published: 2019-09-13 13:22 – Updated: 2025-02-18 18:27rel noopener vulnerability
Impact
Clicking on smartbanner View link and navigating to 3rd party page leaves window.opener exposed. It may allow hostile 3rd parties to abuse window.opener, e.g. by redirection or injection on the original page with smartbanner.
Patches
rel="noopener" is automatically populated to links as of v1.14.1 which is a recommended upgrade to resolve the vulnerability.
Workarounds
If you can not upgrade to v1.14.1:
1. Ensure View link is only taking users to App Store or Google Play Store where security is guarded by respective app store security teams
2. If View link is going to a 3rd party page, limit smartbanner.js to be used on iOS that decreases the scope of the vulnerability since as of Safari 12.1, rel="noopener" is imposed on all target="_blank" links.
Following combination of smartbanner meta tags can be used to achieve the above:
```html
<meta name="smartbanner:enabled-platforms" content="none">
<meta name="smartbanner:include-user-agent-regex" content="Mobile.*Safari">
```
References
For more information
If you have any questions or comments about this advisory: * Open an issue in smartbanner.js
{
"affected": [
{
"package": {
"ecosystem": "npm",
"name": "smartbanner.js"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.14.1"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2025-25300"
],
"database_specific": {
"cwe_ids": [
"CWE-601",
"CWE-79"
],
"github_reviewed": true,
"github_reviewed_at": "2020-06-16T21:29:02Z",
"nvd_published_at": null,
"severity": "LOW"
},
"details": "## rel noopener vulnerability\n\n### Impact\nClicking on smartbanner _View_ link and navigating to 3rd party page leaves `window.opener` exposed. It may allow hostile 3rd parties to abuse `window.opener`, e.g. by redirection or injection on the original page with smartbanner.\n\n### Patches\n`rel=\"noopener\"` is automatically populated to links as of `v1.14.1` which is a recommended upgrade to resolve the vulnerability.\n\n### Workarounds\nIf you can not upgrade to `v1.14.1`:\n1. Ensure _View_ link is only taking users to App Store or Google Play Store where security is guarded by respective app store security teams\n2. If _View_ link is going to a 3rd party page, limit smartbanner.js to be used on iOS that decreases the scope of the vulnerability since as of Safari 12.1, `rel=\"noopener\"` is imposed on all `target=\"_blank\"` links.\n\n Following combination of smartbanner meta tags can be used to achieve the above:\n\n ```html\n \u003cmeta name=\"smartbanner:enabled-platforms\" content=\"none\"\u003e\n \u003cmeta name=\"smartbanner:include-user-agent-regex\" content=\"Mobile.*Safari\"\u003e\n ```\n\n### References\n* [About rel=noopener](https://mathiasbynens.github.io/rel-noopener/)\n* [Safari 12.1 Release Notes](https://developer.apple.com/documentation/safari_release_notes/safari_12_1_release_notes#3130296)\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue in [smartbanner.js](https://github.com/ain/smartbanner.js/issues/new)",
"id": "GHSA-9mrq-cjgh-32g2",
"modified": "2025-02-18T18:27:07Z",
"published": "2019-09-13T13:22:33Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/ain/smartbanner.js/security/advisories/GHSA-9mrq-cjgh-32g2"
},
{
"type": "WEB",
"url": "https://github.com/ain/smartbanner.js/commit/fce8c31dfe04033d9d005a89694d3e7a60784f89"
},
{
"type": "ADVISORY",
"url": "https://github.com/advisories/GHSA-9mrq-cjgh-32g2"
},
{
"type": "WEB",
"url": "https://github.com/ain/smartbanner.js"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:L/SI:L/SA:N/E:U",
"type": "CVSS_V4"
}
],
"summary": "smartbanner.js rel noopener vulnerability"
}
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.