Skip to content

YARA · Trellix Advanced Research Center

TRELLIX_ARC_Netwalker_Signed

Rule to detect Netwalker ransomware digitally signed.

MalwareTrellix Advanced Research CenterApache License 2.0Compiles with YARA-X (with warnings)
Author
Marc Rivero | McAfee ATR Team
Date
2020-03-30
Modified
2020-11-20
Score / Quality
75 / 70

What this rule detects

Rule to detect Netwalker ransomware digitally signed.

Targets: Windows PE.

It has no patterns: the condition alone decides (modules, file properties or other rules). YARA modules used: pe.

YARA-X says: warning[deprecated_field]: field `number_of_signatures` is deprecated

Summary generated from the rule's metadata and condition.

Rule source

Includes the imports needed to compile it on its own.

netwalker-signed.yarApache License 2.0
import "pe"

rule TRELLIX_ARC_Netwalker_Signed : FILE
{
	meta:
		description = "Rule to detect Netwalker ransomware digitally signed."
		author = "Marc Rivero | McAfee ATR Team"
		id = "6806b917-2e02-57e3-887a-b4c12db83653"
		date = "2020-03-30"
		modified = "2020-11-20"
		reference = "https://www.ccn-cert.cni.es/comunicacion-eventos/comunicados-ccn-cert/9802-publicado-un-informe-de-codigo-danino-sobre-netwalker.html"
		source_url = "https://github.com/advanced-threat-research/Yara-Rules//blob/1919562a59f190bda60c982424f6a24c542ee3e0/ransomware/RANSOM_netwalker.yar#L30-L47"
		license_url = "https://github.com/advanced-threat-research/Yara-Rules//blob/1919562a59f190bda60c982424f6a24c542ee3e0/LICENSE"
		logic_hash = "d78ed22771d7c93516375afb8fd2fd7baa40a357ec3c247939a10d11f80ae226"
		score = 75
		quality = 70
		tags = "FILE"
		note = "The rule will hit also some Dridex samples digitally signed"

	condition:
		uint16( 0 ) == 0x5a4d and for any i in ( 0 .. pe.number_of_signatures ) : ( pe.signatures [ i ] . subject contains "/CN=EWBTCAXQKUMDTHCXCZ" and pe.signatures [ i ] . serial == "17:16:bb:93:fb:a9:a2:41:ba:a8:2e:c7:5e:ff:0c" or pe.signatures [ i ] . thumbprint == "a4:28:e9:4a:61:3a:1f:cf:ff:08:bf:e7:61:51:64:31:1a:6f:87:bc" )
}

Condition

uint16( 0 ) == 0x5a4d and for any i in ( 0 .. pe.number_of_signatures ) : ( pe.signatures [ i ] . subject contains "/CN=EWBTCAXQKUMDTHCXCZ" and pe.signatures [ i ] . serial == "17:16:bb:93:fb:a9:a2:41:ba:a8:2e:c7:5e:ff:0c" or pe.signatures [ i ] . thumbprint == "a4:28:e9:4a:61:3a:1f:cf:ff:08:bf:e7:61:51:64:31:1a:6f:87:bc" )

In plain words (Heuristic)

  • The file must start with “MZ” — a Windows executable (PE).
  • A for-loop checks a property over several matches or items.
  • Uses the pe module.
  • Checks the Authenticode signature.

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.

Open in editor

References

Licence & attribution

Author: Marc Rivero | McAfee ATR Team

Source repository: Trellix Advanced Research Center @ 1919562a59

Licence: Apache License 2.0 (repository licence)

Original rule

Mirrored via YARA Forge 20260927, which prefixes rule names with the source and adds normalised meta fields.

Rule id: 6806b917-2e02-57e3-887a-b4c12db83653

Metadata

noteThe rule will hit also some Dridex samples digitally signed

Tags:FILE