CVE-2025-10180
📋 TL;DR
The Markdown Shortcode WordPress plugin versions up to 0.2.1 contain a stored XSS vulnerability in the 'markdown' shortcode. Authenticated attackers with contributor-level access or higher can inject malicious scripts that execute when users view affected pages. This affects all WordPress sites using vulnerable plugin versions.
💻 Affected Systems
- WordPress Markdown Shortcode plugin
⚠️ Manual Verification Required
This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.
Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).
🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.
- Review the CVE details at NVD
- Check vendor security advisories for your specific version
- Test if the vulnerability is exploitable in your environment
- Consider updating to the latest version as a precaution
⚠️ Risk & Real-World Impact
Worst Case
Attackers could steal admin credentials, deface websites, redirect users to malicious sites, or install backdoors for persistent access.
Likely Case
Attackers with contributor access inject malicious scripts to steal user session cookies or perform actions on behalf of users.
If Mitigated
With proper user role management and content review, impact is limited to potential defacement of specific pages.
🎯 Exploit Status
Requires authenticated access (contributor or higher) and ability to create/edit posts/pages with shortcodes.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 0.2.3
Vendor Advisory: https://github.com/JohannesHoppe/markdown-shortcode/releases/tag/v0.2.3
Restart Required: No
Instructions:
1. Log into WordPress admin panel
2. Navigate to Plugins → Installed Plugins
3. Find 'Markdown Shortcode' plugin
4. Click 'Update Now' if update available
5. If no update appears, manually download version 0.2.3 from WordPress repository
6. Deactivate old plugin, upload new version, activate
🔧 Temporary Workarounds
Disable plugin
allTemporarily deactivate the vulnerable plugin until patched
wp plugin deactivate markdown-shortcode
Restrict user roles
allTemporarily remove contributor-level access from untrusted users
🧯 If You Can't Patch
- Implement strict content review process for all posts/pages containing shortcodes
- Add web application firewall rules to block XSS payloads in post content
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin → Plugins → Installed Plugins for 'Markdown Shortcode' version 0.2.1 or lower
Check Version:
wp plugin get markdown-shortcode --field=version
Verify Fix Applied:
Verify plugin version is 0.2.3 or higher in WordPress admin panel
📡 Detection & Monitoring
Log Indicators:
- Unusual post/page edits by contributor-level users
- Suspicious script tags in post content
Network Indicators:
- Unexpected external script loads from WordPress pages
SIEM Query:
source="wordpress.log" AND ("markdown shortcode" OR "[markdown") AND ("script" OR "onload" OR "onerror")
🔗 References
- https://github.com/JohannesHoppe/markdown-shortcode/releases/tag/v0.2.3
- https://plugins.trac.wordpress.org/browser/markdown-shortcode/trunk/markdown-shortcode.php#L40
- https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3365425%40markdown-shortcode&new=3365425%40markdown-shortcode&sfp_email=&sfph_mail=
- https://www.wordfence.com/threat-intel/vulnerabilities/id/4e9563b8-7e1b-4e87-8b56-17b75adb66c3?source=cve
- https://github.com/JohannesHoppe/markdown-shortcode/commit/2f02cd680eb60cc7d4a92cc64506095d304a95ff