{"id":"CVE-2026-103485","state":"PUBLISHED","title":"Extensions for Leaflet Map <= 5.4 - Unauthenticated Stored DOM-Based Cross-Site Scripting via External GeoJSON Property","description":"The Extensions for Leaflet Map plugin for WordPress is vulnerable to Stored DOM-Based Cross-Site Scripting via the 'feature.properties[<template-token>]' parameter in all versions up to, and including, 5.4 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. Exploitation requires that a site administrator has previously configured a public map using the [leaflet-map]+[leaflet-geojson]+[choropleth] shortcode combination whose GeoJSON src URL is one the attacker controls — for example, through compromise of an external data host, a subdomain takeover, or a site intentionally pointing at an attacker-hosted feed.","publishedAt":"2026-10-29T09:25:32.060Z","updatedAt":"2026-10-29T10:45:42.096Z","severity":{"score":5.4,"label":"Medium","version":"3.1","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N","source":"Wordfence"},"assigner":"Wordfence","products":["hupe13 Extensions for Leaflet Map"],"affected":[{"vendor":"hupe13","product":"Extensions for Leaflet Map","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThanOrEqual":"5.4","versionType":"semver"}]}],"references":["https://www.wordfence.com/threat-intel/vulnerabilities/id/00c5eb87-3e08-489a-9b30-2fde4aa2274e?source=cve","https://plugins.trac.wordpress.org/browser/extensions-leaflet-map/tags/5.4/js/choropleth.js#L40","https://plugins.trac.wordpress.org/browser/extensions-leaflet-map/tags/5.4/js/choropleth.js#L45","https://plugins.trac.wordpress.org/browser/extensions-leaflet-map/tags/5.4/php/choropleth.php#L47","https://plugins.trac.wordpress.org/browser/extensions-leaflet-map/tags/5.4/php/choropleth.php#L80","https://downloads.wordpress.org/plugin/extensions-leaflet-map.6.0.zip"],"weaknesses":["CWE-79"],"ingestedAt":"2026-10-29T20:10:23.711Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/103xxx/CVE-2026-103485.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-103485","state":"PUBLISHED","datePublished":"2026-10-29T09:25:32.060Z","dateUpdated":"2026-10-29T10:45:42.096Z","assignerShortName":"Wordfence","assignerOrgId":"b15e7b5b-3da4-40ae-a43c-f7aa60e62599","dateReserved":"2026-09-30T16:31:28.883Z"},"containers":{"cna":{"title":"Extensions for Leaflet Map <= 5.4 - Unauthenticated Stored DOM-Based Cross-Site Scripting via External GeoJSON Property","descriptions":[{"lang":"en","value":"The Extensions for Leaflet Map plugin for WordPress is vulnerable to Stored DOM-Based Cross-Site Scripting via the 'feature.properties[<template-token>]' parameter in all versions up to, and including, 5.4 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. Exploitation requires that a site administrator has previously configured a public map using the [leaflet-map]+[leaflet-geojson]+[choropleth] shortcode combination whose GeoJSON src URL is one the attacker controls — for example, through compromise of an external data host, a subdomain takeover, or a site intentionally pointing at an attacker-hosted feed."}],"affected":[{"vendor":"hupe13","product":"Extensions for Leaflet Map","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThanOrEqual":"5.4","versionType":"semver"}]}],"references":[{"url":"https://www.wordfence.com/threat-intel/vulnerabilities/id/00c5eb87-3e08-489a-9b30-2fde4aa2274e?source=cve"},{"url":"https://plugins.trac.wordpress.org/browser/extensions-leaflet-map/tags/5.4/js/choropleth.js#L40"},{"url":"https://plugins.trac.wordpress.org/browser/extensions-leaflet-map/tags/5.4/js/choropleth.js#L45"},{"url":"https://plugins.trac.wordpress.org/browser/extensions-leaflet-map/tags/5.4/php/choropleth.php#L47"},{"url":"https://plugins.trac.wordpress.org/browser/extensions-leaflet-map/tags/5.4/php/choropleth.php#L80"},{"url":"https://downloads.wordpress.org/plugin/extensions-leaflet-map.6.0.zip"}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N","baseScore":5.4,"baseSeverity":"MEDIUM"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-79","lang":"en","description":"CWE-79 Improper Neutralization of Input During Web Page Generation","type":"CWE"}]}],"providerMetadata":{"shortName":"Wordfence","orgId":"b15e7b5b-3da4-40ae-a43c-f7aa60e62599","dateUpdated":"2026-10-29T09:25:32.060Z"},"credits":[{"lang":"en","type":"finder","value":"zickzick2"}],"timeline":[{"time":"2026-09-30T16:46:38.000Z","lang":"en","value":"Vendor Notified"},{"time":"2026-10-28T20:45:22.000Z","lang":"en","value":"Disclosed"}]},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2026-103485","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2026-10-29T10:34:04.826257Z"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-29T10:45:42.096Z"}}]}}}