Skip to content

YARA · ditekSHen detection

DITEKSHEN_INDICATOR_TOOL_PRI_Juicypotato

Detect JuicyPotato

Suspicious / huntingJuicy PotatoditekSHen detectionBSD 2-Clause LicenseCompiles with YARA-X
Author
ditekSHen
Date
2020-11-06
Modified
2024-09-25
Score / Quality
75 / 75

What this rule detects

Detect JuicyPotato

Associated malware family: Juicy Potato.

Targets: Windows PE.

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

Summary generated from the rule's metadata and condition.

Rule source

indicator-tool-pri-juicypotato.yarBSD 2-Clause License
rule DITEKSHEN_INDICATOR_TOOL_PRI_Juicypotato : FILE
{
	meta:
		description = "Detect JuicyPotato"
		author = "ditekSHen"
		id = "2fb52598-9771-507b-a06d-7b9bc693ffee"
		date = "2020-11-06"
		modified = "2024-09-25"
		reference = "https://github.com/ditekshen/detection"
		source_url = "https://github.com/ditekshen/detection/blob/e76c93dcdedff04076380ffc60ea54e45b313635/yara/indicator_tools.yar#L1255-L1270"
		license_url = "https://github.com/ditekshen/detection/blob/e76c93dcdedff04076380ffc60ea54e45b313635/LICENSE.txt"
		logic_hash = "43a7ac16b9633fd2e6c43ca142cd0d0e2166287bb51e1b6344119959fe054c19"
		score = 75
		quality = 75
		tags = "FILE"

	strings:
		$x1 = "\\JuicyPotato.pdb" ascii
		$x2 = "JuicyPotato v%s" fullword ascii
		$s1 = "hello.stg" fullword wide
		$s2 = "ppVirtualProcessorRoots" fullword ascii
		$s3 = "Lock already taken" fullword ascii
		$s4 = "[+] authresult %d" fullword ascii
		$s5 = "RPC -> send failed with error: %d" fullword ascii
		$s6 = "Priv Adjust FALSE" fullword ascii

	condition:
		uint16( 0 ) == 0x5a4d and ( all of ( $x* ) or ( 1 of ( $x* ) and 3 of ( $s* ) ) or ( 5 of ( $s* ) ) )
}

Strings (8 patterns)

IdentifierTypeValueModifiers
$x1text"\\JuicyPotato.pdb"ascii
$x2text"JuicyPotato v%s"fullword ascii
$s1text"hello.stg"fullword wide
$s2text"ppVirtualProcessorRoots"fullword ascii
$s3text"Lock already taken"fullword ascii
$s4text"[+] authresult %d"fullword ascii
$s5text"RPC -> send failed with error: %d"fullword ascii
$s6text"Priv Adjust FALSE"fullword ascii

Condition

uint16( 0 ) == 0x5a4d and ( all of ( $x* ) or ( 1 of ( $x* ) and 3 of ( $s* ) ) or ( 5 of ( $s* ) ) )

In plain words (Heuristic)

  • The file must start with “MZ” — a Windows executable (PE).
  • All patterns in ( $x* ) must match.
  • At least 1 patterns in ( $x* ) must match.
  • At least 3 patterns in ( $s* ) must match.
  • At least 5 patterns in ( $s* ) 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: ditekSHen

Source repository: ditekSHen detection @ e76c93dcde

Licence: BSD 2-Clause License (repository licence)

Copyright notice: Copyright 2021 by ditekSHen (https://github.com/ditekshen/detection).

Original rule

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

Rule id: 2fb52598-9771-507b-a06d-7b9bc693ffee

Tags:FILE

More Juicy Potato rules