YARA · SEKOIA.IO Community
SEKOIA_Apt_Muddywater_Moriagent
Detects Muddy's Mori Agent implant
- Author
- Sekoia.io
- Date
- 2022-01-14
- Modified
- 2024-12-19
- Score / Quality
- 75 / 80
What this rule detects
Detects Muddy's Mori Agent implant
Associated malware family: Moriagent.
Targets: Windows PE.
It defines 7 patterns (7 text, 0 hex, 0 regex). YARA modules used: pe.
Summary generated from the rule's metadata and condition.
Rule source
Includes the imports needed to compile it on its own.
apt-muddywater-moriagent.yarDetection Rule License 1.1
import "pe"
rule SEKOIA_Apt_Muddywater_Moriagent : FILE
{
meta:
= "Detects Muddy's Mori Agent implant"
= "Sekoia.io"
= "e7a83663-6a30-416a-8f29-87a6b9445ea4"
= "2022-01-14"
= "2024-12-19"
= "https://github.com/SEKOIA-IO/Community"
= "https://github.com/SEKOIA-IO/Community/blob/a438a5901a211c2abdf75da9c93921ef187473d1/yara_rules/apt_muddywater_moriagent.yar#L3-L28"
= "https://github.com/SEKOIA-IO/Community/blob/a438a5901a211c2abdf75da9c93921ef187473d1/LICENSE.md"
= "21389d4e71e9a19a9d263b8ced740c337ea88ed4ac97199897b0aa3f5914594a"
= 75
= 80
= "FILE"
= "1.0"
= "TLP:CLEAR"
strings:
$mut = "0x50504060" ascii fullword
$cmd1 = "TType" ascii fullword
$cmd2 = "TPath" ascii fullword
$cmd3 = "TFileid" ascii fullword
$cmd4 = "TCommand" ascii fullword
$cmd5 = "TTimeout" ascii fullword
$cmd6 = "TFilter" ascii fullword
condition:
uint16be( 0 ) == 0x4d5a and ( ( pe.number_of_exports == 2 and pe.exports ( "DllRegisterServer" ) and pe.exports ( "DllUnregisterServer" ) ) and ( 5 of them ) )
}
Strings (7 patterns)
| Identifier | Type | Value | Modifiers |
|---|---|---|---|
| $mut | text | "0x50504060" | ascii fullword |
| $cmd1 | text | "TType" | ascii fullword |
| $cmd2 | text | "TPath" | ascii fullword |
| $cmd3 | text | "TFileid" | ascii fullword |
| $cmd4 | text | "TCommand" | ascii fullword |
| $cmd5 | text | "TTimeout" | ascii fullword |
| $cmd6 | text | "TFilter" | ascii fullword |
Condition
uint16be( 0 ) == 0x4d5a and ( ( pe.number_of_exports == 2 and pe.exports ( "DllRegisterServer" ) and pe.exports ( "DllUnregisterServer" ) ) and ( 5 of them ) )In plain words (Heuristic)
- The file must start with “MZ” — a Windows executable (PE).
- At least 5 patterns in the rule must match.
- Uses the pe module.
- Checks exported functions or the DLL name.
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: e7a83663-6a30-416a-8f29-87a6b9445ea4
Metadata
| version | 1.0 |
|---|---|
| classification | TLP:CLEAR |
Tags:FILE
Related rules
- MalwareMalpedia signator rules· Felix Bilstein - yara-signator at cocacoding dot com· 2026-05-04
- 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