YARA · ESET malware-ioc
ESET_IIS_Group04_Rgdoor
Detects Group 4 native IIS malware family (RGDoor)
- Author
- ESET Research
- Date
- 2021-08-04
- Score / Quality
- 75 / 80
What this rule detects
Detects Group 4 native IIS malware family (RGDoor)
Associated malware family: Rgdoor.
It defines 5 patterns (5 text, 0 hex, 0 regex). YARA modules used: pe.
Summary generated from the rule's metadata and condition.
Rule source
Includes the imports and 1 rule(s) it depends on needed to compile it on its own.
import "pe"
private rule ESET_IIS_Native_Module_PRIVATE : FILE
{
meta:
= "Signature to match an IIS native module (clean or malicious)"
= "ESET Research"
= "e3bacdc8-fde1-5e83-ac94-79fc345e888d"
= "2021-08-04"
= "2021-08-04"
= "https://github.com/eset/malware-ioc/"
= "https://github.com/eset/malware-ioc/blob/17baf44964a77368e9149f4f593eb098beddf1c5/badiis/badiis.yar#L34-L92"
= "https://github.com/eset/malware-ioc/blob/17baf44964a77368e9149f4f593eb098beddf1c5/LICENSE"
= "5a388dc3253df606e2648d1f9c018e6dde373bbddce66dba69b7aecdd95bac18"
= 75
= 55
= "FILE"
= "BSD 2-Clause"
= "1"
strings:
$e1 = "This module subscribed to event"
$e2 = "CHttpModule::OnBeginRequest"
$e3 = "CHttpModule::OnPostBeginRequest"
$e4 = "CHttpModule::OnAuthenticateRequest"
$e5 = "CHttpModule::OnPostAuthenticateRequest"
$e6 = "CHttpModule::OnAuthorizeRequest"
$e7 = "CHttpModule::OnPostAuthorizeRequest"
$e8 = "CHttpModule::OnResolveRequestCache"
$e9 = "CHttpModule::OnPostResolveRequestCache"
$e10 = "CHttpModule::OnMapRequestHandler"
$e11 = "CHttpModule::OnPostMapRequestHandler"
$e12 = "CHttpModule::OnAcquireRequestState"
$e13 = "CHttpModule::OnPostAcquireRequestState"
$e14 = "CHttpModule::OnPreExecuteRequestHandler"
$e15 = "CHttpModule::OnPostPreExecuteRequestHandler"
$e16 = "CHttpModule::OnExecuteRequestHandler"
$e17 = "CHttpModule::OnPostExecuteRequestHandler"
$e18 = "CHttpModule::OnReleaseRequestState"
$e19 = "CHttpModule::OnPostReleaseRequestState"
$e20 = "CHttpModule::OnUpdateRequestCache"
$e21 = "CHttpModule::OnPostUpdateRequestCache"
$e22 = "CHttpModule::OnLogRequest"
$e23 = "CHttpModule::OnPostLogRequest"
$e24 = "CHttpModule::OnEndRequest"
$e25 = "CHttpModule::OnPostEndRequest"
$e26 = "CHttpModule::OnSendResponse"
$e27 = "CHttpModule::OnMapPath"
$e28 = "CHttpModule::OnReadEntity"
$e29 = "CHttpModule::OnCustomRequestNotification"
$e30 = "CHttpModule::OnAsyncCompletion"
$e31 = "CGlobalModule::OnGlobalStopListening"
$e32 = "CGlobalModule::OnGlobalCacheCleanup"
$e33 = "CGlobalModule::OnGlobalCacheOperation"
$e34 = "CGlobalModule::OnGlobalHealthCheck"
$e35 = "CGlobalModule::OnGlobalConfigurationChange"
$e36 = "CGlobalModule::OnGlobalFileChange"
$e37 = "CGlobalModule::OnGlobalApplicationStart"
$e38 = "CGlobalModule::OnGlobalApplicationResolveModules"
$e39 = "CGlobalModule::OnGlobalApplicationStop"
$e40 = "CGlobalModule::OnGlobalRSCAQuery"
$e41 = "CGlobalModule::OnGlobalTraceEvent"
$e42 = "CGlobalModule::OnGlobalCustomNotification"
$e43 = "CGlobalModule::OnGlobalThreadCleanup"
$e44 = "CGlobalModule::OnGlobalApplicationPreload"
condition:
uint16( 0 ) == 0x5A4D and pe.exports ( "RegisterModule" ) and any of ( $e* )
}
rule ESET_IIS_Group04_Rgdoor
{
meta:
= "Detects Group 4 native IIS malware family (RGDoor)"
= "ESET Research"
= "64a0e664-a4d9-555b-a11b-5f7d9d0678b1"
= "2021-08-04"
= "2021-08-04"
= "https://github.com/eset/malware-ioc/"
= "https://github.com/eset/malware-ioc/blob/17baf44964a77368e9149f4f593eb098beddf1c5/badiis/badiis.yar#L178-L199"
= "https://github.com/eset/malware-ioc/blob/17baf44964a77368e9149f4f593eb098beddf1c5/LICENSE"
= "be615dc0cc8bf0fd52cc5a88a3759c1cb1cd18703de74d16f5cce3eabccf91c6"
= 75
= 80
= ""
= "BSD 2-Clause"
= "1"
strings:
$i1 = "RGSESSIONID="
$s2 = "upload$"
$s3 = "download$"
$s4 = "cmd$"
$s5 = "cmd.exe"
condition:
ESET_IIS_Native_Module_PRIVATE and ( $i1 or all of ( $s* ) )
}
Strings (5 patterns)
| Identifier | Type | Value | Modifiers |
|---|---|---|---|
| $i1 | text | "RGSESSIONID=" | |
| $s2 | text | "upload$" | |
| $s3 | text | "download$" | |
| $s4 | text | "cmd$" | |
| $s5 | text | "cmd.exe" |
Condition
ESET_IIS_Native_Module_PRIVATE and ( $i1 or all of ( $s* ) )In plain words (Heuristic)
- All patterns in ( $s* ) must match.
- Depends on the rule ESET_IIS_Native_Module_PRIVATE.
- Pattern $i1 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
Licence & attribution
Author: ESET Research
Source repository: ESET malware-ioc @ 17baf44964
Licence: BSD 2-Clause License (stated in the rule's own meta)
“BSD 2-Clause”
Copyright notice: Copyright (c) 2014-2018 ESET spol. s r.o.
Mirrored via YARA Forge 20260927, which prefixes rule names with the source and adds normalised meta fields.
Rule id: 64a0e664-a4d9-555b-a11b-5f7d9d0678b1
Metadata
| version | 1 |
|---|
Related rules
- MalwareMalpedia signator rules· Felix Bilstein - yara-signator at cocacoding dot com· 2026-05-04
- MalwareESET malware-ioc· ESET Research· 2023-03-31
- MalwareESET malware-ioc· ESET Research· 2022-10-11
- MalwareESET malware-ioc· ESET Research· 2022-10-11
- MalwareESET malware-ioc· ESET Research· 2022-10-11
- MalwareESET malware-ioc· ESET Research· 2022-10-11
- MalwareESET malware-ioc· ESET Research· 2021-08-04
- MalwareESET malware-ioc· ESET Research· 2021-05-17