CVE-2023-6991

8.8 HIGH

📋 TL;DR

This vulnerability in the JSM file_get_contents() Shortcode WordPress plugin allows users with contributor role or higher to perform Server-Side Request Forgery (SSRF) attacks. Attackers can make the vulnerable WordPress site send unauthorized requests to internal or external systems, potentially accessing sensitive data or services. All WordPress sites using the affected plugin versions are at risk.

💻 Affected Systems

Products:
  • JSM file_get_contents() Shortcode WordPress plugin
Versions: All versions before 2.7.1
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress with the vulnerable plugin installed and at least one user with contributor role or higher.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could access internal services, exfiltrate sensitive data, scan internal networks, or use the vulnerable server as a proxy for attacks against other systems.

🟠

Likely Case

Unauthorized access to internal HTTP services, information disclosure from internal systems, or scanning of internal network resources.

🟢

If Mitigated

Limited impact if network segmentation restricts internal access and external requests are filtered.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires contributor-level access or higher. The vulnerability is publicly documented with technical details available.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.7.1

Vendor Advisory: https://wpscan.com/vulnerability/0b92becb-8a47-48fd-82e8-f7641cf5c9bc

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'JSM file_get_contents() Shortcode' plugin. 4. Click 'Update Now' if update is available. 5. Alternatively, download version 2.7.1+ from WordPress repository and replace the plugin files.

🔧 Temporary Workarounds

Disable the vulnerable plugin

all

Temporarily deactivate the plugin until patching is possible

wp plugin deactivate jsm-file-get-contents-shortcode

Restrict user roles

all

Remove contributor roles from untrusted users and implement least privilege

🧯 If You Can't Patch

  • Implement network segmentation to restrict the WordPress server from accessing sensitive internal systems
  • Deploy web application firewall (WAF) rules to detect and block SSRF patterns in requests

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → Installed Plugins for 'JSM file_get_contents() Shortcode' plugin version. If version is below 2.7.1, you are vulnerable.

Check Version:

wp plugin get jsm-file-get-contents-shortcode --field=version

Verify Fix Applied:

Confirm plugin version is 2.7.1 or higher in WordPress admin panel.

📡 Detection & Monitoring

Log Indicators:

  • Unusual outbound HTTP requests from WordPress server to internal IPs or unusual domains
  • Multiple failed HTTP requests to internal addresses from WordPress process

Network Indicators:

  • HTTP requests from WordPress server to internal services not typically accessed
  • Unusual traffic patterns from WordPress server to external IPs

SIEM Query:

source="wordpress" AND (url_contains="file_get_contents" OR user_agent_contains="WordPress") AND (dst_ip IN internal_ranges OR dst_ip NOT IN allowed_external)

🔗 References

📤 Share & Export