CVE-2025-59748

6.1 MEDIUM

📋 TL;DR

This reflected cross-site scripting (XSS) vulnerability in AndSoft's e-TMS allows attackers to execute arbitrary JavaScript in victims' browsers by tricking them into clicking malicious URLs containing specially crafted 'l' and 'reset' parameters. Organizations using e-TMS v25.03 are affected, potentially exposing user sessions and sensitive data.

💻 Affected Systems

Products:
  • AndSoft e-TMS
Versions: v25.03
Operating Systems: Windows
Default Config Vulnerable: ⚠️ Yes
Notes: Vulnerability exists in the default installation when accessed via web interface.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers steal administrator credentials, hijack user sessions, deface the application, or redirect users to malicious sites, potentially leading to complete system compromise.

🟠

Likely Case

Attackers steal user session cookies, perform actions on behalf of authenticated users, or capture sensitive form data through crafted phishing campaigns.

🟢

If Mitigated

With proper input validation and output encoding, the attack would fail to execute JavaScript, limiting impact to parameter manipulation without code execution.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Reflected XSS typically requires user interaction (clicking malicious link) but is trivial to craft and deploy.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Not specified

Vendor Advisory: https://www.incibe.es/en/incibe-cert/notices/aviso/update-24092025-multiple-vulnerabilities-andsofts-e-tms

Restart Required: No

Instructions:

1. Monitor vendor for security updates. 2. Apply patches when available. 3. Test in non-production environment first.

🔧 Temporary Workarounds

Web Application Firewall (WAF)

all

Deploy WAF rules to block malicious XSS payloads in URL parameters.

Input Validation Filter

all

Implement server-side validation to sanitize 'l' and 'reset' parameters.

🧯 If You Can't Patch

  • Implement strict Content Security Policy (CSP) headers to restrict script execution.
  • Deploy network segmentation to limit access to vulnerable systems.

🔍 How to Verify

Check if Vulnerable:

Test by accessing /clt/changepassword.asp with malicious script in 'l' or 'reset' parameters and check if it executes.

Check Version:

Check application version in admin interface or about page.

Verify Fix Applied:

Retest with same payloads after remediation; scripts should be properly encoded or blocked.

📡 Detection & Monitoring

Log Indicators:

  • Unusual long parameter values in /clt/changepassword.asp requests
  • Requests containing script tags or JavaScript keywords in URL parameters

Network Indicators:

  • HTTP requests with suspicious characters (<, >, ", ') in 'l' or 'reset' parameters

SIEM Query:

source="web_server" AND uri="/clt/changepassword.asp" AND (param="l" OR param="reset") AND (value="*<script>*" OR value="*javascript:*")

🔗 References

📤 Share & Export