CVE-2026-106931

EG Secure Solutions SiteGuard Server Edition OS Command Injection (CVE-2026-106931)

Initial Access Execution Last updated:

Detects exploitation of CVE-2026-106931, an OS command injection vulnerability (CWE-78) in EG Secure Solutions SiteGuard Server Edition. SiteGuard is a web application firewall/server security product; the flaw allows an attacker to inject arbitrary operating system commands through unsanitized input processed by the server component, resulting in remote code execution under the context of the SiteGuard/web server process. This CVE is listed in the CISA KEV catalog (BOD 26-04) indicating active in-the-wild exploitation. This detection identifies command-injection payloads in requests to the SiteGuard management/server interface and suspicious child processes spawned by the SiteGuard or web server process.

Vulnerability Intelligence

KEV — Known Exploited

What is CVE-2026-106931 EG Secure Solutions SiteGuard Server Edition OS Command Injection (CVE-2026-106931)?

EG Secure Solutions SiteGuard Server Edition OS Command Injection (CVE-2026-106931) (CVE-2026-106931) maps to the Initial Access and Execution tactics — the adversary is trying to get into your network in MITRE ATT&CK.

This page provides production-ready detection logic for EG Secure Solutions SiteGuard Server Edition OS Command Injection (CVE-2026-106931), covering the data sources and telemetry it touches: IIS/Web server access logs, Syslog. The queries below are rated critical severity at medium confidence, and ship for 7 SIEM platforms — KQL, SPL, Elastic, QRadar, Sumo, YARA-L, LogScale.

MITRE ATT&CK

Tactic
Initial Access Execution
Microsoft Sentinel / Defender
kusto
let cmdInjectionPatterns = dynamic([";","|","&&","`","$(","%3B","%7C","%26","wget ","curl ","/bin/sh","/bin/bash","cmd.exe","powershell","nc ","bash -i"]);
union isfuzzy=true
(
W3CIISLog
| where csUriStem has_cs "siteguard" or csUriQuery has_any ("siteguard","sg_")
| where csUriQuery has_any (cmdInjectionPatterns) or csUriStem has_any (cmdInjectionPatterns)
| extend EvidenceField = strcat(csUriStem, "?", csUriQuery)
| project TimeGenerated, SrcIp = cIP, Host = sSiteName, Method = csMethod, EvidenceField, UserAgent = csUserAgent
),
(
Syslog
| where ProcessName has "siteguard" or SyslogMessage has "siteguard"
| where SyslogMessage has_any (cmdInjectionPatterns)
| project TimeGenerated, SrcIp = HostIP, Host = HostName, EvidenceField = SyslogMessage
)

Finds HTTP requests to SiteGuard endpoints and SiteGuard syslog messages containing OS command-injection metacharacters or download/shell payloads indicative of CVE-2026-106931 exploitation.

critical severity medium confidence

Data Sources

IIS/Web server access logs Syslog

Required Tables

W3CIISLog Syslog

False Positives

  • Security scanners and authorized vulnerability assessments probing SiteGuard with injection payloads
  • Legitimate admin requests whose query strings happen to contain shell metacharacters (e.g. passwords with special characters)
  • Penetration testing engagements against the SiteGuard appliance

Sigma rule & cross-platform mapping

The detection logic for EG Secure Solutions SiteGuard Server Edition OS Command Injection (CVE-2026-106931) (CVE-2026-106931) above is provided in a vendor-neutral form so you can deploy it on any SIEM. The same logic is shipped here as native KQL (Microsoft Sentinel / Defender), SPL (Splunk), Elastic (Elastic Security (EQL)), QRadar (IBM QRadar (AQL)), Sumo (Sumo Logic CSE), YARA-L (Google Chronicle / SecOps), LogScale (CrowdStrike LogScale (CQL)) queries. In Sigma terms, this detection targets the following logsource:

logsource:
  product: windows

Browse the community-maintained Sigma rules for this technique:


Testing Methodology

Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.

  1. Test 1 Simulated command injection via SiteGuard query string

    Expected signal: Web/IIS access log entry for /siteguard/admin with URL-encoded ';id' in the query string

  2. Test 2 Web server spawns shell child process

    Expected signal: Process-start event: parent httpd/nginx/www-data spawning /bin/sh

  3. Test 3 Remote payload download from server context

    Expected signal: Process-start event for curl with parent in the web server context and outbound network connection


Response Playbook

