YARA · Signature Base (Florian Roth / Nextron)
SIGNATURE_BASE_SUSP_JS_NPM_Setupscript_Nov25
Detects suspicious JavaScript which exits silently and checks operating system
- Auteur
- Marius Benthin
- Date
- 2025-11-24
- Modifiée
- 2025-12-15
- Score / Qualité
- 70 / 85
Ce que détecte cette règle
Detects suspicious JavaScript which exits silently and checks operating system
Elle définit 4 motifs (4 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
rule SIGNATURE_BASE_SUSP_JS_NPM_Setupscript_Nov25 : FILE
{
meta:
= "Detects suspicious JavaScript which exits silently and checks operating system"
= "Marius Benthin"
= "2d102efd-681a-5af1-b4fe-3489e5e7f8f2"
= "2025-11-24"
= "2025-12-15"
= "https://www.aikido.dev/blog/shai-hulud-strikes-again-hitting-zapier-ensdomains"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/mal_npm_supply_chain_nov25.yar#L43-L64"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
= "a3894003ad1d293ba96d77881ccd2071446dc3f65f434669b49b3da92421901a"
= "b685f642d1d62200da973aad7fd7a2d606a098b92524aaebe5e2bb45c63f3155"
= 70
= 85
= "FILE"
strings:
$sa1 = "require('child_process')"
$sa2 = "process.platform ==="
$sb1 = "().catch((e"
$sb2 = "process.exit(0)"
condition:
filesize < 100KB and all of ( $sa* ) and $sb1 in ( filesize - 50 .. filesize ) and $sb2 in ( filesize - 30 .. filesize )
}
Chaînes (4 motifs)
| Identifiant | Type | Valeur | Modificateurs |
|---|---|---|---|
| $sa1 | texte | "require('child_process')" | |
| $sa2 | texte | "process.platform ===" | |
| $sb1 | texte | "().catch((e" | |
| $sb2 | texte | "process.exit(0)" |
Condition
filesize < 100KB and all of ( $sa* ) and $sb1 in ( filesize - 50 .. filesize ) and $sb2 in ( filesize - 30 .. filesize )En clair (Heuristique)
- Le fichier doit faire moins de 100KB (garde-fou peu coûteux qui écarte les gros fichiers).
- Tous les motifs de ( $sa* ) doivent être trouvés.
- Le motif $sb1 doit se trouver dans la plage filesize - 50 .. filesize.
- Le motif $sb2 doit se trouver dans la plage filesize - 30 .. filesize.
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é.
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).
- a3894003ad1d293ba96d77881ccd2071446dc3f65f434669b49b3da92421901a
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)
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: 2d102efd-681a-5af1-b4fe-3489e5e7f8f2
Tags:FILE
Règles liées
- Suspect / chasseSignature Base (Florian Roth / Nextron)· Marius Benthin· 2026-01-29
- Suspect / chasseSignature Base (Florian Roth / Nextron)· Marius Benthin· 2026-01-29
- Suspect / chasseSignature Base (Florian Roth / Nextron)· Marius Benthin· 2026-03-31
- Suspect / chasseSignature Base (Florian Roth / Nextron)· Marius Benthin· 2026-06-15
- Suspect / chasseSignature Base (Florian Roth / Nextron)· Marius Benthin· 2026-06-15
- Suspect / chasseSignature Base (Florian Roth / Nextron)· Marius Benthin· 2025-11-24
- Suspect / chasseSignature Base (Florian Roth / Nextron)· Marius Benthin· 2026-01-29
- MalwareSignature Base (Florian Roth / Nextron)· Marius Benthin· 2026-01-29