CVE-2023-25455

5.3 MEDIUM

📋 TL;DR

This CVE describes a Missing Authorization vulnerability in the miniOrange WordPress Social Login and Register plugin that allows attackers to delete arbitrary content without proper authentication. It affects WordPress sites using this plugin for social login functionality. All versions up to 7.6.0 are vulnerable.

💻 Affected Systems

Products:
  • WordPress Social Login and Register (Discord, Google, Twitter, LinkedIn) by miniOrange
Versions: All versions up to and including 7.6.0
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Affects WordPress installations with the vulnerable plugin activated. No special configuration required.

⚠️ 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.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could delete critical WordPress content including posts, pages, media, and potentially compromise site functionality or availability.

🟠

Likely Case

Unauthorized users deleting posts, pages, or media content, potentially causing content loss and site disruption.

🟢

If Mitigated

Limited impact with proper access controls and monitoring, but still represents an authentication bypass vulnerability.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

The vulnerability allows arbitrary content deletion without authentication. Public exploit details are available in security advisories.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 7.6.1 or later

Vendor Advisory: https://patchstack.com/database/wordpress/plugin/miniorange-login-openid/vulnerability/wordpress-wordpress-social-login-and-register-discord-google-twitter-linkedin-plugin-7-6-0-arbitrary-content-deletion-vulnerability?_s_id=cve

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'WordPress Social Login and Register (Discord, Google, Twitter, LinkedIn)'. 4. Click 'Update Now' if update is available. 5. Alternatively, download version 7.6.1+ from WordPress repository and manually update.

🔧 Temporary Workarounds

Disable vulnerable plugin

all

Temporarily disable the miniOrange Social Login plugin until patched

wp plugin deactivate miniorange-login-openid

Restrict access via .htaccess

linux

Add access restrictions to plugin directories

# Add to .htaccess in wp-content/plugins/miniorange-login-openid/
Order Deny,Allow
Deny from all

🧯 If You Can't Patch

  • Disable the miniOrange Social Login plugin immediately
  • Implement web application firewall rules to block unauthorized content deletion requests

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel > Plugins > Installed Plugins for 'WordPress Social Login and Register' version 7.6.0 or earlier

Check Version:

wp plugin get miniorange-login-openid --field=version

Verify Fix Applied:

Verify plugin version is 7.6.1 or later in WordPress admin panel

📡 Detection & Monitoring

Log Indicators:

  • Unauthorized POST requests to wp-admin/admin-ajax.php with action=mo_openid_delete_post
  • Multiple content deletion events from unauthenticated users
  • 404 errors for previously existing content

Network Indicators:

  • HTTP POST requests to /wp-admin/admin-ajax.php with delete parameters from unauthorized IPs

SIEM Query:

source="wordpress.log" AND "admin-ajax.php" AND "mo_openid_delete_post" AND NOT user="authenticated"

🔗 References

📤 Share & Export