CVE-2023-23315

9.8 CRITICAL

📋 TL;DR

CVE-2023-23315 is a critical blind SQL injection vulnerability in the PrestaShop stripejs module that allows attackers to execute arbitrary SQL commands via HTTP requests. This affects all PrestaShop installations using the vulnerable stripejs module up to version 4.5.5, potentially compromising the entire e-commerce database.

💻 Affected Systems

Products:
  • PrestaShop stripejs module
Versions: All versions up to and including 4.5.5
Operating Systems: All operating systems running PrestaShop
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects PrestaShop installations with the stripejs module installed and enabled.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise including customer PII, payment information, administrative credentials, and full control over the e-commerce platform leading to data theft, financial fraud, and system takeover.

🟠

Likely Case

Data exfiltration of customer information, order history, and potentially payment data, leading to privacy violations and regulatory compliance issues.

🟢

If Mitigated

Limited impact with proper input validation, parameterized queries, and database user privilege restrictions preventing data modification or system compromise.

🌐 Internet-Facing: HIGH - The vulnerability is exploitable via HTTP requests without authentication, making internet-facing PrestaShop installations immediately vulnerable to remote attacks.
🏢 Internal Only: MEDIUM - Internal systems are still vulnerable but require network access; risk is reduced compared to internet-facing systems.

🎯 Exploit Status

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

The vulnerability requires only HTTP requests to the vulnerable endpoint with crafted parameters; no authentication or special privileges needed.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: stripejs module version 4.5.6 and above

Vendor Advisory: https://friends-of-presta.github.io/security-advisories/modules/2023/03/01/stripejs.html

Restart Required: No

Instructions:

1. Log into PrestaShop admin panel. 2. Navigate to Modules > Module Manager. 3. Search for 'stripejs' module. 4. Click 'Upgrade' to version 4.5.6 or higher. 5. Alternatively, download latest version from PrestaShop Addons marketplace and manually install.

🔧 Temporary Workarounds

Disable stripejs module

linux

Temporarily disable the vulnerable module until patching is possible

php /path/to/prestashop/bin/console prestashop:module disable stripejs

WAF rule to block exploitation attempts

all

Implement web application firewall rules to detect and block SQL injection patterns targeting the vulnerable endpoint

ModSecurity rule: SecRule ARGS "(?i)(union|select|insert|update|delete|drop|create|alter).*" "id:1001,phase:2,deny,status:403,msg:'SQLi attempt detected'"

🧯 If You Can't Patch

  • Implement network segmentation to restrict access to PrestaShop administration interfaces
  • Enable database activity monitoring and alert on unusual SQL query patterns

🔍 How to Verify

Check if Vulnerable:

Check stripejs module version in PrestaShop admin panel under Modules > Module Manager, or examine /modules/stripejs/ directory for version file

Check Version:

grep -r 'version' /path/to/prestashop/modules/stripejs/ || cat /path/to/prestashop/modules/stripejs/stripejs.php | grep 'version'

Verify Fix Applied:

Confirm stripejs module version is 4.5.6 or higher in admin panel, and test that SQL injection payloads no longer execute

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL error messages in PrestaShop logs
  • Multiple requests to stripejs validation endpoint with SQL keywords in parameters
  • Database query errors containing user-supplied input

Network Indicators:

  • HTTP POST requests to /module/stripejs/validation with SQL injection payloads
  • Unusual database connection patterns from web server

SIEM Query:

source="prestashop_logs" AND ("SQL syntax" OR "union select" OR "stripejs/validation")

🔗 References

📤 Share & Export