Saltar al contenido

YARA · ditekSHen detection

DITEKSHEN_MALWARE_Win_Powerpool_STG2

Detects second stage PowerPool backdoor

MalwarePowerpoolditekSHen detectionBSD 2-Clause LicenseCompila con YARA-X
Autor
ditekSHen
Fecha
2020-11-06
Modificada
2024-11-01
Puntuación / Calidad
75 / 73

Qué detecta esta regla

Detects second stage PowerPool backdoor

Familia de malware asociada: Powerpool.

Objetivos: PE de Windows.

Define 22 patrones (22 de texto, 0 hex, 0 regex).

Resumen generado a partir de los metadatos y la condición de la regla.

Código de la regla

malware-win-powerpool-stg2.yarBSD 2-Clause License
rule DITEKSHEN_MALWARE_Win_Powerpool_STG2 : FILE
{
	meta:
		description = "Detects second stage PowerPool backdoor"
		author = "ditekSHen"
		id = "1a059900-3292-5419-a143-caea3e710191"
		date = "2020-11-06"
		modified = "2024-11-01"
		reference = "https://github.com/ditekshen/detection"
		source_url = "https://github.com/ditekshen/detection/blob/e76c93dcdedff04076380ffc60ea54e45b313635/yara/malware.yar#L2363-L2395"
		license_url = "https://github.com/ditekshen/detection/blob/e76c93dcdedff04076380ffc60ea54e45b313635/LICENSE.txt"
		logic_hash = "b80712bab281dbde816e2eda6ab1b4a9e21be26578fb755a1e1e1635675aa911"
		score = 75
		quality = 73
		tags = "FILE"
		snort2_sid = "920089-920091"
		snort3_sid = "920087-920089"
		clamav_sig = "MALWARE.Win.Trojan.PowerPool-STG-2"

	strings:
		$s1 = "write info fail!!! GetLastError-->%u" fullword ascii
		$s2 = "LookupAccountSid Error %u" fullword ascii
		$s3 = "Mozilla/4.0 (compatible; )" fullword ascii
		$s4 = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; SE)" fullword ascii
		$s5 = "Content-Disposition: form-data; name=\"%s\"" fullword ascii
		$s6 = "Content-Disposition: form-data; name=\"%s\"; filename=\"%s\"" fullword ascii
		$s7 = "Content-Type: multipart/form-data; boundary=--MULTI-PARTS-FORM-DATA-BOUNDARY" fullword ascii
		$s8 = "in Json::Value::find" fullword ascii
		$s9 = "in Json::Value::resolveReference" fullword ascii
		$s10 = "in Json::Value::duplicateAndPrefixStringValue" fullword ascii
		$s11 = ".?AVLogicError@Json@@" fullword ascii
		$s12 = ".?AVRuntimeError@Json@@" fullword ascii
		$s13 = "http:\\\\82.221.101.157:80" ascii
		$s14 = "http://172.223.112.130:80" ascii
		$s15 = "http://172.223.112.130:443" ascii
		$s16 = "http://info.newsrental.net:80" ascii
		$s17 = "%s|%I64d" ascii
		$s18 = "open internet failed..." ascii
		$s19 = "connect failed..." ascii
		$s20 = "handle not opened..." ascii
		$s21 = "corrupted regex pattern" fullword ascii
		$s22 = "add cookie failed..." ascii

	condition:
		uint16( 0 ) == 0x5a4d and 14 of them
}

Cadenas (22 patrones)

IdentificadorTipoValorModificadores
$s1texto"write info fail!!! GetLastError-->%u"fullword ascii
$s2texto"LookupAccountSid Error %u"fullword ascii
$s3texto"Mozilla/4.0 (compatible; )"fullword ascii
$s4texto"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; SE)"fullword ascii
$s5texto"Content-Disposition: form-data; name=\"%s\""fullword ascii
$s6texto"Content-Disposition: form-data; name=\"%s\"; filename=\"%s\""fullword ascii
$s7texto"Content-Type: multipart/form-data; boundary=--MULTI-PARTS-FORM-DATA-BOUNDARY"fullword ascii
$s8texto"in Json::Value::find"fullword ascii
$s9texto"in Json::Value::resolveReference"fullword ascii
$s10texto"in Json::Value::duplicateAndPrefixStringValue"fullword ascii
$s11texto".?AVLogicError@Json@@"fullword ascii
$s12texto".?AVRuntimeError@Json@@"fullword ascii
$s13texto"http:\\\\82.221.101.157:80"ascii
$s14texto"http://172.223.112.130:80"ascii
$s15texto"http://172.223.112.130:443"ascii
$s16texto"http://info.newsrental.net:80"ascii
$s17texto"%s|%I64d"ascii
$s18texto"open internet failed..."ascii
$s19texto"connect failed..."ascii
$s20texto"handle not opened..."ascii
$s21texto"corrupted regex pattern"fullword ascii
$s22texto"add cookie failed..."ascii

Condición

uint16( 0 ) == 0x5a4d and 14 of them

En palabras sencillas (Heurística)

  • El archivo debe empezar por «MZ»: un ejecutable de Windows (PE).
  • Deben coincidir al menos 14 patrones de la regla.

Prueba esta regla en tu navegador

Arrastra un archivo para escanearlo con esta regla usando YARA-X compilado a WebAssembly. No se sube nada.

Arrastra un archivo aquí o haz clic para elegirSe escanea en local con YARA-X. Archivos de hasta 200 MB.

Abrir en el editor

Referencias

Licencia y atribución

Autor: ditekSHen

Repositorio de origen: ditekSHen detection @ e76c93dcde

Licencia: BSD 2-Clause License (licencia del repositorio)

Aviso de copyright: Copyright 2021 by ditekSHen (https://github.com/ditekshen/detection).

Regla original

Obtenida a través de YARA Forge 20260927, que añade a los nombres el prefijo de la fuente y campos meta normalizados.

Id de la regla: 1a059900-3292-5419-a143-caea3e710191

Metadatos

snort2_sid920089-920091
snort3_sid920087-920089
clamav_sigMALWARE.Win.Trojan.PowerPool-STG-2

Etiquetas:FILE

Más reglas de Powerpool