Saltar al contenido

YARA · elceef yara-rulz

ELCEEF_ZIP_High_Ratio_Single_Doc

Detects ZIP archives containing single MS Word document with unusually high compression ratio

Genéricaelceef yara-rulzMIT LicenseCompila con YARA-X
Autor
marcin@ulikowski.pl
Fecha
2023-03-08
Puntuación / Calidad
75 / 75

Qué detecta esta regla

Detects ZIP archives containing single MS Word document with unusually high compression ratio

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

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

Código de la regla

zip-high-ratio-single-doc.yarMIT License
rule ELCEEF_ZIP_High_Ratio_Single_Doc : FILE
{
	meta:
		description = "Detects ZIP archives containing single MS Word document with unusually high compression ratio"
		author = "marcin@ulikowski.pl"
		id = "0fbe89d9-1bf5-50a9-b6c1-1d739162a2ba"
		date = "2023-03-08"
		modified = "2023-03-08"
		reference = "https://github.com/elceef/yara-rulz"
		source_url = "https://github.com/elceef/yara-rulz/blob/5683b294a12cf0c875b624933586029ae43a852f/rules/ZIP_High_Ratio_Single_Doc.yara#L8-L27"
		license_url = "https://github.com/elceef/yara-rulz/blob/5683b294a12cf0c875b624933586029ae43a852f/LICENSE"
		hash = "4d9a6dfca804989d40eeca9bb2d90ef33f3980eb07ca89bbba06d0ef4b37634b"
		hash = "4bc2d14585c197ad3aa5836b3f7d9d784d7afe79856e0ddf850fc3c676b6ecb1"
		logic_hash = "470300b8d6356cff43a1e2be3a23a97be5d1e2ce5a76f2fb2eccdbbb47a4d327"
		score = 75
		quality = 75
		tags = "FILE"

	strings:
		$magic = { 50 4b 03 04 }
		$ext = ".doc"

	condition:
		filesize < 1MB and $magic at 0 and #magic == 1 and uint32( 22 ) > 1024 * 1024 * 100 and $ext at ( uint16( 26 ) + 26 )
}

Cadenas (2 patrones)

IdentificadorTipoValorModificadores
$magichex{ 50 4b 03 04 }
$exttexto".doc"

Condición

filesize < 1MB and $magic at 0 and #magic == 1 and uint32( 22 ) > 1024 * 1024 * 100 and $ext at ( uint16( 26 ) + 26 )

En palabras sencillas (Heurística)

  • El archivo debe ocupar menos de 1MB (un límite barato que descarta archivos grandes).
  • El patrón $magic debe aparecer == 1 veces.
  • El patrón $magic debe estar en el offset 0.
  • El patrón $ext debe estar en el offset (.

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).

  • 4d9a6dfca804989d40eeca9bb2d90ef33f3980eb07ca89bbba06d0ef4b37634b
  • 4bc2d14585c197ad3aa5836b3f7d9d784d7afe79856e0ddf850fc3c676b6ecb1

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: 0fbe89d9-1bf5-50a9-b6c1-1d739162a2ba

Etiquetas:FILE