YARA · Signature Base (Florian Roth / Nextron)
SIGNATURE_BASE_APT_Webshell_SUPERNOVA_1
SUPERNOVA is a .NET web shell backdoor masquerading as a legitimate SolarWinds web service handler. SUPERNOVA inspects and responds to HTTP requests with the appropriate HTTP query strings, Cookies, and/or HTML form values (e.g. named codes, class, method, and args). This rule is looking for specific strings and attributes related to SUPERNOVA.
- Author
- FireEye
- Date
- 2020-12-14
- Modified
- 2023-12-05
- Score / Quality
- 85 / 81
What this rule detects
SUPERNOVA is a .NET web shell backdoor masquerading as a legitimate SolarWinds web service handler. SUPERNOVA inspects and responds to HTTP requests with the appropriate HTTP query strings, Cookies, and/or HTML form values (e.g. named codes, class, method, and args). This rule is looking for specific strings and attributes related to SUPERNOVA.
Associated malware family: Supernova.
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.
import "pe"
rule SIGNATURE_BASE_APT_Webshell_SUPERNOVA_1 : FILE
{
meta:
= "SUPERNOVA is a .NET web shell backdoor masquerading as a legitimate SolarWinds web service handler. SUPERNOVA inspects and responds to HTTP requests with the appropriate HTTP query strings, Cookies, and/or HTML form values (e.g. named codes, class, method, and args). This rule is looking for specific strings and attributes related to SUPERNOVA."
= "FireEye"
= "73a27fa2-a846-5f4b-8182-064ac06c71a8"
= "2020-12-14"
= "2023-12-05"
= "https://www.fireeye.com/blog/threat-research/2020/12/evasive-attacker-leverages-solarwinds-supply-chain-compromises-with-sunburst-backdoor.html"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/apt_solarwinds_sunburst.yar#L80-L99"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
= "8471e6b3675e7e9ccfe5b81ab4c599668f2de528f3b179a675f50aa1fd7814b2"
= 85
= 81
= "FILE"
strings:
$compile1 = "CompileAssemblyFromSource"
$compile2 = "CreateCompiler"
$context = "ProcessRequest"
$httpmodule = "IHttpHandler" ascii
$string1 = "clazz"
$string2 = "//NetPerfMon//images//NoLogo.gif" wide
$string3 = "SolarWinds" ascii nocase wide
condition:
uint16( 0 ) == 0x5a4d and uint32( uint32( 0x3C ) ) == 0x00004550 and filesize < 10KB and pe.imports ( "mscoree.dll" , "_CorDllMain" ) and $httpmodule and $context and all of ( $compile* ) and all of ( $string* )
}
Strings (7 patterns)
| Identifier | Type | Value | Modifiers |
|---|---|---|---|
| $compile1 | text | "CompileAssemblyFromSource" | |
| $compile2 | text | "CreateCompiler" | |
| $context | text | "ProcessRequest" | |
| $httpmodule | text | "IHttpHandler" | ascii |
| $string1 | text | "clazz" | |
| $string2 | text | "//NetPerfMon//images//NoLogo.gif" | wide |
| $string3 | text | "SolarWinds" | ascii nocase wide |
Condition
uint16( 0 ) == 0x5a4d and uint32( uint32( 0x3C ) ) == 0x00004550 and filesize < 10KB and pe.imports ( "mscoree.dll" , "_CorDllMain" ) and $httpmodule and $context and all of ( $compile* ) and all of ( $string* )In plain words (Heuristic)
- The file must start with “MZ” — a Windows executable (PE).
- The file must be smaller than 10KB (a cheap guard that skips large files).
- All patterns in ( $compile* ) must match.
- All patterns in ( $string* ) must match.
- Uses the pe module.
- Pattern $httpmodule must be present.
- Pattern $context must be present.
- Checks imported functions or libraries.
Test this rule in your browser
Drop a file to scan it with this rule using YARA-X compiled to WebAssembly. Nothing is uploaded.
Licence & attribution
Author: FireEye
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: 73a27fa2-a846-5f4b-8182-064ac06c71a8
Tags:FILE
Related rules
- APT / threat actorSignature Base (Florian Roth / Nextron)· FireEye· 2020-12-14
- MalwareMalpedia signator rules· Felix Bilstein - yara-signator at cocacoding dot com· 2026-05-04
- APT / threat actorSignature Base (Florian Roth / Nextron)· FireEye· 2020-12-14
- APT / threat actorSignature Base (Florian Roth / Nextron)· FireEye· 2020-12-14
- APT / threat actorSignature Base (Florian Roth / Nextron)· FireEye· 2020-12-08
- APT / threat actorSignature Base (Florian Roth / Nextron)· FireEye· 2020-12-01
- APT / threat actorSignature Base (Florian Roth / Nextron)· FireEye· 2020-12-14
- APT / threat actorSignature Base (Florian Roth / Nextron)· FireEye· 2020-12-14