{"id":"CVE-2026-52854","aliases":["EUVD-2026-62200","GHSA-4h7g-5542-v3fc","UBUNTU-CVE-2026-52854"],"status":"published","title":"mediawiki/maps: Stored XSS through the overlays parameter in the display_map parser function","description":"Maps is a MediaWiki extension that enables visualization of geographic data through dynamic embedded maps. Prior to version 12.1.3, the display_map parser function in the Leaflet service accepts attacker-controlled HTML in the overlays parameter, and resources/leaflet/jquery.leaflet.js uses the overlay name as a Leaflet layer-control label without escaping it. A wiki user with the edit permission can store malicious wikitext that causes script execution when another user previews or views the affected map. The script executes in the viewing user's browser session and can access data or perform actions available to that user. This issue is fixed in version 12.1.3.","severity":{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-11","score":0.00578,"percentile":0.48029,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-79","CWE-80"],"published":"2026-07-02T17:51:24Z","modified":"2026-10-28T02:30:25Z","fixes":[{"ecosystem":"Packagist","package":"mediawiki/maps","fixed_in":["12.1.3"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Packagist","package":"mediawiki/maps","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"12.1.3"}]}]},{"source":"osv","ecosystem":"Packagist","package":"mediawiki/maps","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"12.1.3"}]}],"versions":["10.0.0","10.1.0","10.1.1","10.1.2","10.2.0","10.3.0","11.0.0","11.0.1","12.0.0","12.1.0","12.1.1","12.1.2","3.0","3.0-RC2","3.0.1","3.1","3.2.0","3.2.1","3.2.2","3.2.3","3.2.4","3.3.0","3.4.0","3.4.1","3.5.0","3.6.0","3.7.0","3.8.0","3.8.1","3.8.2","4.0.0","4.0.0-RC1","4.0.1","4.0.2","4.0.3","4.0.4","4.0.5","4.1.0","4.2.0","4.2.1","4.3.0","4.4.0","5.0.0","5.0.1","5.0.2","5.1.0","5.2.0","5.3.0","5.4.0","5.5.0","5.5.1","5.5.2","5.5.3","5.5.4","5.5.5","5.6.0","6.0.0","6.0.1","6.0.2","6.0.3","6.0.4","6.1.0","6.2.0","6.2.1","6.2.2","6.3.0","7.0.0","7.1.0","7.10.0","7.11.0","7.12.0","7.12.1","7.12.2","7.13.0","7.14.0","7.15.0","7.15.1","7.15.2","7.15.3","7.15.4","7.15.5","7.15.6","7.16.0","7.17.0","7.17.1","7.17.2","7.18.0","7.19.0","7.2.0","7.20.0","7.20.1","7.3.0","7.3.1","7.3.2","7.3.3","7.4.0","7.4.1","7.5.0","7.6.0","7.7.0","7.8.0","7.8.1","7.8.2","7.8.3","7.9.0","8.0.0","9.0.0","9.0.1","9.0.2","9.0.3","9.0.4","9.0.5","9.0.6","9.0.7"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"mediawiki","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:1.27.3-1","1:1.27.4-1","1:1.27.4-2","1:1.27.4-3"]},{"source":"osv","ecosystem":"Ubuntu:Pro:20.04:LTS","package":"mediawiki","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:1.31.2-1ubuntu1","1:1.31.5-1","1:1.31.5-1ubuntu1","1:1.31.5-2","1:1.31.5-3","1:1.31.5-3ubuntu1","1:1.31.6-1","1:1.31.7-1","1:1.31.7-1ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:22.04:LTS","package":"mediawiki","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:1.35.3-1","1:1.35.4-1","1:1.35.5-1","1:1.35.5-1ubuntu1","1:1.35.5-1ubuntu2","1:1.35.5-1ubuntu3","1:1.35.6-1","1:1.35.6-1ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:24.04:LTS","package":"mediawiki","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:1.39.4-2","1:1.39.5-1","1:1.39.6-1","1:1.39.7-1","1:1.39.7-1ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"mediawiki","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:1.43.8+dfsg-2","1:1.43.9+dfsg-1","1:1.43.9+dfsg-1ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"mediawiki","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:1.43.3+dfsg-1","1:1.43.5+dfsg-1","1:1.43.6+dfsg-2","1:1.43.8+dfsg-1","1:1.43.8+dfsg-2"]}],"products":[{"vendor":"professionalwiki","product":"maps"},{"vendor":"unknown","product":"maps"}],"references":[{"url":"https://github.com/ProfessionalWiki/Maps/security/advisories/GHSA-4h7g-5542-v3fc","tags":["x_refsource_CONFIRM","exploit","advisory","web","report"]},{"url":"https://github.com/ProfessionalWiki/Maps/pull/899","tags":["x_refsource_MISC","fix","report"]},{"url":"https://github.com/ProfessionalWiki/Maps/commit/737a993fc2f40499e9bb22198fd1d56c25613806","tags":["x_refsource_MISC","fix","report"]},{"url":"https://github.com/ProfessionalWiki/Maps/blob/12.1.3/RELEASE-NOTES.md","tags":["x_refsource_MISC","web","report"]},{"url":"https://github.com/ProfessionalWiki/Maps/releases/tag/12.1.3","tags":["x_refsource_MISC","web","report"]},{"url":"https://github.com/advisories/GHSA-4h7g-5542-v3fc"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/52xxx/CVE-2026-52854.json","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-52854","tags":["advisory"]},{"url":"https://github.com/ProfessionalWiki/Maps","tags":["package"]},{"url":"https://ubuntu.com/security/CVE-2026-52854","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-52854","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2026-52854","title":"mediawiki/maps: Stored XSS through the overlays parameter in the display_map parser function","description":"Maps is a MediaWiki extension that enables visualization of geographic data through dynamic embedded maps. Prior to version 12.1.3, the display_map parser function in the Leaflet service accepts attacker-controlled HTML in the overlays parameter, and resources/leaflet/jquery.leaflet.js uses the overlay name as a Leaflet layer-control label without escaping it. A wiki user with the edit permission can store malicious wikitext that causes script execution when another user previews or views the affected map. The script executes in the viewing user's browser session and can access data or perform actions available to that user. This issue is fixed in version 12.1.3.","status":"published","published":"2026-08-18T21:32:09.253Z","modified":"2026-08-19T18:33:53.281Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high","assessor":"cna"}],"cwes":["CWE-79","CWE-80"],"updated_at":"2026-11-02T13:40:57.334596Z"}],"euvd":[{"id":"EUVD-2026-62200","description":"Maps is a MediaWiki extension that enables visualization of geographic data through dynamic embedded maps. Prior to version 12.1.3, the display_map parser function in the Leaflet service accepts attacker-controlled HTML in the overlays parameter, and resources/leaflet/jquery.leaflet.js uses the overlay name as a Leaflet layer-control label without escaping it. A wiki user with the edit permission can store malicious wikitext that causes script execution when another user previews or views the affected map. The script executes in the viewing user's browser session and can access data or perform actions available to that user. This issue is fixed in version 12.1.3.","status":"published","published":"2026-08-18T21:32:09Z","modified":"2026-08-19T18:33:53Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high"}],"updated_at":"2026-11-02T18:01:40.9092Z"}],"ghsa":[{"id":"GHSA-4h7g-5542-v3fc","title":"mediawiki/maps has stored XSS through the overlays parameter in the display_map parser function","description":"### Summary\nStored XSS through wikitext can be performed by inserting malicious HTML into the `overlays` parameter of the `display_map` parser function when using the leaflet service.\n\n### Details\nThe maps extension doesn't escape overlay names before passing them to leaflet.\nLeaflet then inserts them as HTML: https://github.com/ProfessionalWiki/Maps/blob/ca5139fabd75f3c34f47ea3fd161306506b053bc/resources/lib/leaflet/leaflet.js#L5243\n\n### PoC\nPreview the following wikitext, using the default configuration options of the extension:\n```\n{{#display_map:0,0|service=leaflet|overlays=OpenTopoMap.\u003cimg src=x onerror=\"alert(1);\"\u003e}}\n```\n\n### Impact\nStored XSS can be performed by any user with the `edit` permission.","status":"published","published":"2026-07-02T17:51:24Z","modified":"2026-07-02T17:51:27Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high"}],"cwes":["CWE-79","CWE-80"],"updated_at":"2026-11-02T14:40:37.437888Z"}],"nvd":[{"id":"CVE-2026-52854","description":"Maps is a MediaWiki extension that enables visualization of geographic data through dynamic embedded maps. Prior to version 12.1.3, the display_map parser function in the Leaflet service accepts attacker-controlled HTML in the overlays parameter, and resources/leaflet/jquery.leaflet.js uses the overlay name as a Leaflet layer-control label without escaping it. A wiki user with the edit permission can store malicious wikitext that causes script execution when another user previews or views the affected map. The script executes in the viewing user's browser session and can access data or perform actions available to that user. This issue is fixed in version 12.1.3.","status":"published","published":"2026-08-18T22:16:53.47Z","modified":"2026-10-22T17:09:59.477Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high","assessor":"secondary"}],"cwes":["CWE-79","CWE-80"],"updated_at":"2026-11-02T14:12:39.620837Z"}],"osv":[{"id":"CVE-2026-52854","title":"mediawiki/maps: Stored XSS through the overlays parameter in the display_map parser function","description":"Maps is a MediaWiki extension that enables visualization of geographic data through dynamic embedded maps. Prior to version 12.1.3, the display_map parser function in the Leaflet service accepts attacker-controlled HTML in the overlays parameter, and resources/leaflet/jquery.leaflet.js uses the overlay name as a Leaflet layer-control label without escaping it. A wiki user with the edit permission can store malicious wikitext that causes script execution when another user previews or views the affected map. The script executes in the viewing user's browser session and can access data or perform actions available to that user. This issue is fixed in version 12.1.3.","status":"published","published":"2026-08-18T21:32:09.253Z","modified":"2026-10-28T02:30:25.459653656Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high"}],"cwes":["CWE-79","CWE-80"],"updated_at":"2026-11-02T15:45:07.431113Z"},{"id":"GHSA-4h7g-5542-v3fc","title":"mediawiki/maps has stored XSS through the overlays parameter in the display_map parser function","description":"### Summary\nStored XSS through wikitext can be performed by inserting malicious HTML into the `overlays` parameter of the `display_map` parser function when using the leaflet service.\n\n### Details\nThe maps extension doesn't escape overlay names before passing them to leaflet.\nLeaflet then inserts them as HTML: https://github.com/ProfessionalWiki/Maps/blob/ca5139fabd75f3c34f47ea3fd161306506b053bc/resources/lib/leaflet/leaflet.js#L5243\n\n### PoC\nPreview the following wikitext, using the default configuration options of the extension:\n```\n{{#display_map:0,0|service=leaflet|overlays=OpenTopoMap.\u003cimg src=x onerror=\"alert(1);\"\u003e}}\n```\n\n### Impact\nStored XSS can be performed by any user with the `edit` permission.","status":"published","published":"2026-07-02T17:51:24Z","modified":"2026-09-10T03:51:10.324148959Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high"}],"cwes":["CWE-79","CWE-80"],"updated_at":"2026-11-02T15:46:37.148947Z"},{"id":"UBUNTU-CVE-2026-52854","description":"Maps is a MediaWiki extension that enables visualization of geographic data through dynamic embedded maps. Prior to version 12.1.3, the display_map parser function in the Leaflet service accepts attacker-controlled HTML in the overlays parameter, and resources/leaflet/jquery.leaflet.js uses the overlay name as a Leaflet layer-control label without escaping it. A wiki user with the edit permission can store malicious wikitext that causes script execution when another user previews or views the affected map. The script executes in the viewing user's browser session and can access data or perform actions available to that user. This issue is fixed in version 12.1.3.","status":"published","published":"2026-08-18T22:16:00Z","modified":"2026-10-17T13:00:25.221547025Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high"}],"updated_at":"2026-11-02T16:56:33.391918Z"}]}}
