Skip to content

YARA · BlackBerry Research & Intelligence (via Open-Source-YARA-rules)

BLACKBERRY_Mal_Infostealer_MSI_Jupyter_Embedded_Powershell

Detects Jupter by a specific PowerShell command present in the MSI Installer

MalwareBlackBerry Research & Intelligence (via Open-Source-YARA-rules)Apache License 2.0Compiles with YARA-X
Author
BlackBerry Threat Research Team
Date
2021-10-14
Modified
2022-07-06
Score / Quality
75 / 85

What this rule detects

Detects Jupter by a specific PowerShell command present in the MSI Installer

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

Summary generated from the rule's metadata and condition.

Rule source

mal-infostealer-msi-jupyter-embedded-powershell.yarApache License 2.0
rule BLACKBERRY_Mal_Infostealer_MSI_Jupyter_Embedded_Powershell : FILE
{
	meta:
		description = "Detects Jupter by a specific PowerShell command present in the MSI Installer"
		author = "BlackBerry Threat Research Team"
		id = "feee2c1d-b6c5-5a79-a409-c2add83dc68f"
		date = "2021-10-14"
		modified = "2022-07-06"
		reference = "https://blogs.blackberry.com/en/2022/01/threat-thursday-jupyter-infostealer-is-a-master-of-disguise"
		source_url = "https://github.com/mikesxrs/Open-Source-YARA-rules/blob/ec0056f767db98bf6d5fd63877ad51fb54d350e9/Blackberry/Mal_Infostealer_MSI_Jupyter_Embedded_PowerShell.yar#L1-L20"
		license_url = "N/A"
		logic_hash = "7528342e5aea1c35b59a458695c0e363c6d6c6e1c2df38614ff185c74085ac89"
		score = 75
		quality = 85
		tags = "FILE"
		license = "This Yara rule is provided under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0) and open to any user or organization, as long as you use it under this license and ensure originator credit in any derivative to The BlackBerry Research & Intelligence Team"

	strings:
		$msi = { D0 CF 11 E0 A1 B1 1A E1 }
		$x1 = /powershell-ep bypass -windowstyle hidden -command \"\$xp=\'\[AppDataFolder\]pd\w*\.(log|txt)\';\$xk=\'[a-zA-Z]{52}\';\$xb=\[\\\[\]System\.Convert\[\\\]\]::FromBase64String\(\[\\\[\]System\.IO\.File\[\\\]\]::ReadAllText\(\$xp\)\);remove-item \$xp;for\(\$i=0;\$i -lt \$xb.count;\)\[\\\{\]for\(\$j=0;\$j -lt \$xk\.length;\$j\+\+\)\[\\\{\]\$xb\[\\\[\]\$i\[\\\]\]=\$xb\[\\\[\]\$i\[\\\]\] -bxor \$xk\[\\\[\]\$j\[\\\]\];\$i\+\+;if\(\$i -ge \$xb.count\)\[\\\{\]\$j=\$xk\.length;\[\\\}\]\[\\\}\]\[\\\}\];\$xb=\[\\\[\]System.Text.Encoding\[\\\]\]::UTF8\.GetString\(\$xb\);iex \$xb;/ nocase

	condition:
		$msi at 0 and all of ( $x* )
}

Strings (2 patterns)

IdentifierTypeValueModifiers
$msihex{ D0 CF 11 E0 A1 B1 1A E1 }
$x1regex/powershell-ep bypass -windowstyle hidden -command \"\$xp=\'\[AppDataFolder\]pd\w*\.(log|txt)\';\$xk=\'[a-zA-Z]{52}\';\$xb=\[\\\[\]System\.Convert\[\\\]\]::From …nocase

Condition

$msi at 0 and all of ( $x* )

In plain words (Heuristic)

  • All patterns in ( $x* ) must match.
  • Pattern $msi must be found at offset 0.

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: BlackBerry Threat Research Team

Source repository: BlackBerry Research & Intelligence (via Open-Source-YARA-rules) @ ec0056f767

Licence: Apache License 2.0 (stated in the rule's own meta)

“This Yara rule is provided under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0) and open to any user or organization, as long as you use it under this license and ensure originator credit in any derivative to The BlackBerry Research & Intelligence Team”

Original rule

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

Rule id: feee2c1d-b6c5-5a79-a409-c2add83dc68f

Tags:FILE