YARA · SEKOIA.IO Community
SEKOIA_Apt_Muddywater_Rotrot_Strings
Detects RotRot backdoor based on strings
- Author
- Sekoia.io
- Date
- 2024-06-10
- Modified
- 2024-12-19
- Score / Quality
- 75 / 80
What this rule detects
Detects RotRot backdoor based on strings
Targets: Windows PE.
It defines 18 patterns (18 text, 0 hex, 0 regex).
Summary generated from the rule's metadata and condition.
Rule source
apt-muddywater-rotrot-strings.yarDetection Rule License 1.1
rule SEKOIA_Apt_Muddywater_Rotrot_Strings : FILE
{
meta:
= "Detects RotRot backdoor based on strings"
= "Sekoia.io"
= "f7bc195a-0e60-4495-b78a-78f101543700"
= "2024-06-10"
= "2024-12-19"
= "https://github.com/SEKOIA-IO/Community"
= "https://github.com/SEKOIA-IO/Community/blob/a438a5901a211c2abdf75da9c93921ef187473d1/yara_rules/apt_muddywater_rotrot_strings.yar#L1-L36"
= "https://github.com/SEKOIA-IO/Community/blob/a438a5901a211c2abdf75da9c93921ef187473d1/LICENSE.md"
= "425168003d0f14d791e7f46bf47c18652a1f6b66b9329155d2bca72cf0d8126b"
= 75
= 80
= "FILE"
= "1.0"
= "TLP:CLEAR"
strings:
$s1 = "qsphsbnebub"
$s2 = "rtqitcofcvc"
$s3 = "surjudpgdwd"
$s4 = "tvskveqhexe"
$s5 = "uwtlwfrifyf"
$s6 = "vxumxgsjgzg"
$t1 = "MpbeMjcsbs"
$t2 = "NqcfNkdtct"
$t3 = "OrdgOleudu"
$t4 = "PsehPmfvev"
$t5 = "QtfiQngwfw"
$t6 = "RugjRohxgx"
$u1 = "UfsnjobufKpcPckfdu"
$u2 = "VgtokpcvgLqdQdlgev"
$u3 = "WhuplqdwhMreRemhfw"
$u4 = "XivqmrexiNsfSfnigx"
$u5 = "YjwrnsfyjOtgTgojhy"
$u6 = "ZkxsotgzkPuhUhpkiz"
condition:
uint16be( 0 ) == 0x4d5a and filesize > 100KB and filesize < 300KB and any of ( $s* ) and any of ( $t* ) and any of ( $u* )
}
Strings (18 patterns)
| Identifier | Type | Value | Modifiers |
|---|---|---|---|
| $s1 | text | "qsphsbnebub" | |
| $s2 | text | "rtqitcofcvc" | |
| $s3 | text | "surjudpgdwd" | |
| $s4 | text | "tvskveqhexe" | |
| $s5 | text | "uwtlwfrifyf" | |
| $s6 | text | "vxumxgsjgzg" | |
| $t1 | text | "MpbeMjcsbs" | |
| $t2 | text | "NqcfNkdtct" | |
| $t3 | text | "OrdgOleudu" | |
| $t4 | text | "PsehPmfvev" | |
| $t5 | text | "QtfiQngwfw" | |
| $t6 | text | "RugjRohxgx" | |
| $u1 | text | "UfsnjobufKpcPckfdu" | |
| $u2 | text | "VgtokpcvgLqdQdlgev" | |
| $u3 | text | "WhuplqdwhMreRemhfw" | |
| $u4 | text | "XivqmrexiNsfSfnigx" | |
| $u5 | text | "YjwrnsfyjOtgTgojhy" | |
| $u6 | text | "ZkxsotgzkPuhUhpkiz" |
Condition
uint16be( 0 ) == 0x4d5a and filesize > 100KB and filesize < 300KB and any of ( $s* ) and any of ( $t* ) and any of ( $u* )In plain words (Heuristic)
- The file must start with “MZ” — a Windows executable (PE).
- The file must be smaller than 300KB (a cheap guard that skips large files).
- The file must be larger than 100KB.
- At least one pattern in ( $s* ) must match.
- At least one pattern in ( $t* ) must match.
- At least one pattern in ( $u* ) 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.
References
Licence & attribution
Author: Sekoia.io
Source repository: SEKOIA.IO Community @ a438a5901a
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: f7bc195a-0e60-4495-b78a-78f101543700
Metadata
| version | 1.0 |
|---|---|
| classification | TLP:CLEAR |
Tags:FILE
Related rules
- APT / threat actorSEKOIA.IO Community· Sekoia.io· 2024-09-10
- APT / threat actorSEKOIA.IO Community· Sekoia.io· 2024-10-21
- APT / threat actorSEKOIA.IO Community· Sekoia.io· 2024-10-21
- APT / threat actorSEKOIA.IO Community· Sekoia.io· 2024-09-27
- APT / threat actorSEKOIA.IO Community· Sekoia.io· 2024-09-27
- APT / threat actorSEKOIA.IO Community· Sekoia.io· 2024-09-23
- APT / threat actorSEKOIA.IO Community· Sekoia.io· 2024-06-11
- APT / threat actorSEKOIA.IO Community· Sekoia.io· 2024-03-06