Saltar al contenido

YARA · Signature Base (Florian Roth / Nextron)

SIGNATURE_BASE_MAL_JS_NPM_Supplychain_Attack_Nov25

Detects malicious JavaScript worm bun_environment.js

MalwareSignature Base (Florian Roth / Nextron)Detection Rule License 1.1Compila con YARA-X
Autor
Marius Benthin
Fecha
2025-11-24
Modificada
2025-12-15
Puntuación / Calidad
80 / 85

Qué detecta esta regla

Detects malicious JavaScript worm bun_environment.js

Define 6 patrones (6 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-js-npm-supplychain-attack-nov25.yarDetection Rule License 1.1
rule SIGNATURE_BASE_MAL_JS_NPM_Supplychain_Attack_Nov25 : FILE
{
	meta:
		description = "Detects malicious JavaScript worm bun_environment.js"
		author = "Marius Benthin"
		id = "11726cbe-48a7-577a-9694-8f38ffa746e1"
		date = "2025-11-24"
		modified = "2025-12-15"
		reference = "https://www.aikido.dev/blog/shai-hulud-strikes-again-hitting-zapier-ensdomains"
		source_url = "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/mal_npm_supply_chain_nov25.yar#L1-L23"
		license_url = "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
		hash = "62ee164b9b306250c1172583f138c9614139264f889fa99614903c12755468d0"
		logic_hash = "b5a8da01ecb31dfa7a3921847a0fe26021b7618b1ee7a115a366b0854a4fa0a8"
		score = 80
		quality = 85
		tags = "FILE"

	strings:
		$sa1 = "npm publish"
		$sa2 = "NPM_TOKEN"
		$sa3 = "NPM_CONFIG_TOKEN"
		$sb1 = "GITHUB_"
		$sb2 = "GITLAB_"
		$sb3 = "TEAMCITY_"

	condition:
		filesize < 20MB and all of ( $sa* ) and 2 of ( $sb* )
}

Cadenas (6 patrones)

IdentificadorTipoValorModificadores
$sa1texto"npm publish"
$sa2texto"NPM_TOKEN"
$sa3texto"NPM_CONFIG_TOKEN"
$sb1texto"GITHUB_"
$sb2texto"GITLAB_"
$sb3texto"TEAMCITY_"

Condición

filesize < 20MB and all of ( $sa* ) and 2 of ( $sb* )

En palabras sencillas (Heurística)

  • El archivo debe ocupar menos de 20MB (un límite barato que descarta archivos grandes).
  • Deben coincidir todos los patrones de ( $sa* ).
  • Deben coincidir al menos 2 patrones de ( $sb* ).

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

  • 62ee164b9b306250c1172583f138c9614139264f889fa99614903c12755468d0

Licencia y atribución

Autor: Marius Benthin

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: 11726cbe-48a7-577a-9694-8f38ffa746e1

Etiquetas:FILE