Saltar al contenido

YARA · Cod3nym detection-rules

COD3NYM_SUSP_OBF_NET_Confuserex_Packer_Jan24

Detects binaries packed with ConfuserEx compression packer. This feature compresses and encrypts the actual image into a stub that unpacks and loads the original image on runtime.

Sospechoso / huntingCod3nym detection-rulesDetection Rule License 1.1Compila con YARA-X
Autor
Jonathan Peters
Fecha
2024-01-09
Puntuación / Calidad
70 / 80

Qué detecta esta regla

Detects binaries packed with ConfuserEx compression packer. This feature compresses and encrypts the actual image into a stub that unpacks and loads the original image on runtime.

Objetivos: PE de Windows.

Define 5 patrones (2 de texto, 3 hex, 0 regex).

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

Código de la regla

susp-obf-net-confuserex-packer-jan24.yarDetection Rule License 1.1
rule COD3NYM_SUSP_OBF_NET_Confuserex_Packer_Jan24 : FILE
{
	meta:
		description = "Detects binaries packed with ConfuserEx compression packer. This feature compresses and encrypts the actual image into a stub that unpacks and loads the original image on runtime."
		author = "Jonathan Peters"
		id = "cd53a62f-62e3-58a1-8bc3-7f40949e3f00"
		date = "2024-01-09"
		modified = "2024-01-09"
		reference = "https://github.com/yck1509/ConfuserEx/tree/master"
		source_url = "https://github.com/cod3nym/detection-rules//blob/86a04c4594cb48895192aad4af164f21f568c136/yara/dotnet/obf_confuserex.yar#L23-L42"
		license_url = "https://github.com/cod3nym/detection-rules//blob/86a04c4594cb48895192aad4af164f21f568c136/LICENSE.md"
		hash = "2570bd4c3f564a61d6b3d589126e0940af27715e1e8d95de7863579fbe25f86f"
		logic_hash = "43aee4c01b47ca04ee516d418939ec3e90fd08566f2a4b501c4698b7f9e0225d"
		score = 70
		quality = 80
		tags = "FILE"

	strings:
		$s1 = "GCHandle" ascii
		$s2 = "GCHandleType" ascii
		$op1 = { 5A 20 89 C0 3F 14 6A 5E [8-20] 5A 20 FB 56 4D 44 6A 5E 6D 9E }
		$op2 = { 20 61 FF 6F 00 13 ?? 06 13 ?? 16 13 [10-20] 20 1F 3F 5E 00 5A}
		$op3 = { 16 91 7E [3] 04 17 91 1E 62 60 7E [3] 04 18 91 1F 10 62 60 7E [3] 04 19 91 1F 18 62 }

	condition:
		uint16( 0 ) == 0x5a4d and all of ( $s* ) and 2 of ( $op* )
}

Cadenas (5 patrones)

IdentificadorTipoValorModificadores
$s1texto"GCHandle"ascii
$s2texto"GCHandleType"ascii
$op1hex{ 5A 20 89 C0 3F 14 6A 5E [8-20] 5A 20 FB 56 4D 44 6A 5E 6D 9E }
$op2hex{ 20 61 FF 6F 00 13 ?? 06 13 ?? 16 13 [10-20] 20 1F 3F 5E 00 5A}
$op3hex{ 16 91 7E [3] 04 17 91 1E 62 60 7E [3] 04 18 91 1F 10 62 60 7E [3] 04 19 91 1F 18 62 }

Condición

uint16( 0 ) == 0x5a4d and all of ( $s* ) and 2 of ( $op* )

En palabras sencillas (Heurística)

  • El archivo debe empezar por «MZ»: un ejecutable de Windows (PE).
  • Deben coincidir todos los patrones de ( $s* ).
  • Deben coincidir al menos 2 patrones de ( $op* ).

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

Hashes de muestras

Hashes de las muestras que el autor lista en los metadatos de la regla (búscalos en tu plataforma de threat intelligence).

  • 2570bd4c3f564a61d6b3d589126e0940af27715e1e8d95de7863579fbe25f86f

Licencia y atribución

Autor: Jonathan Peters

Repositorio de origen: Cod3nym detection-rules @ 86a04c4594

Licencia: Detection Rule License 1.1 (licencia del repositorio)

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: cd53a62f-62e3-58a1-8bc3-7f40949e3f00

Etiquetas:FILE