Detection rules › Sigma

Potential Persistence Via Security Descriptors - ScriptBlock

Severity
high
Author
Nasreddine Bencherchali (Nextron Systems)
Source
upstream

Detects usage of certain functions and keywords that are used to manipulate security descriptors in order to potentially set a backdoor. As seen used in the DAMP project.

Event coverage

ProviderEvent IDTitle
PowerShell4104Creating Scriptblock text (MessageNumber of MessageTotal).

Stages and Predicates

Stage 1: selection

or:
ScriptBlockText|contains: '\Lsa\Data'
ScriptBlockText|contains: '\Lsa\GBG'
ScriptBlockText|contains: '\Lsa\JD'
ScriptBlockText|contains: '\Lsa\Skew1'
ScriptBlockText|contains: .AccessMask
ScriptBlockText|contains: .AceType
ScriptBlockText|contains: .SetSecurityDescriptor
ScriptBlockText|contains: win32_Ace
ScriptBlockText|contains: win32_Trustee

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
  • .AccessMask
  • .AceType
  • .SetSecurityDescriptor
  • \Lsa\Data
  • \Lsa\GBG
  • \Lsa\JD
  • \Lsa\Skew1
  • win32_Ace
  • win32_Trustee

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.