CVE-2025-2382

7.3 HIGH

📋 TL;DR

This critical SQL injection vulnerability in PHPGurukul Online Banquet Booking System 1.0 allows attackers to execute arbitrary SQL commands via the searchdata parameter in /admin/booking-search.php. Attackers can potentially access, modify, or delete database content remotely. All users running version 1.0 without proper input validation are affected.

💻 Affected Systems

Products:
  • PHPGurukul Online Banquet Booking System
Versions: 1.0
Operating Systems: All platforms running PHP
Default Config Vulnerable: ⚠️ Yes
Notes: Requires the /admin/booking-search.php file to be accessible, which is typically part of the default installation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise including data theft, data destruction, authentication bypass, and potential server takeover via SQL injection leading to remote code execution.

🟠

Likely Case

Unauthorized access to sensitive booking data, customer information, and administrative credentials stored in the database.

🟢

If Mitigated

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

🌐 Internet-Facing: HIGH - The vulnerability is remotely exploitable and affects internet-facing booking systems, making them prime targets for automated attacks.
🏢 Internal Only: MEDIUM - Internal systems are still vulnerable but have reduced attack surface compared to internet-facing deployments.

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploit details are publicly disclosed on GitHub, making this easily exploitable by attackers with basic SQL injection knowledge.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Not available

Vendor Advisory: Not available

Restart Required: No

Instructions:

No official patch available. Implement input validation and parameterized queries in /admin/booking-search.php. Replace direct SQL concatenation with prepared statements.

🔧 Temporary Workarounds

Input Validation and Sanitization

all

Add server-side validation to sanitize the searchdata parameter before processing

Modify /admin/booking-search.php to validate and sanitize user input

Web Application Firewall (WAF)

all

Deploy WAF rules to block SQL injection patterns in the searchdata parameter

Configure WAF to detect and block SQL injection attempts on /admin/booking-search.php

🧯 If You Can't Patch

  • Restrict access to /admin/booking-search.php using IP whitelisting or authentication
  • Disable the booking search functionality if not essential for operations

🔍 How to Verify

Check if Vulnerable:

Test the search functionality with SQL injection payloads like ' OR '1'='1 in the searchdata parameter

Check Version:

Check system documentation or configuration files for version information

Verify Fix Applied:

Attempt SQL injection after implementing fixes; successful queries should return no data or error messages

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL error messages in application logs
  • Multiple failed login attempts following search queries
  • Unexpected database queries from the application

Network Indicators:

  • HTTP requests to /admin/booking-search.php containing SQL keywords like UNION, SELECT, OR in parameters

SIEM Query:

source="web_logs" AND uri="/admin/booking-search.php" AND (param="searchdata" AND value MATCHES "(?i)(union|select|or|and|--|#)")

🔗 References

📤 Share & Export