T1195 - Supply Chain Compromise

Description from ATT&CK

Adversaries may manipulate products or product delivery mechanisms prior to receipt by a final consumer for the purpose of data or system compromise. Supply chain compromise can take place at any stage of the supply chain including: * Manipulation of development tools * Manipulation of a development environment * Manipulation of source code repositories (public or private) * Manipulation of source code in open-source dependencies * Manipulation of software update/distribution mechanisms * Compromised/infected system images (multiple cases of removable media infected at the factory)(Citation: IBM Storwize)(Citation: Schneider Electric USB Malware) * Replacement of legitimate software with modified versions * Sales of modified/counterfeit products to legitimate distributors * Shipment interdiction While supply chain compromise can impact any component of hardware or software, adversaries looking to gain execution have often focused on malicious additions to legitimate software in software distribution or update channels.(Citation: Avast CCleaner3 2018)(Citation: Microsoft Dofoil 2018)(Citation: Command Five SK 2011) Targeting may be specific to a desired victim set or malicious software may be distributed to a broad set of consumers but only move on to additional tactics on specific victims.(Citation: Symantec Elderwood Sept 2012)(Citation: Avast CCleaner3 2018)(Citation: Command Five SK 2011) Popular open source projects that are used as dependencies in many applications may also be targeted as a means to add malicious code to users of the dependency.(Citation: Trendmicro NPM Compromise)

Atomic Tests


Atomic Test #1 - Octopus Scanner Malware Open Source Supply Chain

This test simulates an adversary Octopus drop the RAT dropper ExplorerSync.db octopus-scanner-malware-open-source-supply-chain the-supreme-backdoor-factory

Supported Platforms: Windows

auto_generated_guid: 82a9f001-94c5-495e-9ed5-f530dbded5e2

Inputs:

| Name | Description | Type | Default Value | |——|————-|——|—————| | rat_payload | RAT dropper ExplorerSync.db | path | $env:TEMP\ExplorerSync.db|

Attack Commands: Run with
1
command_prompt
!

copy %temp%\ExplorerSync.db %temp%\..\Microsoft\ExplorerSync.db
schtasks /create /tn ExplorerSync /tr "javaw -jar %temp%\..\Microsoft\ExplorerSync.db" /sc MINUTE /f

Cleanup Commands:

schtasks /delete /tn ExplorerSync /F 2>null
del %temp%\..\Microsoft\ExplorerSync.db 2>null
del %temp%\ExplorerSync.db 2>null

Dependencies: Run with
1
powershell
!

Description: ExplorerSync.db must exist on disk at specified location (#{rat_payload})
Check Prereq Commands:
1
if (Test-Path #{rat_payload}) {exit 0} else {exit 1}
Get Prereq Commands:
1
Out-File -FilePath "#{rat_payload}"