YARA · Volexity threat-intel
VOLEXITY_Apt_Win_Powerstar
Custom PowerShell backdoor used by Charming Kitten.
- Author
- threatintel@volexity.com
- Date
- 2021-10-13
- Modified
- 2023-09-20
- Score / Quality
- 75 / 80
What this rule detects
Custom PowerShell backdoor used by Charming Kitten.
It defines 8 patterns (8 text, 0 hex, 0 regex).
Summary generated from the rule's metadata and condition.
Rule source
rule VOLEXITY_Apt_Win_Powerstar : CHARMINGKITTEN
{
meta:
= "Custom PowerShell backdoor used by Charming Kitten."
= "threatintel@volexity.com"
= "febcd23b-6545-571b-905d-18dffe8e913f"
= "2021-10-13"
= "2023-09-20"
= "https://github.com/volexity/threat-intel"
= "https://github.com/volexity/threat-intel/blob/3a9d0b52459877ee866a9a0ba06e60059b778c77/2023/2023-06-28 POWERSTAR/indicators/rules.yar#L122-L150"
= "https://github.com/volexity/threat-intel/blob/3a9d0b52459877ee866a9a0ba06e60059b778c77/LICENSE.txt"
= "de99c4fa14d99af791826a170b57a70b8265fee61c6b6278d3fe0aad98e85460"
= "2cbf59eaee60a8f84b1ac35cec3b01592a2a0f56c92a2db218bb26a15be24bf3"
= 75
= 80
= "CHARMINGKITTEN"
= 1
= "See license at https://github.com/volexity/threat-intel/blob/main/LICENSE.txt"
strings:
$appname = "[AppProject.Program]::Main()" ascii wide
$langfilters1 = "*shar*" ascii wide
$langfilters2 = "*owers*" ascii wide
$definitions1 = "[string]$language" ascii wide
$definitions2 = "[string]$Command" ascii wide
$definitions3 = "[string]$ThreadName" ascii wide
$definitions4 = "[string]$StartStop" ascii wide
$sess = "$session = $v + \";;\" + $env:COMPUTERNAME + $mac;" ascii wide
condition:
$appname or all of ( $langfilters* ) or all of ( $definitions* ) or $sess
}
Strings (8 patterns)
| Identifier | Type | Value | Modifiers |
|---|---|---|---|
| $appname | text | "[AppProject.Program]::Main()" | ascii wide |
| $langfilters1 | text | "*shar*" | ascii wide |
| $langfilters2 | text | "*owers*" | ascii wide |
| $definitions1 | text | "[string]$language" | ascii wide |
| $definitions2 | text | "[string]$Command" | ascii wide |
| $definitions3 | text | "[string]$ThreadName" | ascii wide |
| $definitions4 | text | "[string]$StartStop" | ascii wide |
| $sess | text | "$session = $v + \";;\" + $env:COMPUTERNAME + $mac;" | ascii wide |
Condition
$appname or all of ( $langfilters* ) or all of ( $definitions* ) or $sessIn plain words (Heuristic)
- All patterns in ( $langfilters* ) must match.
- All patterns in ( $definitions* ) must match.
- Pattern $appname must be present.
- Pattern $sess must be present.
Test this rule in your browser
Drop a file to scan it with this rule using YARA-X compiled to WebAssembly. Nothing is uploaded.
References
Sample hashes
Hashes of samples the author lists in the rule's meta (look them up in your threat-intelligence platform).
- de99c4fa14d99af791826a170b57a70b8265fee61c6b6278d3fe0aad98e85460
Licence & attribution
Author: threatintel@volexity.com
Source repository: Volexity threat-intel @ 3a9d0b5245
Licence: BSD 2-Clause License (stated in the rule's own meta)
“See license at https://github.com/volexity/threat-intel/blob/main/LICENSE.txt”
Copyright notice: Copyright 2022 by Volexity, Inc.
Mirrored via YARA Forge 20260927, which prefixes rule names with the source and adds normalised meta fields.
Rule id: febcd23b-6545-571b-905d-18dffe8e913f
Metadata
| memory_suitable | 1 |
|---|
Tags:CHARMINGKITTEN
Related rules
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2023-05-16
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2023-05-16
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2023-05-16
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2023-05-16
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2023-05-16
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2024-07-30
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2023-07-21
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2023-08-17