Detection rules › Sigma

Powershell Keylogging

Severity
medium
Author
frack113
Source
upstream

Adversaries may log user keystrokes to intercept credentials as the user types them.

MITRE ATT&CK coverage

TacticTechniques
Credential AccessT1056.001 Input Capture: Keylogging
CollectionT1056.001 Input Capture: Keylogging

Event coverage

ProviderEvent IDTitle
PowerShell4104Creating Scriptblock text (MessageNumber of MessageTotal).

Stages and Predicates

Stage 1: 1 of selection_basic

ScriptBlockText|contains: Get-Keystrokes

Stage 2: 1 of selection_high

ScriptBlockText|contains: 'Get-ProcAddress user32.dll GetAsyncKeyState'
ScriptBlockText|contains: 'Get-ProcAddress user32.dll GetForegroundWindow'

Indicators

Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.

FieldKindValues
ScriptBlockTextmatch
  • Get-Keystrokes corpus 2 (sigma 2)
  • Get-ProcAddress user32.dll GetAsyncKeyState
  • Get-ProcAddress user32.dll GetForegroundWindow

Neighbors

Broader alternatives (more inclusive than this rule)

These rules match a superset of what this rule catches. They cover the same events plus more. Use them if you want wider coverage and can absorb more false positives.