Aller au contenu

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.1Compile avec YARA-X
Auteur
Marius Benthin
Date
2025-11-24
Modifiée
2025-12-15
Score / Qualité
80 / 85

Ce que détecte cette règle

Detects malicious JavaScript worm bun_environment.js

Elle définit 6 motifs (6 texte, 0 hex, 0 regex).

Résumé généré à partir des métadonnées et de la condition de la règle.

Source de la règle

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* )
}

Chaînes (6 motifs)

IdentifiantTypeValeurModificateurs
$sa1texte"npm publish"
$sa2texte"NPM_TOKEN"
$sa3texte"NPM_CONFIG_TOKEN"
$sb1texte"GITHUB_"
$sb2texte"GITLAB_"
$sb3texte"TEAMCITY_"

Condition

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

En clair (Heuristique)

  • Le fichier doit faire moins de 20MB (garde-fou peu coûteux qui écarte les gros fichiers).
  • Tous les motifs de ( $sa* ) doivent être trouvés.
  • Au moins 2 motifs de ( $sb* ) doivent être trouvés.

Tester cette règle dans votre navigateur

Déposez un fichier pour le scanner avec cette règle grâce à YARA-X compilé en WebAssembly. Rien n’est envoyé.

Déposez un fichier ici ou cliquez pour choisirScanné localement avec YARA-X. Fichiers jusqu’à 200 Mo.

Ouvrir dans l’éditeur

Références

Hashes d’échantillons

Hashes des échantillons listés par l’auteur dans les métadonnées de la règle (à rechercher dans votre plateforme de threat intelligence).

  • 62ee164b9b306250c1172583f138c9614139264f889fa99614903c12755468d0

Licence et attribution

Auteur : Marius Benthin

Dépôt source : Signature Base (Florian Roth / Nextron) @ 94a1c48d7a

Licence : Detection Rule License 1.1 (licence du dépôt)

Règle d’origine

Reprise via YARA Forge 20260927, qui préfixe les noms de règles par la source et ajoute des champs meta normalisés.

Identifiant de règle: 11726cbe-48a7-577a-9694-8f38ffa746e1

Tags:FILE