Description
Adversaries may abuse PowerShell commands and scripts for execution. PowerShell is a powerful interactive command-line interface and scripting environment included in the Windows operating system.(Citation: TechNet PowerShell) Adversaries can use PowerShell to perform a number of actions, including discovery of information and execution of code. Examples include the <code>Start-Process</code> cmdlet which can be used to run an executable and the <code>Invoke-Command</code> cmdlet which runs a command locally or on a remote computer (though administrator permissions are required to use PowerShell to connect to remote systems). PowerShell may also be used to download and run executables from the Internet, which can be executed from disk or in memory without touching disk. A number of PowerShell-based offensive testing tools are available, including [Empire](https://attack.mitre.org/software/S0363), [PowerSploit](https://attack.mitre.org/software/S0194), [PoshC2](https://attack.mitre.org/software/S0378), and PSAttack.(Citation: Github PSAttack) PowerShell commands/scripts can also be executed without directly invoking the <code>powershell.exe</code> binary through interfaces to PowerShell's underlying <code>System.Management.Automation</code> assembly DLL exposed through the .NET framework and Windows Common Language Interface (CLI).(Citation: Sixdub PowerPick Jan 2016)(Citation: SilentBreak Offensive PS Dec 2015)(Citation: Microsoft PSfromCsharp APR 2014)
Threat-Mapped Scoring
ATT&CK Kill Chain Metadata
- Tactics: execution
- Platforms: Windows
-
Detection Guidance:
If proper execution policy is set, adversaries will likely be able to define their own execution policy if they obtain administrator or system access, either through the Registry or at the command line. This change in policy on a system may be a way to detect malicious use of PowerShell. If PowerShell is not used in an environment, then simply looking for PowerShell execution may detect malicious activity. Monitor for loading and/or execution of artifacts associated with PowerShell specific assemblies, such as System.Management.Automation.dll (especially to unusual process names/locations).(Citation: Sixdub PowerPick Jan 2016)(Citation: SilentBreak Offensive PS Dec 2015) It is also beneficial to turn on PowerShell logging to gain increased fidelity in what occurs during execution (which is applied to .NET invocations). (Citation: Malware Archaeology PowerShell Cheat Sheet) PowerShell 5.0 introduced enhanced logging capabilities, and some of those features have since been added to PowerShell 4.0. Earlier versions of PowerShell do not have many logging features.(Citation: FireEye PowerShell Logging 2016) An organization can gather PowerShell execution details in a data analytic platform to supplement it with other data. Consider monitoring for Windows event ID (EID) 400, which shows the version of PowerShell executing in the <code>EngineVersion</code> field (which may also be relevant to detecting a potential [Downgrade Attack](https://attack.mitre.org/techniques/T1562/010)) as well as if PowerShell is running locally or remotely in the <code>HostName</code> field. Furthermore, EID 400 may indicate the start time and EID 403 indicates the end time of a PowerShell session.(Citation: inv_ps_attacks)
Malware
- Akira
- AppleSeed
- AutoIt backdoor
- BADHATCH
- BONDUPDATER
- Bandook
- Bazar
- Black Basta
- Bumblebee
- CHIMNEYSWEEP
- CharmPower
- Clambling
- Cobalt Strike
- ComRAT
- CreepyDrive
- CreepySnail
- Cuba
- DarkGate
- DarkWatchman
- Denis
- DownPaper
- Egregor
- Emotet
- FatDuke
- Ferocious
- FlawedAmmyy
- GLASSTOKEN
- GRIFFON
- Gootloader
- HALFBAKED
- HAMMERTOSS
- Hancitor
- Helminth
- IPsec Helper
- JCry
- JSS Loader
- KGH_SPY
- KOCTOPUS
- KONNI
- KeyBoy
- LitePower
- Lizar
- LockBit 2.0
- LockBit 3.0
- Lokibot
- Lumma Stealer
- LunarWeb
- Mafalda
- Meteor
- MoleNet
- Mosquito
- NETWIRE
- Netwalker
- OSX_OCEANLOTUS.D
- POSHSPY
- POWERSOURCE
- POWERSTATS
- POWERTON
- POWRUNER
- PS1
- PUNCHBUGGY
- Pillowmint
- PowGoop
- PowerExchange
- PowerLess
- PowerPunch
- PowerShower
- PowerStallion
- Prestige
- PyDCrypt
- Pysa
- QUADAGENT
- QakBot
- RATANKBA
- REvil
- RansomHub
- RegDuke
- Revenge RAT
- RogueRobin
- SHARPSTATS
- SMOKEDHAM
- SQLRat
- Saint Bot
- Sardonic
- SeaDuke
- ServHelper
- SharpStage
- ShrinkLocker
- Snip3
- Socksbot
- Spica
- Squirrelwaffle
- StrelaStealer
- StrongPity
- TAMECAT
- TRANSLATEXT
- TrickBot
- Troll Stealer
- Ursnif
- Valak
- WarzoneRAT
- WellMess
- WhisperGate
- Woody RAT
- Xbash
- ZeroCleare
- Zeus Panda
- njRAT
Tools
APTs (Intrusion Sets)
- APT19
- APT28
- APT29
- APT3
- APT32
- APT33
- APT38
- APT39
- APT41
- APT42
- APT5
- Akira
- Aquatic Panda
- BRONZE BUTLER
- BlackByte
- Blue Mockingbird
- CURIUM
- Chimera
- Cinnamon Tempest
- Cobalt Group
- Confucius
- CopyKittens
- Daggerfly
- DarkHydrus
- DarkVishnya
- Deep Panda
- Dragonfly
- Earth Lusca
- Ember Bear
- FIN10
- FIN13
- FIN6
- FIN7
- FIN8
- Fox Kitten
- GALLIUM
- GOLD SOUTHFIELD
- Gallmaker
- Gamaredon Group
- Gorgon Group
- HAFNIUM
- HEXANE
- Inception
- Indrik Spider
- Kimsuky
- Lazarus Group
- LazyScripter
- Leviathan
- Magic Hound
- Molerats
- MoustachedBouncer
- MuddyWater
- Mustang Panda
- Nomadic Octopus
- OilRig
- Patchwork
- Play
- Poseidon Group
- RedCurl
- Saint Bear
- Sandworm Team
- Sidewinder
- Silence
- Stealth Falcon
- Storm-1811
- TA2541
- TA459
- TA505
- TeamTNT
- Threat Group-3390
- Thrip
- ToddyCat
- Tonto Team
- Turla
- Volt Typhoon
- WIRTE
- Winter Vivern
- Wizard Spider
- menuPass