CVE-2025-14201
📋 TL;DR
This CVE describes a cross-site scripting (XSS) vulnerability in the Hotel-Management-services-using-MYSQL-and-php software. Attackers can inject malicious scripts via the item.name parameter in /dishsub.php, potentially compromising user sessions or stealing credentials. The vulnerability affects all versions up to commit 5f8b60a7aa6c06a5632de569d4e3f6a8cd82f76f and can be exploited remotely.
💻 Affected Systems
- alokjaiswal Hotel-Management-services-using-MYSQL-and-php
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Attackers could steal administrator credentials, take over the hotel management system, manipulate booking data, or redirect users to malicious sites.
Likely Case
Session hijacking, credential theft from users accessing the vulnerable page, or defacement of the application interface.
If Mitigated
Limited impact with proper input validation and output encoding, potentially only affecting users who directly interact with malicious payloads.
🎯 Exploit Status
Exploit documentation is publicly available, and the vulnerability requires minimal technical skill to exploit.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Unknown
Vendor Advisory: None available
Restart Required: No
Instructions:
No official patch available. Consider implementing input validation and output encoding as workarounds, or replace with alternative software.
🔧 Temporary Workarounds
Input Validation and Sanitization
allImplement server-side validation to sanitize the item.name parameter before processing.
Modify /dishsub.php to include: $item_name = htmlspecialchars($_POST['item.name'], ENT_QUOTES, 'UTF-8');
Content Security Policy (CSP)
allImplement CSP headers to restrict script execution from untrusted sources.
Add to .htaccess: Header set Content-Security-Policy "default-src 'self'; script-src 'self'"
Or add to PHP: header("Content-Security-Policy: default-src 'self'; script-src 'self'");
🧯 If You Can't Patch
- Restrict access to /dishsub.php using web application firewall (WAF) rules to block malicious input patterns.
- Disable or remove the /dishsub.php file if its functionality is not critical to operations.
🔍 How to Verify
Check if Vulnerable:
Test by submitting a payload like <script>alert('XSS')</script> in the item.name parameter and check if it executes in the browser.
Check Version:
Check the Git commit hash: git log --oneline -1
Verify Fix Applied:
After applying workarounds, test with the same payload to ensure it is properly sanitized and does not execute.
📡 Detection & Monitoring
Log Indicators:
- Unusual POST requests to /dishsub.php with script tags or JavaScript in parameters
- Multiple failed validation attempts on the item.name parameter
Network Indicators:
- HTTP requests containing <script> tags or encoded JavaScript in the item.name parameter
SIEM Query:
source="web_logs" AND url="/dishsub.php" AND (param="item.name" AND value MATCHES "<script>|javascript:")
🔗 References
- https://github.com/Yh276/h0202/blob/main/Hotel-Management-services-using-MYSQL-and-php%20web%201%20xxs.docx
- https://vuldb.com/?ctiid.334621
- https://vuldb.com/?id.334621
- https://vuldb.com/?submit.699994
- https://github.com/Yh276/h0202/blob/main/Hotel-Management-services-using-MYSQL-and-php%20web%201%20xxs.docx