Skip to content

YARA · Signature Base (Florian Roth / Nextron)

SIGNATURE_BASE_APT_UNC5221_Ivanti_Forensicartifacts_Jan24_1

Detects forensic artifacts found in the Ivanti VPN exploitation campaign by APT UNC5221

APT / threat actorSignature Base (Florian Roth / Nextron)Detection Rule License 1.1Compiles with YARA-X
Author
Florian Roth
Date
2024-01-11
Modified
2024-04-24
Score / Quality
75 / 85

What this rule detects

Detects forensic artifacts found in the Ivanti VPN exploitation campaign by APT UNC5221

It defines 3 patterns (3 text, 0 hex, 0 regex).

Summary generated from the rule's metadata and condition.

Rule source

apt-unc5221-ivanti-forensicartifacts-jan24-1.yarDetection Rule License 1.1
rule SIGNATURE_BASE_APT_UNC5221_Ivanti_Forensicartifacts_Jan24_1 : FILE
{
	meta:
		description = "Detects forensic artifacts found in the Ivanti VPN exploitation campaign by APT UNC5221"
		author = "Florian Roth"
		id = "49ba2a96-379d-5a58-979d-45e83fa546e7"
		date = "2024-01-11"
		modified = "2024-04-24"
		reference = "https://www.mandiant.com/resources/blog/suspected-apt-targets-ivanti-zero-day"
		source_url = "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/apt_report_ivanti_mandiant_jan24.yar#L2-L16"
		license_url = "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
		logic_hash = "7f485f41072f5584dc76e71564e13066d9fe41685f33bff9c2886fa7d2155f94"
		score = 75
		quality = 85
		tags = "FILE"

	strings:
		$x1 = "system(\"chmod a+x /home/etc/sql/dsserver/sessionserver.sh\");"
		$x2 = "SSH-2.0-OpenSSH_0.3xx."
		$x3 = "sed -i '/retval=$(exec $installer $@)/d' /pkg/do-install"

	condition:
		filesize < 5MB and 1 of them
}

Strings (3 patterns)

IdentifierTypeValueModifiers
$x1text"system(\"chmod a+x /home/etc/sql/dsserver/sessionserver.sh\");"
$x2text"SSH-2.0-OpenSSH_0.3xx."
$x3text"sed -i '/retval=$(exec $installer $@)/d' /pkg/do-install"

Condition

filesize < 5MB and 1 of them

In plain words (Heuristic)

  • The file must be smaller than 5MB (a cheap guard that skips large files).
  • At least 1 patterns in the rule must match.

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: Florian Roth

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: 49ba2a96-379d-5a58-979d-45e83fa546e7

Tags:FILE