CVE-2023-46789

9.8 CRITICAL

📋 TL;DR

Online Matrimonial Project v1.0 has unauthenticated SQL injection vulnerabilities in the functions.php resource. Attackers can execute arbitrary SQL commands without authentication, potentially compromising the entire database. All users running this specific version are affected.

💻 Affected Systems

Products:
  • Online Matrimonial Project
Versions: v1.0
Operating Systems: Any
Default Config Vulnerable: ⚠️ Yes
Notes: Affects the functions.php file specifically in the pic1 multipart parameter handling.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise leading to data theft, data destruction, or full system takeover via SQL injection to RCE chaining.

🟠

Likely Case

Database information disclosure, credential theft, and potential privilege escalation.

🟢

If Mitigated

Limited impact with proper input validation and database permissions restricting damage to non-critical data.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Unauthenticated exploitation with publicly available details makes this easily weaponizable.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: https://projectworlds.in

Restart Required: No

Instructions:

No official patch available. Implement input validation and parameterized queries in functions.php.

🔧 Temporary Workarounds

Input Validation Filter

all

Add server-side validation to reject malicious characters in filename parameter

Modify functions.php to sanitize $_FILES['pic1']['name'] input

WAF Rule Implementation

all

Deploy web application firewall rules to block SQL injection patterns

Add WAF rule: deny requests containing SQL keywords in multipart filenames

🧯 If You Can't Patch

  • Isolate the application behind a reverse proxy with strict input filtering
  • Implement database user with minimal permissions (read-only where possible)

🔍 How to Verify

Check if Vulnerable:

Test filename parameter in pic1 multipart with SQL injection payloads like ' OR '1'='1

Check Version:

Check project documentation or source code headers for version information

Verify Fix Applied:

Verify input validation rejects SQL special characters and parameterized queries are implemented

📡 Detection & Monitoring

Log Indicators:

  • Unusual database queries from web application
  • SQL error messages in application logs
  • Multiple failed file upload attempts with suspicious filenames

Network Indicators:

  • HTTP POST requests to functions.php with SQL keywords in multipart data
  • Unusual outbound database connections from web server

SIEM Query:

source="web_logs" AND uri="/functions.php" AND (request CONTAINS "UNION" OR request CONTAINS "SELECT" OR request CONTAINS "OR '1'='1'")

🔗 References

📤 Share & Export