CVE-2023-45334
📋 TL;DR
Online Food Ordering System v1.0 has unauthenticated SQL injection vulnerabilities in the 'status' parameter of routers/edit-orders.php. Attackers can execute arbitrary SQL commands without authentication, potentially compromising the entire database. All deployments of this specific software version are affected.
💻 Affected Systems
- Online Food Ordering System
📦 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 via database functions.
Likely Case
Database information disclosure, session hijacking, and unauthorized data modification affecting customer orders and system functionality.
If Mitigated
Limited impact with proper input validation and database permissions, potentially only error messages or partial data exposure.
🎯 Exploit Status
SQL injection is well-understood with many automated tools available. The unauthenticated nature makes exploitation trivial.
🛠️ 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 expected values for the 'status' parameter
Modify routers/edit-orders.php to validate 'status' parameter against allowed values list
Web Application Firewall
allDeploy WAF with SQL injection protection rules
Configure WAF to block SQL injection patterns in POST/GET parameters
🧯 If You Can't Patch
- Implement strict input validation in application code for all parameters
- Restrict database user permissions to minimum required functionality
🔍 How to Verify
Check if Vulnerable:
Test the 'status' parameter with SQL injection payloads like: ' OR '1'='1
Check Version:
Check application version in admin panel or readme files
Verify Fix Applied:
Verify that SQL injection payloads no longer execute and return appropriate error messages
📡 Detection & Monitoring
Log Indicators:
- Unusual SQL error messages in application logs
- Multiple failed login attempts following SQL errors
- Unexpected database queries from web server
Network Indicators:
- SQL keywords in HTTP parameters
- Unusual parameter values in POST/GET requests to edit-orders.php
SIEM Query:
source="web_logs" AND (uri="*edit-orders.php*" AND (param="*status=*OR*" OR param="*status=*UNION*" OR param="*status=*SELECT*"))