CVE-2025-44183

6.1 MEDIUM

📋 TL;DR

CVE-2025-44183 is a stored cross-site scripting (XSS) vulnerability in Phpgurukul Vehicle Record Management System v1.0 that allows attackers to inject malicious scripts into admin profile fields. When an admin views the profile page, these scripts execute in their browser context, potentially compromising the admin session. This affects all deployments of the vulnerable software version.

💻 Affected Systems

Products:
  • Phpgurukul Vehicle Record Management System
Versions: v1.0
Operating Systems: Any OS running PHP
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability exists in the default installation. Requires admin access to exploit the stored XSS, but once injected, affects all admin users viewing the profile.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

An attacker could steal admin session cookies, perform actions as the admin (including adding malicious users or modifying system data), and potentially pivot to further system compromise.

🟠

Likely Case

Attackers inject malicious scripts to steal admin credentials or session tokens, leading to unauthorized access to the vehicle management system.

🟢

If Mitigated

With proper input validation and output encoding, the malicious scripts would be neutralized before execution, preventing exploitation.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires admin-level access to inject the XSS payload into profile fields. Public proof-of-concept demonstrates the vulnerability.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: https://phpgurukul.com/vehicle-record-system-using-php-and-mysql/

Restart Required: No

Instructions:

1. Download the latest version from phpgurukul.com if available. 2. Replace vulnerable files with patched versions. 3. Test the profile functionality.

🔧 Temporary Workarounds

Input Validation and Output Encoding

all

Implement proper input validation and HTML entity encoding for name, email, and mobile parameters in profile.php

Modify /admin/profile.php to add htmlspecialchars() or similar encoding around user-controlled output

🧯 If You Can't Patch

  • Restrict admin profile editing to trusted users only
  • Implement web application firewall (WAF) rules to block XSS payloads

🔍 How to Verify

Check if Vulnerable:

Test by entering a basic XSS payload like <script>alert('XSS')</script> into name, email, or mobile fields in the admin profile and check if it executes when viewing the profile.

Check Version:

Check the software version in the admin panel or review the source code headers.

Verify Fix Applied:

Attempt the same XSS payload after applying fixes; it should display as encoded text rather than executing.

📡 Detection & Monitoring

Log Indicators:

  • Unusual script tags or JavaScript in profile update requests
  • Multiple profile updates from same admin account

Network Indicators:

  • HTTP POST requests to /admin/profile.php containing script tags or JavaScript code

SIEM Query:

source="web_logs" AND uri="/admin/profile.php" AND (body CONTAINS "<script>" OR body CONTAINS "javascript:")

🔗 References

📤 Share & Export