CVE-2025-13245
📋 TL;DR
This vulnerability allows attackers to inject malicious scripts into the Student Information System 2.0 through the /editprofile.php page. When exploited, it enables cross-site scripting attacks that can steal user sessions, redirect users, or deface the application. Organizations using code-projects Student Information System 2.0 are affected.
💻 Affected Systems
- code-projects Student Information System
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Attackers steal administrator credentials, take full control of the system, and exfiltrate sensitive student data including personal information and academic records.
Likely Case
Attackers hijack user sessions to perform unauthorized actions, steal cookies, or redirect users to malicious sites for credential harvesting.
If Mitigated
With proper input validation and output encoding, the attack would fail, and only sanitized data would be processed.
🎯 Exploit Status
The exploit is publicly available on GitHub and can be executed remotely without authentication.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Unknown
Vendor Advisory: https://code-projects.org/
Restart Required: No
Instructions:
No official patch available. Check vendor website for updates or consider alternative solutions.
🔧 Temporary Workarounds
Input Validation and Sanitization
allImplement server-side input validation and output encoding for all user inputs in /editprofile.php
Modify editprofile.php to sanitize inputs using htmlspecialchars() or similar functions
Web Application Firewall (WAF)
allDeploy a WAF with XSS protection rules to block malicious payloads
Configure WAF rules to detect and block XSS patterns in POST/GET requests
🧯 If You Can't Patch
- Isolate the Student Information System behind a reverse proxy with strict input filtering
- Implement Content Security Policy (CSP) headers to restrict script execution sources
🔍 How to Verify
Check if Vulnerable:
Test /editprofile.php with XSS payloads like <script>alert('XSS')</script> and check if script executes
Check Version:
Check system documentation or configuration files for version information
Verify Fix Applied:
After implementing fixes, test with same XSS payloads to ensure they are properly sanitized and don't execute
📡 Detection & Monitoring
Log Indicators:
- Unusual POST requests to /editprofile.php with script tags or JavaScript code
- Multiple failed login attempts followed by profile edits
Network Indicators:
- HTTP requests containing <script> tags or JavaScript functions in URL parameters or POST data
SIEM Query:
source="web_server" AND (url="/editprofile.php" AND (request_body CONTAINS "<script>" OR request_body CONTAINS "javascript:"))