CVE-2019-12348

9.8 CRITICAL

📋 TL;DR

This SQL injection vulnerability in zzcms 2019 allows attackers to execute arbitrary SQL commands through the daohang or img POST parameters in user/ztconfig.php. This affects all systems running vulnerable versions of zzcms 2019, potentially compromising database integrity and confidentiality.

💻 Affected Systems

Products:
  • zzcms
Versions: 2019 version (specific build numbers not specified in CVE)
Operating Systems: All platforms running PHP
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability exists in the default installation of zzcms 2019. No special configuration is required for exploitation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise including data theft, data manipulation, privilege escalation, and potential remote code execution via database functions.

🟠

Likely Case

Unauthorized data access, extraction of sensitive information (user credentials, personal data), and potential database corruption.

🟢

If Mitigated

Limited impact with proper input validation, parameterized queries, and web application firewall rules blocking SQL injection patterns.

🌐 Internet-Facing: HIGH - The vulnerable endpoint is accessible via HTTP POST requests, making it directly exploitable from the internet.
🏢 Internal Only: MEDIUM - Internal attackers could exploit this to escalate privileges or access sensitive data, though external exposure is more dangerous.

🎯 Exploit Status

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

SQL injection via POST parameters is well-understood and easily automated. The GitHub reference shows proof-of-concept exploitation details.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: Not available

Restart Required: No

Instructions:

No official patch available. Consider upgrading to a newer version of zzcms if available, or implement workarounds.

🔧 Temporary Workarounds

Input Validation and Sanitization

all

Add server-side validation to sanitize daohang and img parameters before processing

Edit user/ztconfig.php to add parameter validation using prepared statements or input filtering

Web Application Firewall Rules

all

Implement WAF rules to block SQL injection patterns targeting the vulnerable endpoint

Add rule to block requests containing SQL keywords in daohang or img parameters to user/ztconfig.php

🧯 If You Can't Patch

  • Restrict access to user/ztconfig.php via network controls or authentication
  • Implement database-level protections: use least privilege accounts, enable query logging for suspicious patterns

🔍 How to Verify

Check if Vulnerable:

Test by sending SQL injection payloads in daohang or img POST parameters to /user/ztconfig.php and observing database errors or unexpected responses

Check Version:

Check zzcms version in admin panel or configuration files

Verify Fix Applied:

Verify that SQL injection payloads no longer execute and return appropriate error messages or are blocked

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL errors in web server logs
  • Multiple POST requests to user/ztconfig.php with suspicious parameters
  • Database query logs showing unexpected SQL commands

Network Indicators:

  • HTTP POST requests to /user/ztconfig.php containing SQL keywords (SELECT, UNION, etc.) in parameters

SIEM Query:

source="web_server" AND uri="/user/ztconfig.php" AND (param="daohang" OR param="img") AND (value="*SELECT*" OR value="*UNION*" OR value="*OR*1=1*")

🔗 References

📤 Share & Export