Detect CVE-2026-44179: XWiki Pro Macros RCE via Excerpt-Include Macro in Sumo Logic CSE
Detects exploitation of CVE-2026-44179, a critical remote code execution vulnerability in com.xwiki.pro:xwiki-pro-macros versions >= 1.13 and < 1.14.5. The vulnerability (CWE-95: Improper Neutralization of Directives in Dynamically Evaluated Code) allows unauthenticated or low-privileged attackers to execute arbitrary code on the server by injecting malicious Groovy/Velocity script expressions into XWiki page titles or content that are subsequently processed by the excerpt-include macro. A public proof-of-concept is available.
MITRE ATT&CK
Sumo Detection Query
_sourceCategory=* ("java" OR "xwiki")
| parse regex field=_raw "(?<parent_process>java|xwiki)[^\n]*?(?<child_process>bash|sh|cmd\.exe|powershell\.exe|whoami|id|curl|wget|nc|ncat|python|perl)" nodrop
| parse regex field=_raw "(?<dest_port>4444|1337|9001|8888)" nodrop
| parse regex field=_raw "(?<xwiki_path>xwiki-data|XWikiStore|xwiki/data)[^\s]*" nodrop
| where !isNull(child_process) OR !isNull(dest_port) OR !isNull(xwiki_path)
| eval risk_indicator = if(!isNull(child_process), "Shell spawned from XWiki JVM: " + child_process,
if(!isNull(dest_port), "Outbound connection on port " + dest_port + " from XWiki context",
"XWiki data path access: " + xwiki_path))
| eval severity = if(!isNull(child_process), "CRITICAL",
if(!isNull(dest_port), "HIGH", "MEDIUM"))
| count by _sourceHost, risk_indicator, severity
| sort by severity, _count desc Sumo Logic query detecting indicators of RCE exploitation in XWiki Pro Macros (CVE-2026-44179) by identifying shell process spawning, suspicious outbound connections, and XWiki data path access from Java processes.
Data Sources
Required Tables
False Positives & Tuning
- Legitimate administrative macros in XWiki that use shell execution for maintenance
- XWiki extensions with approved outbound network calls to monitoring endpoints
- Data migration scripts that write directly to xwiki-data during scheduled windows
- Developer environments where XWiki is tested with custom Groovy scripts
Other platforms for CVE-2026-44179
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.
- Test 1XWiki Excerpt-Include SSTI via Groovy Script Block
Expected signal: Process creation event showing java (or catalina) as parent process and a subprocess running 'id' or 'sh -c id'. Network logs may show the HTTP response containing the output of the id command.
- Test 2XWiki RCE Reverse Shell via Excerpt-Include Macro
Expected signal: Outbound TCP connection from the XWiki host JVM process to ATTACKER_IP:4444. Process tree shows java -> bash with interactive shell flags. Network flow records an established connection on port 4444.
- Test 3XWiki File Write via RCE to Establish Persistence
Expected signal: File creation event for /tmp/xwiki_rce_proof.txt with the Java/Tomcat process as the creator. Audit log (auditd or Sysmon for Linux) records a file open/write syscall from the java process.
Unlock Pro Content
Get the full detection package for CVE-2026-44179 including response playbook, investigation guide, and atomic red team tests.