Saltar al contenido

YARA · elceef yara-rulz

ELCEEF_Suspicious_SFX

Detects self-extracting archives (SFX) executing cmd.exe or powershell.exe

Sospechoso / huntingelceef yara-rulzMIT LicenseCompila con YARA-X (con avisos)
Autor
marcin@ulikowski.pl
Fecha
2023-04-04
Puntuación / Calidad
65 / 73

Qué detecta esta regla

Detects self-extracting archives (SFX) executing cmd.exe or powershell.exe

Objetivos: PE de Windows.

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

YARA-X dice: warning[text_as_hex]: hex pattern could be written as text literal

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

Código de la regla

suspicious-sfx.yarMIT License
rule ELCEEF_Suspicious_SFX : FILE
{
	meta:
		description = "Detects self-extracting archives (SFX) executing cmd.exe or powershell.exe"
		author = "marcin@ulikowski.pl"
		id = "78f4ae8b-ba17-5c02-a6f0-66bec873aba8"
		date = "2023-04-04"
		modified = "2023-04-04"
		reference = "https://www.crowdstrike.com/blog/self-extracting-archives-decoy-files-and-their-hidden-payloads/"
		source_url = "https://github.com/elceef/yara-rulz/blob/5683b294a12cf0c875b624933586029ae43a852f/rules/Suspicious_SFX.yara#L1-L22"
		license_url = "https://github.com/elceef/yara-rulz/blob/5683b294a12cf0c875b624933586029ae43a852f/LICENSE"
		logic_hash = "688ed356e2fa936a0e07a8479591c28fb457053ed94351bad4bf367b02f04b0a"
		score = 65
		quality = 73
		tags = "FILE"

	strings:
		$rar = { 52 61 72 21 }
		$zip = { 50 4b 03 04 }
		$setup_cmd = "\nSetup=cmd"
		$setup_powershell = "\nSetup=powershell"
		$silent = "\nSilent=1"

	condition:
		filesize < 1MB and uint16be( 0 ) == 0x4d5a and any of ( $zip , $rar ) and any of ( $setup_* ) and $silent
}

Cadenas (5 patrones)

IdentificadorTipoValorModificadores
$rarhex{ 52 61 72 21 }
$ziphex{ 50 4b 03 04 }
$setup_cmdtexto"\nSetup=cmd"
$setup_powershelltexto"\nSetup=powershell"
$silenttexto"\nSilent=1"

Condición

filesize < 1MB and uint16be( 0 ) == 0x4d5a and any of ( $zip , $rar ) and any of ( $setup_* ) and $silent

En palabras sencillas (Heurística)

  • El archivo debe empezar por «MZ»: un ejecutable de Windows (PE).
  • El archivo debe ocupar menos de 1MB (un límite barato que descarta archivos grandes).
  • Debe coincidir al menos un patrón de ( $zip , $rar ).
  • Debe coincidir al menos un patrón de ( $setup_* ).
  • El patrón $silent debe estar presente.

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: marcin@ulikowski.pl

Repositorio de origen: elceef yara-rulz @ 5683b294a1

Licencia: MIT License (licencia del repositorio)

Aviso de copyright: Copyright (c) 2022 Marcin Ulikowski

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: 78f4ae8b-ba17-5c02-a6f0-66bec873aba8

Etiquetas:FILE