Skip to content

YARA · Signature Base (Florian Roth / Nextron)

SIGNATURE_BASE_FE_APT_Trojan_PL_RADIALPULSE_1

Detects samples mentioned in PulseSecure report

APT / threat actorSignature Base (Florian Roth / Nextron)Detection Rule License 1.1Compiles with YARA-X
Author
Mandiant
Date
2021-04-16
Modified
2023-12-05
Score / Quality
75 / 83

What this rule detects

Detects samples mentioned in PulseSecure report

It defines 5 patterns (1 text, 0 hex, 4 regex).

Summary generated from the rule's metadata and condition.

Rule source

fe-apt-trojan-pl-radialpulse-1.yarDetection Rule License 1.1
rule SIGNATURE_BASE_FE_APT_Trojan_PL_RADIALPULSE_1
{
	meta:
		description = "Detects samples mentioned in PulseSecure report"
		author = "Mandiant"
		id = "1fab6d2f-96e8-5def-a93e-2bddd04e7ec8"
		date = "2021-04-16"
		modified = "2023-12-05"
		reference = "https://www.fireeye.com/blog/threat-research/2021/04/suspected-apt-actors-leverage-bypass-techniques-pulse-secure-zero-day.html"
		source_url = "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/apt_pulsesecure.yar#L173-L190"
		license_url = "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
		hash = "d72daafedf41d484f7f9816f7f076a9249a6808f1899649b7daa22c0447bb37b"
		logic_hash = "d65a466cc15214d8e26597588c039a6b9fb4637ef8f3b1ebea27f016fbd5cba8"
		score = 75
		quality = 83
		tags = ""

	strings:
		$s1 = "->getRealmInfo()->{name}"
		$s2 = /open\(\*fd,[\x09\x20]{0,32}[\x22\x27]>>/
		$s3 = /syswrite\(\*fd,[\x09\x20]{0,32}[\x22\x27]realm=\$/
		$s4 = /syswrite\(\*fd,[\x09\x20]{0,32}[\x22\x27]username=\$/
		$s5 = /syswrite\(\*fd,[\x09\x20]{0,32}[\x22\x27]password=\$/

	condition:
		(@s1 [ 1 ] < @s2 [ 1 ] ) and ( @s2 [ 1 ] < @s3 [ 1 ] ) and $s4 and $s5
}

Strings (5 patterns)

IdentifierTypeValueModifiers
$s1text"->getRealmInfo()->{name}"
$s2regex/open\(\*fd,[\x09\x20]{0,32}[\x22\x27]>>/
$s3regex/syswrite\(\*fd,[\x09\x20]{0,32}[\x22\x27]realm=\$/
$s4regex/syswrite\(\*fd,[\x09\x20]{0,32}[\x22\x27]username=\$/
$s5regex/syswrite\(\*fd,[\x09\x20]{0,32}[\x22\x27]password=\$/

Condition

(@s1 [ 1 ] < @s2 [ 1 ] ) and ( @s2 [ 1 ] < @s3 [ 1 ] ) and $s4 and $s5

In plain words (Heuristic)

  • Pattern $s4 must be present.
  • Pattern $s5 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.

Drop a file here or click to chooseScanned locally with YARA-X. Files up to 200 MB.

Open in editor

References

Sample hashes

Hashes of samples the author lists in the rule's meta (look them up in your threat-intelligence platform).

  • d72daafedf41d484f7f9816f7f076a9249a6808f1899649b7daa22c0447bb37b

Licence & attribution

Author: Mandiant

Source repository: Signature Base (Florian Roth / Nextron) @ 94a1c48d7a

Licence: Detection Rule License 1.1 (repository licence)

Original rule

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

Rule id: 1fab6d2f-96e8-5def-a93e-2bddd04e7ec8