T1195.002 Elastic Security · Elastic

Detect Compromise Software Supply Chain in Elastic Security

Adversaries may manipulate application software prior to receipt by a final consumer for the purpose of data or system compromise. Supply chain compromise of software can take place in a number of ways, including manipulation of the application source code, manipulation of the update/distribution mechanism for that software, or replacing compiled releases with a modified version. Real-world examples include SUNSPOT injecting SUNBURST into SolarWinds Orion builds, CCBkdr backdooring CCleaner 5.33, and Sandworm replacing M.E.Doc updates with NotPetya. Detection focuses on post-installation behavioral anomalies: legitimate software exhibiting unexpected child process execution, unusual outbound connectivity, suspicious DLL loading, and credential access patterns that should never originate from trusted update mechanisms.

MITRE ATT&CK

Tactic
Initial Access
Technique
T1195 Supply Chain Compromise
Sub-technique
T1195.002 Compromise Software Supply Chain
Canonical reference
https://attack.mitre.org/techniques/T1195/002/

Elastic Detection Query

Elastic Security (Elastic)
eql
sequence by host.id with maxspan=5m
  [process where event.type == "start"
    and process.parent.name in~ ("msiexec.exe", "setup.exe", "install.exe", "installer.exe", "update.exe", "updater.exe", "autoupdate.exe", "softwareupdate.exe", "uninst.exe", "uninstall.exe", "patch.exe", "patchinstall.exe")
    and process.name in~ ("powershell.exe", "pwsh.exe", "cmd.exe", "wscript.exe", "cscript.exe", "mshta.exe", "regsvr32.exe", "rundll32.exe", "certutil.exe", "bitsadmin.exe", "wmic.exe", "msbuild.exe", "installutil.exe", "regasm.exe", "cmstp.exe", "control.exe")]
  [any where true]

sequence by host.id with maxspan=2m
  [file where event.type == "creation"
    and process.name in~ ("msiexec.exe", "setup.exe", "install.exe", "installer.exe", "update.exe", "updater.exe", "autoupdate.exe", "softwareupdate.exe", "uninst.exe", "uninstall.exe", "patch.exe", "patchinstall.exe")
    and file.extension in ("exe", "dll", "ps1", "bat", "vbs", "js")
    and (file.path like~ "*\\Temp\\*" or file.path like~ "*\\AppData\\Local\\Temp\\*" or file.path like~ "*\\Windows\\Temp\\*")]
  [process where event.type == "start"
    and process.name in~ ("powershell.exe", "pwsh.exe", "cmd.exe", "wscript.exe", "cscript.exe", "mshta.exe", "regsvr32.exe", "rundll32.exe", "certutil.exe")]
critical severity high confidence

Detects T1195.002 supply chain compromise post-delivery indicators: installer/updater processes spawning suspicious LOLBin children (branch 1) and update processes dropping executables in temp directories followed by execution (branch 2). Covers SolarWinds SUNSPOT/SUNBURST, CCleaner CCBkdr, and NotPetya M.E.Doc-style patterns.

Data Sources

Elastic Endpoint SecurityWindows Event LogsSysmon

Required Tables

logs-endpoint.events.process-*logs-endpoint.events.file-*logs-windows.sysmon_operational-*

False Positives & Tuning

  • Legitimate enterprise software installers (e.g., Microsoft Office, Adobe) that invoke PowerShell or cmd.exe post-install for configuration tasks — validate SHA256 hash and certificate chain of installer
  • IT management tooling (SCCM, Intune, Ansible) that uses update.exe or install.exe wrappers to orchestrate post-install configuration scripts via PowerShell
  • Developer workstations running build pipelines where msiexec is invoked programmatically and legitimately spawns shell processes for packaging tasks
Download portable Sigma rule (.yml)

Other platforms for T1195.002


Testing Methodology

Validate this detection against 4 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 1Simulate Backdoored Installer Spawning PowerShell (Post-Install C2 Simulation)

    Expected signal: Sysmon Event ID 1: Process Create with ParentImage=msiexec.exe, Image=powershell.exe, CommandLine containing '-WindowStyle Hidden' and 'Invoke-WebRequest'. Sysmon Event ID 3: Network Connection attempt from powershell.exe to 127.0.0.1:9999 (connection refused is acceptable). Security Event ID 4688 if command line auditing is enabled.

  2. Test 2Simulate Build Tool Spawning Unexpected Shell (SUNSPOT-Style Build Injection)

    Expected signal: Sysmon Event ID 1: Process Create with ParentImage=msbuild.exe (or cmd.exe spawned from the test fallback), Image=cmd.exe, CommandLine containing 'whoami'. Security Event ID 4688 with NewProcessName=cmd.exe, CreatorProcessName=msbuild.exe. File creation event for the output file in %TEMP%.

  3. Test 3Simulate Supply Chain Malware Dropping Executable in Temp During Install

    Expected signal: Sysmon Event ID 11: File Create with TargetFilename=%TEMP%\payload_stage2.exe, Image=powershell.exe. Sysmon Event ID 1: PowerShell spawning (parent chain visible). The file copy of calc.exe will have a known benign SHA256 but the file path in Temp will be flagged.

  4. Test 4Verify Code Signing Certificate on Installed Binary (Supply Chain Investigation Validation)

    Expected signal: Sysmon Event ID 1: PowerShell process spawned. No file modification events. The command performs read-only certificate inspection. PowerShell ScriptBlock Log Event ID 4104 captures the script content. This is purely a verification/investigation command.

Unlock Pro Content

Get the full detection package for T1195.002 including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections