CVE-2025-63949

6.1 MEDIUM

📋 TL;DR

A reflected cross-site scripting vulnerability in the yohanawi Hotel Management System allows attackers to inject malicious scripts via the 'error' parameter in room.php. This affects all users of the vulnerable version who access the system through a web browser. Attackers can steal session cookies, redirect users, or perform actions on their behalf.

💻 Affected Systems

Products:
  • yohanawi Hotel Management System
Versions: Commit 87e004a and potentially earlier versions
Operating Systems: All operating systems running the web application
Default Config Vulnerable: ⚠️ Yes
Notes: Vulnerability exists in the default installation. Any system with the vulnerable room.php page accessible is affected.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attacker steals administrator session cookies, gains full system control, accesses sensitive guest data, and potentially compromises the entire hotel management infrastructure.

🟠

Likely Case

Attacker steals user session cookies to impersonate legitimate users, accesses limited guest information, or redirects users to phishing sites.

🟢

If Mitigated

Script execution is blocked by modern browser XSS protections, limiting impact to basic page defacement or minimal data exposure.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires tricking users into clicking malicious links. No authentication needed to trigger the vulnerability.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Not available

Vendor Advisory: Not available

Restart Required: No

Instructions:

1. Review the GitHub advisory for technical details
2. Manually sanitize the 'error' parameter in pages/room.php
3. Implement proper input validation and output encoding
4. Test the fix thoroughly before deployment

🔧 Temporary Workarounds

Web Application Firewall (WAF) Rule

all

Block requests containing malicious script patterns in the error parameter

WAF-specific configuration required

Content Security Policy (CSP)

all

Implement strict CSP headers to prevent script execution from untrusted sources

Content-Security-Policy: default-src 'self'; script-src 'self'

🧯 If You Can't Patch

  • Restrict access to the hotel management system using network segmentation and firewall rules
  • Implement strong session management with short timeouts and secure cookie attributes (HttpOnly, Secure)

🔍 How to Verify

Check if Vulnerable:

Test by accessing: http://[target]/pages/room.php?error=<script>alert('XSS')</script> and checking for script execution

Check Version:

Check the Git commit hash or version file if available

Verify Fix Applied:

Repeat the test with the same payload and verify no script execution occurs

📡 Detection & Monitoring

Log Indicators:

  • HTTP requests to room.php with script tags or JavaScript in error parameter
  • Unusual error parameter values containing <, >, or script patterns

Network Indicators:

  • HTTP GET requests with JavaScript payloads in query parameters
  • Multiple failed XSS attempts from single IP addresses

SIEM Query:

source="web_logs" AND uri="/pages/room.php" AND query="*error=*script*"

🔗 References

📤 Share & Export