CVE-2026-16601
CM Map Locations <= 2.1.8 - Authenticated (Subscriber+) Arbitrary File Upload via cmloc_route_image_upload AJAX Action
- 8.8HighCVSS base score
- 1.2%Exploitation in 30 daysEPSS · top 32% of all CVEs
- NoKnown exploitednot in CISA's KEV catalog
- NonePublic exploitsnone known yet
Description
The CM Map Locations – Visualize and share your locations in a few clicks plugin for WordPress is vulnerable to Limited Arbitrary File Upload in all versions up to, and including, 2.1.8 via the uploadMedia function. This is due to insufficient file type validation in the upload handler, which performs incomplete extension filtering without MIME-type checks or upload capability verification before passing attacker-supplied files to move_uploaded_file(). This makes it possible for authenticated attackers, with subscriber-level access and above, to upload files that may be executable, which makes remote code execution possible. The required nonce is exposed to any logged-in Subscriber via the CMLOC_Editor_Images JavaScript object on the front-end location editor page.
Timeline
ID reserved
By Wordfence
- 34 days later
· 34 days later
Published
- 2 days later
· 2 days later
Record updated
Changes after publication (a new score, a public exploit, EPSS crossing 1, 10 or 50 %, leaving KEV) are kept since November 2026; earlier ones are not known.
Scores
| Scored by | CVSS | Score | Vector |
|---|---|---|---|
| WordfenceCNA (assigner) | 3.1 | High8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| NVDNVD · Deferred | 3.1 | High8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
- EPSS (exploitation in 30 days)
- 1.2% · top 32% of all CVEs (11 Nov 2026)
- CISA SSVC
- Exploitation: none · Automatable: yes · Technical impact: partial
The list uses the assigner's score when there is one, then CISA's, then NVD's: High 8.8.
Affected products
References
References9
- https://www.wordfence.com/threat-intel/vulnerabilities/id/41308ae8-1b3d-4658-808d-630d6e673f3f?source=cve (opens in a new tab)
- https://plugins.trac.wordpress.org/browser/cm-map-locations/tags/2.1.8/core/controller/Controller.php#L45 (opens in a new tab)
- https://plugins.trac.wordpress.org/browser/cm-map-locations/tags/2.1.8/controller/DashboardController.php#L385 (opens in a new tab)
- https://plugins.trac.wordpress.org/browser/cm-map-locations/tags/2.1.8/model/Route.php#L362 (opens in a new tab)
- https://plugins.trac.wordpress.org/browser/cm-map-locations/tags/2.1.8/model/Attachment.php#L240 (opens in a new tab)
- https://plugins.trac.wordpress.org/browser/cm-map-locations/tags/2.1.8/controller/DashboardController.php#L105 (opens in a new tab)
- https://plugins.trac.wordpress.org/changeset?reponame=&new=3626853%40cm-map-locations%2Ftags%2F2.1.9&old=3544748%40cm-map-locations%2Ftags%2F2.1.8 (opens in a new tab)
- https://plugins.trac.wordpress.org/changeset/3626848/cm-map-locations/trunk/controller/DashboardController.php (opens in a new tab)
- https://plugins.trac.wordpress.org/changeset?old_path=%2Fcm-map-locations/tags/2.1.8&new_path=%2Fcm-map-locations/tags/2.1.9 (opens in a new tab)
Sources
The same CVE in the primary databases and aggregators, to check against.
- CVE.org record (opens in a new tab)
- CVE List JSON (GitHub) (opens in a new tab)
- NVD (opens in a new tab)
- FIRST EPSS (opens in a new tab)
- EUVD EUVD-2026-65313 (opens in a new tab)
- OSV.dev (opens in a new tab)
- GitHub Advisories (opens in a new tab)
- CIRCL Vulnerability-Lookup (opens in a new tab)
Badge for a README or a ticket
[](https://cveledger.app/cve/CVE-2026-16601)Record last updated .