YARA · Signature Base (Florian Roth / Nextron)
SIGNATURE_BASE_SUSP_PS1_Frombase64String_Content_Indicator
Detects suspicious base64 encoded PowerShell expressions
Suspicious / huntingSignature Base (Florian Roth / Nextron)Detection Rule License 1.1Compiles with YARA-X
- Author
- Florian Roth (Nextron Systems)
- Date
- 2020-01-25
- Modified
- 2024-04-03
- Score / Quality
- 65 / 83
What this rule detects
Detects suspicious base64 encoded PowerShell expressions
It defines 40 patterns (40 text, 0 hex, 0 regex).
Summary generated from the rule's metadata and condition.
Rule source
susp-ps1-frombase64string-content-indicator.yarDetection Rule License 1.1
rule SIGNATURE_BASE_SUSP_PS1_Frombase64String_Content_Indicator : FILE
{
meta:
= "Detects suspicious base64 encoded PowerShell expressions"
= "Florian Roth (Nextron Systems)"
= "326c83ff-5d21-508f-b935-03ccdab6efa7"
= "2020-01-25"
= "2024-04-03"
= "https://gist.github.com/Neo23x0/6af876ee72b51676c82a2db8d2cd3639"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/gen_powershell_susp.yar#L233-L284"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
= "a9ec7a00e9faee5cc081a2bc86abf8027fcd3cfe590cdd4f2f99425b6723f23f"
= 65
= 83
= "FILE"
strings:
$ = "::FromBase64String(\"H4s" ascii wide
$ = "::FromBase64String(\"TVq" ascii wide
$ = "::FromBase64String(\"UEs" ascii wide
$ = "::FromBase64String(\"JAB" ascii wide
$ = "::FromBase64String(\"SUVY" ascii wide
$ = "::FromBase64String(\"SQBFAF" ascii wide
$ = "::FromBase64String(\"SQBuAH" ascii wide
$ = "::FromBase64String(\"PAA" ascii wide
$ = "::FromBase64String(\"cwBhA" ascii wide
$ = "::FromBase64String(\"aWV4" ascii wide
$ = "::FromBase64String(\"aQBlA" ascii wide
$ = "::FromBase64String(\"R2V0" ascii wide
$ = "::FromBase64String(\"dmFy" ascii wide
$ = "::FromBase64String(\"dgBhA" ascii wide
$ = "::FromBase64String(\"dXNpbm" ascii wide
$ = "::FromBase64String(\"H4sIA" ascii wide
$ = "::FromBase64String(\"Y21k" ascii wide
$ = "::FromBase64String(\"Qzpc" ascii wide
$ = "::FromBase64String(\"Yzpc" ascii wide
$ = "::FromBase64String(\"IAB" ascii wide
$ = "::FromBase64String('H4s" ascii wide
$ = "::FromBase64String('TVq" ascii wide
$ = "::FromBase64String('UEs" ascii wide
$ = "::FromBase64String('JAB" ascii wide
$ = "::FromBase64String('SUVY" ascii wide
$ = "::FromBase64String('SQBFAF" ascii wide
$ = "::FromBase64String('SQBuAH" ascii wide
$ = "::FromBase64String('PAA" ascii wide
$ = "::FromBase64String('cwBhA" ascii wide
$ = "::FromBase64String('aWV4" ascii wide
$ = "::FromBase64String('aQBlA" ascii wide
$ = "::FromBase64String('R2V0" ascii wide
$ = "::FromBase64String('dmFy" ascii wide
$ = "::FromBase64String('dgBhA" ascii wide
$ = "::FromBase64String('dXNpbm" ascii wide
$ = "::FromBase64String('H4sIA" ascii wide
$ = "::FromBase64String('Y21k" ascii wide
$ = "::FromBase64String('Qzpc" ascii wide
$ = "::FromBase64String('Yzpc" ascii wide
$ = "::FromBase64String('IAB" ascii wide
condition:
filesize < 5000KB and 1 of them
}
Strings (40 patterns)
| Identifier | Type | Value | Modifiers |
|---|---|---|---|
| $ | text | "::FromBase64String(\"H4s" | ascii wide |
| $ | text | "::FromBase64String(\"TVq" | ascii wide |
| $ | text | "::FromBase64String(\"UEs" | ascii wide |
| $ | text | "::FromBase64String(\"JAB" | ascii wide |
| $ | text | "::FromBase64String(\"SUVY" | ascii wide |
| $ | text | "::FromBase64String(\"SQBFAF" | ascii wide |
| $ | text | "::FromBase64String(\"SQBuAH" | ascii wide |
| $ | text | "::FromBase64String(\"PAA" | ascii wide |
| $ | text | "::FromBase64String(\"cwBhA" | ascii wide |
| $ | text | "::FromBase64String(\"aWV4" | ascii wide |
| $ | text | "::FromBase64String(\"aQBlA" | ascii wide |
| $ | text | "::FromBase64String(\"R2V0" | ascii wide |
| $ | text | "::FromBase64String(\"dmFy" | ascii wide |
| $ | text | "::FromBase64String(\"dgBhA" | ascii wide |
| $ | text | "::FromBase64String(\"dXNpbm" | ascii wide |
| $ | text | "::FromBase64String(\"H4sIA" | ascii wide |
| $ | text | "::FromBase64String(\"Y21k" | ascii wide |
| $ | text | "::FromBase64String(\"Qzpc" | ascii wide |
| $ | text | "::FromBase64String(\"Yzpc" | ascii wide |
| $ | text | "::FromBase64String(\"IAB" | ascii wide |
| $ | text | "::FromBase64String('H4s" | ascii wide |
| $ | text | "::FromBase64String('TVq" | ascii wide |
| $ | text | "::FromBase64String('UEs" | ascii wide |
| $ | text | "::FromBase64String('JAB" | ascii wide |
| $ | text | "::FromBase64String('SUVY" | ascii wide |
| $ | text | "::FromBase64String('SQBFAF" | ascii wide |
| $ | text | "::FromBase64String('SQBuAH" | ascii wide |
| $ | text | "::FromBase64String('PAA" | ascii wide |
| $ | text | "::FromBase64String('cwBhA" | ascii wide |
| $ | text | "::FromBase64String('aWV4" | ascii wide |
| $ | text | "::FromBase64String('aQBlA" | ascii wide |
| $ | text | "::FromBase64String('R2V0" | ascii wide |
| $ | text | "::FromBase64String('dmFy" | ascii wide |
| $ | text | "::FromBase64String('dgBhA" | ascii wide |
| $ | text | "::FromBase64String('dXNpbm" | ascii wide |
| $ | text | "::FromBase64String('H4sIA" | ascii wide |
| $ | text | "::FromBase64String('Y21k" | ascii wide |
| $ | text | "::FromBase64String('Qzpc" | ascii wide |
| $ | text | "::FromBase64String('Yzpc" | ascii wide |
| $ | text | "::FromBase64String('IAB" | ascii wide |
Condition
filesize < 5000KB and 1 of themIn plain words (Heuristic)
- The file must be smaller than 5000KB (a cheap guard that skips large files).
- At least 1 patterns in the rule must match.
Test this rule in your browser
Drop a file to scan it with this rule using YARA-X compiled to WebAssembly. Nothing is uploaded.
Drop a file here or click to chooseScanned locally with YARA-X. Files up to 200 MB.
Licence & attribution
Author: Florian Roth (Nextron Systems)
Source repository: Signature Base (Florian Roth / Nextron) @ 94a1c48d7a
Licence: Detection Rule License 1.1 (repository licence)
Mirrored via YARA Forge 20260927, which prefixes rule names with the source and adds normalised meta fields.
Rule id: 326c83ff-5d21-508f-b935-03ccdab6efa7
Tags:FILE
Related rules
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2022-09-17
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2020-04-06
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2020-06-27
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2022-06-10
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2021-12-10
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2021-10-12
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2021-08-25
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2021-12-10