YARA · Signature Base (Florian Roth / Nextron)
SIGNATURE_BASE_MAL_Qbot_HTML_Smuggling_Indicators_Oct22_1
Detects double encoded PKZIP headers as seen in HTML files used by QBot
- Author
- Florian Roth (Nextron Systems)
- Date
- 2022-10-07
- Modified
- 2023-12-05
- Score / Quality
- 75 / 83
What this rule detects
Detects double encoded PKZIP headers as seen in HTML files used by QBot
It defines 26 patterns (26 text, 0 hex, 0 regex).
Summary generated from the rule's metadata and condition.
Rule source
rule SIGNATURE_BASE_MAL_Qbot_HTML_Smuggling_Indicators_Oct22_1 : FILE
{
meta:
= "Detects double encoded PKZIP headers as seen in HTML files used by QBot"
= "Florian Roth (Nextron Systems)"
= "8034d6af-4dae-5ff6-b635-efb5175fe4d1"
= "2022-10-07"
= "2023-12-05"
= "https://twitter.com/ankit_anubhav/status/1578257383133876225?s=20&t=Bu3CCJCzImpTGOQX_KGsdA"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/mal_qbot_payloads.yar#L2-L55"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
= "4f384bcba31fda53e504d0a6c85cee0ce3ea9586226633d063f34c53ddeaca3f"
= "8e61c2b751682becb4c0337f5a79b2da0f5f19c128b162ec8058104b894cae9b"
= "c5d23d991ce3fbcf73b177bc6136d26a501ded318ccf409ca16f7c664727755a"
= "5072d91ee0d162c28452123a4d9986f3df6b3244e48bf87444ce88add29dd8ed"
= "ff4e21f788c36aabe6ba870cf3b10e258c2ba6f28a2d359a25d5a684c92a0cad"
= "a5bd9eb72205f1398ec0b8773751309699b3267e0272dacf2728f8495c0c0ec2"
= 75
= 83
= "FILE"
strings:
$sd1 = "VUVzREJCUUFBUUFJQ"
$sd2 = "VFc0RCQlFBQVFBSU"
$sd3 = "VRXNEQkJRQUFRQUlB"
$sdr1 = "QJFUUBFUUCJERzVUV"
$sdr2 = "USBFVQBFlQCR0cFV"
$sdr3 = "BlUQRFUQRJkQENXRV"
$st1 = "VlVWelJFSkNVVUZCVVVGSl"
$st2 = "ZVVnpSRUpDVVVGQlVVRkpR"
$st3 = "WVVZ6UkVKQ1VVRkJVVUZKU"
$st4 = "VkZjMFJDUWxGQlFWRkJTV"
$st5 = "ZGYzBSQ1FsRkJRVkZCU1"
$st6 = "WRmMwUkNRbEZCUVZGQlNV"
$st7 = "VlJYTkVRa0pSUVVGUlFVbE"
$st8 = "ZSWE5FUWtKUlFVRlJRVWxC"
$st9 = "WUlhORVFrSlJRVUZSUVVsQ"
$str1 = "UUpGVVVCRlVVQ0pFUnpWVV"
$str2 = "FKRlVVQkZVVUNKRVJ6VlVW"
$str3 = "RSkZVVUJGVVVDSkVSelZVV"
$str4 = "VVNCRlZRQkZsUUNSMGNGV"
$str5 = "VTQkZWUUJGbFFDUjBjRl"
$str6 = "VU0JGVlFCRmxRQ1IwY0ZW"
$str7 = "QmxVUVJGVVFSSmtRRU5YUl"
$str8 = "JsVVFSRlVRUkprUUVOWFJW"
$str9 = "CbFVRUkZVUVJKa1FFTlhSV"
$htm = "<html" ascii
$eml = "Content-Transfer-Encoding:" ascii
condition:
filesize < 10MB and ( ( 1 of ( $sd* ) and $htm and not $eml ) or ( 1 of ( $st* ) and $eml ) )
}
Strings (26 patterns)
| Identifier | Type | Value | Modifiers |
|---|---|---|---|
| $sd1 | text | "VUVzREJCUUFBUUFJQ" | |
| $sd2 | text | "VFc0RCQlFBQVFBSU" | |
| $sd3 | text | "VRXNEQkJRQUFRQUlB" | |
| $sdr1 | text | "QJFUUBFUUCJERzVUV" | |
| $sdr2 | text | "USBFVQBFlQCR0cFV" | |
| $sdr3 | text | "BlUQRFUQRJkQENXRV" | |
| $st1 | text | "VlVWelJFSkNVVUZCVVVGSl" | |
| $st2 | text | "ZVVnpSRUpDVVVGQlVVRkpR" | |
| $st3 | text | "WVVZ6UkVKQ1VVRkJVVUZKU" | |
| $st4 | text | "VkZjMFJDUWxGQlFWRkJTV" | |
| $st5 | text | "ZGYzBSQ1FsRkJRVkZCU1" | |
| $st6 | text | "WRmMwUkNRbEZCUVZGQlNV" | |
| $st7 | text | "VlJYTkVRa0pSUVVGUlFVbE" | |
| $st8 | text | "ZSWE5FUWtKUlFVRlJRVWxC" | |
| $st9 | text | "WUlhORVFrSlJRVUZSUVVsQ" | |
| $str1 | text | "UUpGVVVCRlVVQ0pFUnpWVV" | |
| $str2 | text | "FKRlVVQkZVVUNKRVJ6VlVW" | |
| $str3 | text | "RSkZVVUJGVVVDSkVSelZVV" | |
| $str4 | text | "VVNCRlZRQkZsUUNSMGNGV" | |
| $str5 | text | "VTQkZWUUJGbFFDUjBjRl" | |
| $str6 | text | "VU0JGVlFCRmxRQ1IwY0ZW" | |
| $str7 | text | "QmxVUVJGVVFSSmtRRU5YUl" | |
| $str8 | text | "JsVVFSRlVRUkprUUVOWFJW" | |
| $str9 | text | "CbFVRUkZVUVJKa1FFTlhSV" | |
| $htm | text | "<html" | ascii |
| $eml | text | "Content-Transfer-Encoding:" | ascii |
Condition
filesize < 10MB and ( ( 1 of ( $sd* ) and $htm and not $eml ) or ( 1 of ( $st* ) and $eml ) )In plain words (Heuristic)
- The file must be smaller than 10MB (a cheap guard that skips large files).
- At least 1 patterns in ( $sd* ) must match.
- At least 1 patterns in ( $st* ) must match.
- Pattern $eml must NOT be present.
- Pattern $htm must be present.
- Pattern $eml 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).
- 4f384bcba31fda53e504d0a6c85cee0ce3ea9586226633d063f34c53ddeaca3f
- 8e61c2b751682becb4c0337f5a79b2da0f5f19c128b162ec8058104b894cae9b
- c5d23d991ce3fbcf73b177bc6136d26a501ded318ccf409ca16f7c664727755a
- 5072d91ee0d162c28452123a4d9986f3df6b3244e48bf87444ce88add29dd8ed
- ff4e21f788c36aabe6ba870cf3b10e258c2ba6f28a2d359a25d5a684c92a0cad
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: 8034d6af-4dae-5ff6-b635-efb5175fe4d1
Tags:FILE
Related rules
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2022-03-15
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2022-03-03
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2022-01-16
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2021-05-10
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2021-05-04
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2020-01-29
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2020-10-13
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth (Nextron Systems)· 2022-08-03