CVE-2025-29015

6.1 MEDIUM

📋 TL;DR

Code Astro Internet Banking System 2.0.0 contains a stored cross-site scripting vulnerability in the admin panel's name parameter. This allows attackers to inject malicious scripts that execute when administrators view account pages, potentially compromising admin sessions and banking system security. Only systems running this specific version with the vulnerable admin interface are affected.

💻 Affected Systems

Products:
  • Code Astro Internet Banking System
Versions: 2.0.0
Operating Systems: Any
Default Config Vulnerable: ⚠️ Yes
Notes: Requires access to the admin interface at /admin/pages_account.php. The vulnerability is in the name parameter processing.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal admin session cookies, gain full administrative access to the banking system, manipulate customer accounts, transfer funds, or install backdoors for persistent access.

🟠

Likely Case

Attackers would steal admin credentials or session tokens to gain unauthorized access to the banking admin panel, potentially viewing sensitive customer data or modifying account settings.

🟢

If Mitigated

With proper input validation and output encoding, the attack would fail to execute scripts, preventing any compromise while potentially leaving audit trails of attempted attacks.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires access to the admin interface. The GitHub reference shows proof-of-concept code demonstrating the vulnerability.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: None known

Restart Required: No

Instructions:

1. Check vendor website for security updates. 2. If patch available, download and apply according to vendor instructions. 3. Test the fix in a non-production environment first. 4. Deploy to production systems during maintenance window.

🔧 Temporary Workarounds

Input Validation and Sanitization

all

Implement server-side validation and HTML encoding for the name parameter in /admin/pages_account.php

Modify PHP code to use htmlspecialchars($name, ENT_QUOTES, 'UTF-8') before output

Content Security Policy

all

Implement CSP headers to restrict script execution sources

Header set Content-Security-Policy "default-src 'self'; script-src 'self'" in Apache .htaccess or equivalent

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block XSS payloads in the name parameter
  • Restrict access to /admin/ URLs using network ACLs and require VPN for admin access

🔍 How to Verify

Check if Vulnerable:

Test by submitting a payload like <script>alert('XSS')</script> in the name parameter of /admin/pages_account.php and check if script executes when page loads

Check Version:

Check system documentation or admin panel footer for version information. Typically shows 'Code Astro Internet Banking System 2.0.0'

Verify Fix Applied:

After applying fixes, test with same XSS payloads and verify scripts do not execute. Check that input is properly encoded in HTML output.

📡 Detection & Monitoring

Log Indicators:

  • Unusual length or special characters in name parameter values in access logs
  • Multiple failed login attempts followed by successful admin access

Network Indicators:

  • HTTP requests to /admin/pages_account.php with script tags or JavaScript in parameters
  • Unexpected outbound connections from admin server after admin page access

SIEM Query:

source="web_access_logs" AND uri_path="/admin/pages_account.php" AND (param_name="name" AND param_value MATCHES "<script|javascript:|onload=|onerror=")

🔗 References

📤 Share & Export