Saltar al contenido

YARA · Signature Base (Florian Roth / Nextron)

SIGNATURE_BASE_MAL_Sindoor_Downloader_Aug25

Detects Sindoor downloader related to APT 36

MalwareSignature Base (Florian Roth / Nextron)Detection Rule License 1.1Compila con YARA-X
Autor
Pezier Pierre-Henri
Fecha
2025-08-29
Modificada
2026-05-15
Puntuación / Calidad
80 / 85

Qué detecta esta regla

Detects Sindoor downloader related to APT 36

Objetivos: PE de Windows, ELF de Linux, Mach-O de macOS.

Define 5 patrones (5 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

mal-sindoor-downloader-aug25.yarDetection Rule License 1.1
rule SIGNATURE_BASE_MAL_Sindoor_Downloader_Aug25 : FILE
{
	meta:
		description = "Detects Sindoor downloader related to APT 36"
		author = "Pezier Pierre-Henri"
		id = "c1188abc-2bea-5cbc-a39d-9690626c0821"
		date = "2025-08-29"
		modified = "2026-05-15"
		reference = "Internal Research"
		source_url = "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/apt_apt36_operation_sindoor.yar#L65-L90"
		license_url = "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
		hash = "38b6b93a536cbab5c289fe542656d8817d7c1217ad75c7f367b15c65d96a21d4"
		logic_hash = "c55be65cd077cb04b625636dffcb02af74efa06bb49da734c8616da233a34d1a"
		score = 80
		quality = 85
		tags = "FILE"

	strings:
		$s1 = "Go build"
		$s2 = "main.downloadFile.deferwrap"
		$s3 = "main.decrypt"
		$s4 = "main.HiddenHome"
		$s5 = "main.RealCheck"

	condition:
		filesize < 100MB and ( uint16( 0 ) == 0x5a4d or uint32be( 0 ) == 0x7f454c46 or ( uint32be( 0 ) == 0xcafebabe and uint32be( 4 ) < 0x20 ) or uint32( 0 ) == 0xfeedface or uint32( 0 ) == 0xfeedfacf ) and all of them
}

Cadenas (5 patrones)

IdentificadorTipoValorModificadores
$s1texto"Go build"
$s2texto"main.downloadFile.deferwrap"
$s3texto"main.decrypt"
$s4texto"main.HiddenHome"
$s5texto"main.RealCheck"

Condición

filesize < 100MB and ( uint16( 0 ) == 0x5a4d or uint32be( 0 ) == 0x7f454c46 or ( uint32be( 0 ) == 0xcafebabe and uint32be( 4 ) < 0x20 ) or uint32( 0 ) == 0xfeedface or uint32( 0 ) == 0xfeedfacf ) and all of them

En palabras sencillas (Heurística)

  • El archivo debe empezar por «MZ»: un ejecutable de Windows (PE).
  • El archivo debe empezar por la cabecera ELF: un ejecutable de Linux/Unix.
  • El archivo debe empezar por una firma Mach-O / fat: un ejecutable de macOS.
  • El archivo debe ocupar menos de 100MB (un límite barato que descarta archivos grandes).
  • Deben coincidir todos los 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

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

  • 38b6b93a536cbab5c289fe542656d8817d7c1217ad75c7f367b15c65d96a21d4

Licencia y atribución

Autor: Pezier Pierre-Henri

Repositorio de origen: Signature Base (Florian Roth / Nextron) @ 94a1c48d7a

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: c1188abc-2bea-5cbc-a39d-9690626c0821

Etiquetas:FILE