MITRE D3FENDdefensive technique
D3-PSA Process Spawn Analysis
- Tactic
- Detect
Definition
Analyzing spawn arguments or attributes of a process to detect processes that are unauthorized.
How it works
How it works
Process attributes are established when an operating system spawns a new process. These attributes are analyzed to look for the presence or absence of specific values or patterns.
Some attributes of interest are:
• user
• process name
• image path
• security content
Considerations
• Attackers can spoof the parent process identifier (PPID), which could bypass this defense to allow execution of a malicious process from an arbitrary parent process.
• Attackers could have legitimately compromised any of the process properties, such as the user, to make the execution appear legitimate.
• Location: If the full image path is not checked, there could be a conflict with an executable that appears earlier due to resolution involving the system environment path/classpath variable.
• Parsing issues: If the raw command from a shell is analyzed, rather than the actual function call, it is important to identify the actual command being run from its arguments. In Windows, services with unquoted file paths containing spaces will try to use the first token as the executable and the rest as arguments -- and shift tokens to the executable until a valid one is found.
• Some operating systems can spawn processes without forking.
Related
Counters · MITRE ATT&CK (54)
- T0895 Autorun Image technique
- T0894 System Binary Proxy Execution technique
- T1621 Multi-Factor Authentication Request Generation technique
- T0821 Modify Controller Tasking technique
- T0888 Remote System Information Discovery technique
- T0806 Brute Force I/O technique
- T0813 Denial of Control technique
- T0814 Denial of Service technique
- T0819 Exploit Public-Facing Application technique
- T0823 Graphical User Interface technique
- T0846 Remote System Discovery technique
- T0863 User Execution technique
- T0878 Alarm Suppression technique
- T1003.004 LSA Secrets sub-technique
- T1134.004 Parent PID Spoofing sub-technique
- T1003.001 LSASS Memory sub-technique
- T1003.002 Security Account Manager sub-technique
- T1556 Modify Authentication Process technique
- T1548 Abuse Elevation Control Mechanism technique
- T1548.002 Bypass User Account Control sub-technique
- T1550 Use Alternate Authentication Material technique
- T1546.007 Netsh Helper DLL sub-technique
- T1546.009 AppCert DLLs sub-technique
- T1546.010 AppInit DLLs sub-technique
- T1218.001 Compiled HTML File sub-technique
- T1218.002 Control Panel sub-technique
- T1218.003 CMSTP sub-technique
- T1218.005 Mshta sub-technique
- T1218.011 Rundll32 sub-technique
- T1546 Event Triggered Execution technique
Child of · MITRE D3FEND (1)
- D3-PA Process Analysis defensive technique
Referenced by MITRE D3FEND · child of (1)
- D3-PLA Process Lineage Analysis defensive technique
References
- https://car.mitre.org/analytics/CAR-2019-08-002/ CAR-2019-08-002: Active Directory Dumping via NTDSUtil
- https://car.mitre.org/analytics/CAR-2020-04-001/ CAR-2020-04-001: Shadow Copy Deletion
- https://car.mitre.org/analytics/CAR-2020-05-003/ CAR-2020-05-003: Rare LolBAS Command Lines
- https://car.mitre.org/analytics/CAR-2020-08-001/ CAR-2020-08-001: NTFS Alternate Data Stream Execution - System Utilities
- https://car.mitre.org/analytics/CAR-2020-09-003/ CAR-2020-09-003: Indicator Blocking - Driver Unloaded
- https://car.mitre.org/analytics/CAR-2020-09-004/ CAR-2020-09-004: Credentials in Files & Registry
- https://car.mitre.org/analytics/CAR-2020-11-001/ CAR-2020-11-001: Boot or Logon Initialization Scripts
- https://car.mitre.org/analytics/CAR-2020-11-003/ CAR-2020-11-003: DLL Injection with Mavinject
- https://car.mitre.org/analytics/CAR-2020-11-005/ CAR-2020-11-005: Clear Powershell Console Command History
- https://car.mitre.org/analytics/CAR-2020-11-006/ CAR-2020-11-006: Local Permission Group Discovery
- https://car.mitre.org/analytics/CAR-2020-11-007/ CAR-2020-11-007: Network Share Connection Removal
- https://car.mitre.org/analytics/CAR-2020-11-008/ CAR-2020-11-008: MSBuild and msxsl
- https://car.mitre.org/analytics/CAR-2020-11-009/ CAR-2020-11-009: Compiled HTML Access
- https://car.mitre.org/analytics/CAR-2021-01-002/ CAR-2021-01-002: Unusually Long Command Line Strings
- https://car.mitre.org/analytics/CAR-2021-01-003/ CAR-2021-01-003: Clearing Windows Logs with Wevtutil
- https://car.mitre.org/analytics/CAR-2021-01-004/ CAR-2021-01-004: Unusual Child Process for Spoolsv.Exe or Connhost.Exe
- https://car.mitre.org/analytics/CAR-2021-01-006/ CAR-2021-01-006: Unusual Child Process spawned using DDE exploit
- https://car.mitre.org/analytics/CAR-2021-01-007/ CAR-2021-01-007: Detecting Tampering of Windows Defender Command Prompt
- https://car.mitre.org/analytics/CAR-2021-01-008/ CAR-2021-01-008: Disable UAC
- https://car.mitre.org/analytics/CAR-2021-01-009/ CAR-2021-01-009: Detecting Shadow Copy Deletion via Vssadmin.exe
- https://car.mitre.org/analytics/CAR-2021-02-001/ CAR-2021-02-001: Webshell-Indicative Process Tree
- https://car.mitre.org/analytics/CAR-2021-04-001/ CAR-2021-04-001: Common Windows Process Masquerading
- https://car.mitre.org/analytics/CAR-2021-05-001/ CAR-2021-05-001: Attempt To Add Certificate To Untrusted Store
- https://car.mitre.org/analytics/CAR-2021-05-002/ CAR-2021-05-002: Batch File Write to System32
- https://car.mitre.org/analytics/CAR-2021-05-003/ CAR-2021-05-003: BCDEdit Failure Recovery Modification
- https://car.mitre.org/analytics/CAR-2021-05-004/ CAR-2021-05-004: BITS Job Persistence
- https://car.mitre.org/analytics/CAR-2021-05-005/ CAR-2021-05-005: BITSAdmin Download File
- https://car.mitre.org/analytics/CAR-2021-05-006/ CAR-2021-05-006: CertUtil Download With URLCache and Split Arguments
- https://car.mitre.org/analytics/CAR-2021-05-007/ CAR-2021-05-007: CertUtil Download With VerifyCtl and Split Arguments
- https://car.mitre.org/analytics/CAR-2021-05-008/ CAR-2021-05-008: Certutil exe certificate extraction