CVE-2023-34577
📋 TL;DR
This CVE describes a critical SQL injection vulnerability in the PrestaShop opartplannedpopup module. Attackers can execute arbitrary SQL commands remotely through the prepareHook() method, potentially compromising the entire database. All PrestaShop installations using opartplannedpopup version 1.4.11 or earlier are affected.
💻 Affected Systems
- PrestaShop opartplannedpopup module
📦 What is this software?
Planned Popup by Planned Popup Project
⚠️ Risk & Real-World Impact
Worst Case
Complete database compromise leading to data theft, data destruction, privilege escalation, and full system takeover via SQL injection to RCE chaining.
Likely Case
Database information disclosure, data manipulation, and potential administrative access to the PrestaShop backend.
If Mitigated
Limited impact if proper input validation and parameterized queries are implemented, though some data exposure may still occur.
🎯 Exploit Status
SQL injection vulnerabilities in web applications are frequently weaponized due to readily available exploitation tools and techniques.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.4.12 or later
Vendor Advisory: https://security.friendsofpresta.org/modules/2023/09/19/opartplannedpopup.html
Restart Required: No
Instructions:
1. Log into PrestaShop admin panel. 2. Navigate to Modules > Module Manager. 3. Search for 'opartplannedpopup'. 4. Click 'Upgrade' to version 1.4.12 or later. 5. Clear PrestaShop cache via Advanced Parameters > Performance.
🔧 Temporary Workarounds
Disable vulnerable module
allTemporarily disable the opartplannedpopup module until patching is possible
UPDATE ps_module SET active = 0 WHERE name = 'opartplannedpopup';
Web Application Firewall (WAF) rules
allImplement WAF rules to block SQL injection patterns targeting the prepareHook() method
🧯 If You Can't Patch
- Implement strict input validation and parameterized queries in the prepareHook() method
- Deploy a web application firewall with SQL injection protection rules
🔍 How to Verify
Check if Vulnerable:
Check module version in PrestaShop admin panel under Modules > Module Manager > opartplannedpopup
Check Version:
SELECT version FROM ps_module WHERE name = 'opartplannedpopup';
Verify Fix Applied:
Confirm module version is 1.4.12 or later and test SQL injection attempts are blocked
📡 Detection & Monitoring
Log Indicators:
- Unusual SQL queries in database logs
- Multiple failed login attempts from single IP
- Unexpected database schema changes
Network Indicators:
- HTTP requests with SQL syntax in parameters
- Traffic spikes to /modules/opartplannedpopup/ endpoints
SIEM Query:
source="web_server" AND (url="*opartplannedpopup*" AND (param="*SELECT*" OR param="*UNION*" OR param="*INSERT*" OR param="*DELETE*"))