CVE-2021-39321

8.8 HIGH

📋 TL;DR

This vulnerability allows authenticated WordPress users with minimal privileges to perform PHP object injection attacks via a deserialization flaw in the Sassy Social Share plugin. Attackers can execute arbitrary code, potentially leading to complete site compromise. All WordPress sites running the vulnerable plugin version are affected.

💻 Affected Systems

Products:
  • Sassy Social Share WordPress Plugin
Versions: Version 3.3.23 specifically (and possibly earlier versions with similar code)
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with the plugin activated. Any authenticated user can exploit this vulnerability.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Full server compromise allowing remote code execution, data theft, malware installation, and complete site takeover.

🟠

Likely Case

Unauthorized administrative access, plugin/theme modification, data exfiltration, and backdoor installation.

🟢

If Mitigated

Limited impact if proper authentication controls and input validation are in place, but still significant risk.

🌐 Internet-Facing: HIGH - WordPress sites are typically internet-facing and this vulnerability requires only authenticated access.
🏢 Internal Only: MEDIUM - Internal WordPress installations are still vulnerable but have reduced attack surface.

🎯 Exploit Status

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

Exploitation requires authenticated access but minimal technical skill. Public proof-of-concept code exists.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version 3.3.24 or later

Vendor Advisory: https://plugins.trac.wordpress.org/changeset/2600464/sassy-social-share/trunk/admin/class-sassy-social-share-admin.php

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find Sassy Social Share. 4. Click 'Update Now' if available. 5. Alternatively, download version 3.3.24+ from WordPress repository and replace plugin files.

🔧 Temporary Workarounds

Disable vulnerable AJAX endpoint

all

Remove or restrict access to the vulnerable wp_ajax_heateor_sss_import_config AJAX action

Add to theme's functions.php or custom plugin: remove_action('wp_ajax_heateor_sss_import_config', 'import_config');

Restrict user capabilities

all

Limit which user roles can access plugin administration functions

Use WordPress role management plugins or custom code to restrict 'edit_plugins' capability

🧯 If You Can't Patch

  • Immediately disable the Sassy Social Share plugin completely
  • Implement strict network access controls and monitor for suspicious AJAX requests to wp-admin/admin-ajax.php

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → Sassy Social Share → Version. If version is 3.3.23 or earlier, you are vulnerable.

Check Version:

wp plugin list --name='Sassy Social Share' --field=version (WP-CLI) or check WordPress admin panel

Verify Fix Applied:

After updating, verify version shows 3.3.24 or later. Check that the import_config function in class-sassy-social-share-admin.php includes proper capability checks and input validation.

📡 Detection & Monitoring

Log Indicators:

  • POST requests to /wp-admin/admin-ajax.php with action=heateor_sss_import_config
  • Unusual PHP object deserialization errors in error logs
  • Suspicious plugin configuration imports

Network Indicators:

  • Unusual AJAX requests from authenticated users to plugin endpoints
  • Traffic patterns suggesting serialized object injection

SIEM Query:

source="wordpress.log" AND "heateor_sss_import_config" AND status=200

🔗 References

📤 Share & Export