Triage

  1. Confirm the targeted host runs EG Secure Solutions SiteGuard Server Edition and identify its exact version against the vendor advisory (alert-202610-1).
  2. Extract the full request payload (URL/query/body) and decode any URL-encoded metacharacters to confirm an OS command-injection pattern rather than a benign special character.
  3. Correlate the source IP against threat intel and determine whether it is an authorized scanner, a known pentest source, or an untrusted external host.
  4. Pivot to endpoint process telemetry on the SiteGuard host to check whether the web server or SiteGuard process spawned any shell, download, or interpreter child processes around the request time.

Containment

  1. Isolate or network-segment the affected SiteGuard host to prevent lateral movement and command-and-control callbacks.
  2. Block the attacker source IP(s) at the perimeter and apply the vendor-supplied patch or mitigation from the SiteGuard advisory immediately.
  3. Rotate credentials and secrets accessible from the SiteGuard/web server process context, as RCE may have exposed them.

Evidence Collection

  1. Preserve web server access/error logs, SiteGuard application logs, and syslog covering the suspected exploitation window.
  2. Capture a memory image and disk/triage collection of the SiteGuard host, including process listings, cron/systemd/service persistence, and recently modified files.
  3. Export EDR process-tree, network-connection, and file-write telemetry for the SiteGuard and web server processes.

Escalation Criteria

  • ! Escalate to incident response if a shell, reverse connection, or unexpected child process is confirmed to have been spawned from the SiteGuard/web server process.
  • ! Escalate if there is evidence of persistence, credential access, or lateral movement from the affected host.
  • ! Escalate to management/legal if the host handles regulated data or if KEV-mandated remediation timelines (CISA BOD 26-04) are at risk of being missed.

Investigation Guide

Forensic Artifacts

  • > Web server and SiteGuard access/error logs showing injection payloads
  • > Shell history, spawned process artifacts, and newly created/modified files under the SiteGuard or web root directories
  • > New cron jobs, systemd services, or startup entries indicating persistence

Tuning Guidance

Baseline legitimate SiteGuard administrative traffic and known scanner/pentest source IPs, then exclude them. Narrow the metacharacter set to those relevant to the SiteGuard request format if benign parameters frequently contain special characters. Pair the web-log signal with the endpoint process-spawn signal to raise confidence and suppress standalone probe noise.


Hunting Queries

Hunts for SiteGuard requests carrying command-injection metacharacters or download/shell payloads over time.

Hunting — KQL
kql
W3CIISLog | where csUriStem has "siteguard" or csUriQuery has "siteguard" | where csUriQuery has_any (";","|","&&","wget","curl","/bin/sh") | summarize count() by cIP, csUriStem, bin(TimeGenerated, 1h)
Hunting — SPL
spl
index=web ("siteguard" OR "sg_") | regex uri_query="(;|\||&&|wget|curl|/bin/sh)" | stats count by src_ip, uri_path

Atomic Red Team Tests

Test 1 Simulated command injection via SiteGuard query string
linux

Sends an HTTP request to a lab SiteGuard endpoint with a shell metacharacter and benign command to generate a web-log detection event.

Command

bash
curl -s 'http://siteguard-lab.local/siteguard/admin?param=test%3Bid' -A 'atomic-test-cve-2026-106931'

Cleanup

bash
echo 'No cleanup required; request is non-persistent'

Expected Telemetry

Web/IIS access log entry for /siteguard/admin with URL-encoded ';id' in the query string

Expected Detection

The kql/spl/qradar_aql/sumo_logic/chronicle_yaral web-log queries match on the injection metacharacters.

Test 2 Web server spawns shell child process
linux

Simulates post-injection behavior by having a web-server-context process spawn /bin/sh running a command.

Command

bash
sudo -u www-data /bin/sh -c 'id; uname -a'

Cleanup

bash
echo 'No persistence created'

Expected Telemetry

Process-start event: parent httpd/nginx/www-data spawning /bin/sh

Expected Detection

The elastic_eql and crowdstrike_cql process-lineage queries match the shell child process.

Test 3 Remote payload download from server context
linux

Simulates attacker downloading a second-stage payload via curl from the web server process context.

Command

bash
sudo -u www-data curl -s -o /tmp/atomic_payload http://127.0.0.1/payload.txt

Cleanup

bash
rm -f /tmp/atomic_payload

Expected Telemetry

Process-start event for curl with parent in the web server context and outbound network connection

Expected Detection

The elastic_eql and crowdstrike_cql queries match curl spawned by the web server parent process.

Related Detections