CVE-2023-46785
📋 TL;DR
Online Matrimonial Project v1.0 contains unauthenticated SQL injection vulnerabilities in the partner_preference.php resource. Attackers can execute arbitrary SQL commands without authentication, potentially compromising the entire database. All deployments of this specific version are affected.
💻 Affected Systems
- Online Matrimonial Project
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Complete database compromise including data theft, data destruction, authentication bypass, and potential remote code execution on the database server.
Likely Case
Database information disclosure (user credentials, personal data), data manipulation, and potential privilege escalation.
If Mitigated
Limited impact with proper input validation and database permissions, though injection attempts may still cause performance issues.
🎯 Exploit Status
SQL injection via the 'id' parameter requires minimal technical skill to exploit.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Unknown
Vendor Advisory: https://projectworlds.in
Restart Required: No
Instructions:
1. Check vendor website for updated version. 2. If available, backup database and application files. 3. Replace vulnerable files with patched version. 4. Test functionality.
🔧 Temporary Workarounds
Input Validation Filter
allAdd server-side validation to only accept numeric values for the 'id' parameter
Modify partner_preference.php to validate $_GET['id'] with is_numeric() or filter_var()
Web Application Firewall
allDeploy WAF with SQL injection protection rules
Configure WAF to block SQL injection patterns in URL parameters
🧯 If You Can't Patch
- Isolate the application behind a reverse proxy with strict input validation
- Implement database user with minimal permissions (read-only if possible)
🔍 How to Verify
Check if Vulnerable:
Test partner_preference.php?id=1' OR '1'='1 and observe if SQL error or unexpected behavior occurs
Check Version:
Check project documentation or configuration files for version information
Verify Fix Applied:
Test with same payload after fix - should return error page or sanitized response without SQL errors
📡 Detection & Monitoring
Log Indicators:
- SQL syntax errors in application logs
- Unusual database queries from web server IP
- Multiple rapid requests to partner_preference.php with varying id parameters
Network Indicators:
- HTTP requests containing SQL keywords (SELECT, UNION, etc.) in URL parameters
- Abnormal response patterns from the application
SIEM Query:
web.url: "*partner_preference.php*" AND (web.param.id: "*'*" OR web.param.id: "*SELECT*" OR web.param.id: "*UNION*")