Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
glassworm-hunter — Détecte les payloads d'attaque de la chaîne d'approvisionnement GlassWorm en analysant les extensions VS Code, les packages npm/PyPI et les dépôts git pour les payloads Unicode invisibles, les motifs de décodeur, les marqueurs C2 et les IOC malveillants connus. | Kitploit
Outils/GitHubGitHub/afine-com/glassworm-hunter
Gestion des Indicateurs de Compromission (IOC)Analyse StatiqueScanners de VulnérabilitésAnalyse de CodeAnalyse ForensiqueAnalyse de MalwareDevSecOpsDétection de SecretsRenseignement sur les Menaces

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Sécurité de la Chaîne Logistique
Apprentissage et Éducation
Réponse aux Incidents
GitHubafine-com/glassworm-hunter

glassworm-hunter

Détecte les payloads d'attaque de la chaîne d'approvisionnement GlassWorm en analysant les extensions VS Code, les packages npm/PyPI et les dépôts git pour les payloads Unicode invisibles, les motifs de décodeur, les marqueurs C2 et les IOC malveillants connus.

Voir le dépôt
314il y a 2 moisVérifié par Kitploit

glassworm-hunter

Glassworm Hunter Logo

Détecter les payloads d'attaques de la chaîne d'approvisionnement GlassWorm sur votre machine. Scanne les extensions VS Code, les paquets npm, les paquets Python et les dépôts git.

Ce scanner détecte la technique d'attaque elle-même — les payloads invisibles de sélecteurs de variante Unicode, les motifs de décodeur GlassWorm, les indicateurs C2 et le code de collecte d'identifiants.

Installer

root@kitploit:~
pip install glassworm-hunter

Ou avec pipx :

root@kitploit:~
pipx install glassworm-hunter

Démarrage rapide

Scannez votre répertoire actuel sans scanner les extensions VS Code/Cursor :

root@kitploit:~
glassworm-hunter scan --no-extensions

Scannez un projet spécifique :

root@kitploit:~
glassworm-hunter scan /chemin/vers/le/projet

Ce qu'il détecte

Détection de technique (capture les variantes inconnues)

  • Payloads Unicode invisibles — caractères de sélection de variante (U+FE00-FE0F, U+E0100-E01EF) utilisés pour encoder du code caché. Les utilisations légitimes sont de 1-2 caractères pour les emojis. GlassWorm en utilise des milliers.
  • Motifs de décodeur GlassWorm — l'arithmétique codePointAt + plage de sélection de variante qui décode les payloads invisibles
  • Caractères de remplacement bidirectionnels — attaque Trojan Source (CVE-2021-42574)
  • Remplisseur Hangul — identifiants JavaScript valides invisibles (U+3164)
  • eval/Function avec contenu dynamique — points d'exécution alimentés par des chaînes décodées
  • Accès aux identifiants — code lisant .npmrc, .gitcredentials, clés SSH, variables d'environnement de jetons
  • Motifs de communication C2 — appels RPC Solana, URLs Google Calendar, canaux de données WebRTC dans des contextes inattendus

Correspondance d'IoC connus (supplémentaire)

  • 21 ID d'extensions VS Code/OpenVSX malveillants connus (toutes les 5 vagues)
  • 4 paquets npm malveillants connus
  • 14 adresses IP C2 connues
  • 3 adresses de portefeuille Solana C2 connues
  • Email de l'attaquant et artefacts de chemin de construction

Niveaux de sévérité

NiveauSignification

Options CLI

root@kitploit:~
glassworm-hunter scan [OPTIONS] [CHEMINS...]

Une barre de progression Rich est affichée sur stderr pendant le scan. Elle est automatiquement supprimée avec --quiet ou --verbose. Une ligne de résumé (fichiers scannés, résultats, chemin de sortie) est toujours imprimée sur stderr après la fin du scan.

Autres commandes

root@kitploit:~
# Lister tous les IDs des règles de détection (pour utilisation avec --disable-rule)
glassworm-hunter rules

# Mettre à jour la base de données IoC locale depuis GitHub (source par défaut :
# https://raw.githubusercontent.com/afine-com/glassworm-hunter/main/data/ioc.json)
glassworm-hunter update

# Mettre à jour depuis une source personnalisée (ex. serveur interne de renseignement sur les menaces)
glassworm-hunter update --source https://interne.corp/ioc.json

# Forcer l'écrasement de la base de données IoC locale existante
glassworm-hunter update --force

# Afficher la version
glassworm-hunter version

Codes de sortie

CodeSignification
0Aucun résultat
1Résultats détectés
2Erreur du scanner

Si vous trouvez quelque chose

  1. Ne paniquez pas. Le scanner a trouvé un indicateur, pas une violation confirmée. Certaines détections peuvent être des faux positifs, et notre équipe travaille en continu pour les réduire et améliorer la précision de la détection.
  2. N'exécutez pas le code signalé. Ne lancez pas, ne construisez pas et ne testez pas le projet concerné tant que le problème n'est pas résolu.
  3. Résultats CRITICAL : Désinstallez immédiatement l'extension/le paquet. Révoquez vos jetons NPM, jetons GitHub, clés SSH et tout autre identifiant sur la machine.
  4. Résultats HIGH : Enquêtez sur le fichier signalé. S'il se trouve dans une dépendance que vous n'avez pas explicitement installée, supprimez-la.
  5. Résultats MEDIUM : Examinez le code. Ces motifs sont suspects mais peuvent être légitimes dans certains contextes.

Intégration CI/CD

Sortie JSON pour traitement automatisé :

root@kitploit:~
glassworm-hunter scan . --format json --output rapport.json --no-extensions

SARIF pour GitHub Code Scanning :

root@kitploit:~
glassworm-hunter scan . --format sarif --output resultats.sarif --no-extensions

Télécharger SARIF vers GitHub :

root@kitploit:~
- uses: github/codeql-action/upload-sarif@v3
  with:
    sarif_file: resultats.sarif

Utiliser les codes de sortie dans CI :

root@kitploit:~
glassworm-hunter scan . --severity critical --no-extensions || exit 1

Exclure les artefacts de construction et le code de fournisseur :

root@kitploit:~
glassworm-hunter scan . --exclude "dist/**" --exclude "*.min.js" --no-extensions

Aucun accès réseau

Ce scanner est entièrement hors ligne par défaut. Il lit uniquement les fichiers locaux. Pas de télémétrie, pas de rappel au domicile, pas de vérification automatique des mises à jour. Les bases de données IoC sont incluses dans le paquet.

La seule commande qui effectue une requête réseau est glassworm-hunter update, qui récupère la dernière base de données IoC depuis GitHub (ou une URL --source personnalisée). Elle n'est jamais appelée automatiquement.

Fichier de configuration

Placez un .glassworm.yml à la racine de votre projet pour définir les valeurs par défaut :

root@kitploit:~
exclude:
  - "*.min.js"
  - "vendor/**"
  - "dist/**"

disable_rules:
  - zero-width-chars

severity: medium

Les options CLI remplacent les valeurs du fichier de configuration.

Fichiers IoC personnalisés

Utilisez --ioc-file pour charger des indicateurs supplémentaires depuis un fichier JSON. Cela est utile pour le renseignement sur les menaces propre à une équipe ou interne :

root@kitploit:~
glassworm-hunter scan /chemin --ioc-file /chemin/vers/equipe_ioc.json

Le fichier doit suivre le même schéma que data/ioc.json :

root@kitploit:~
{
  "schema_version": "1.0",
  "extensions": [{"id": "editeur.nom"}],
  "npm_packages": [{"name": "pkg", "malicious_versions": "1.0.0"}],
  "c2_ips": [{"ip": "1.2.3.4"}],
  "c2_wallets": [{"address": "..."}],
  "attacker_artifacts": [{"type": "email", "value": "[email protected]"}]
}

Le fichier personnalisé est fusionné par-dessus toutes les autres couches IoC (codé en dur → fourni → utilisateur ~/.glassworm/ioc.json → --ioc-file).

Couches de base de données IoC

Le scanner utilise un système IoC à 3+1 couches (chaque couche fusionne par-dessus la précédente, jamais ne supprime) :

  1. Codé en dur — intégré dans le code source Python, toujours disponible
  2. Fourni — data/ioc.json livré avec le paquet
  3. Utilisateur — ~/.glassworm/ioc.json, mis à jour via glassworm-hunter update
  4. Personnalisé — option --ioc-file, priorité la plus élevée

Crédits

  • Koi Security — découverte originale de GlassWorm (octobre 2025) et suivi continu à travers plusieurs vagues, y compris la campagne OpenVSX/VSCode, le pivot binaire Rust et le pivot macOS. Les données IoC de ce scanner s'appuient sur leurs recherches publiées.
  • Aikido Security — analyse de la vague GlassWorm de mars 2026 ciblant les dépôts GitHub et les paquets npm, aux côtés de Socket, Step Security et la communauté OpenSourceMalware.
  • AFINE — ce scanner. Lisez la recherche complète : Hunting GlassWorm: Open-Source Detection for Invisible Supply Chain Payloads

Windows

Le scanner fonctionne sous Windows. 4 tests échouent sauf si vous exécutez une invite de commande élevée (Administrateur).

Licence

MIT

Télécharger l’outil
CRITICALPayload GlassWorm actif détecté (cluster Unicode invisible dans le code, motif de décodeur)
HIGHIoC malveillant connu correspondant (IP C2, portefeuille, dépendance d'extension sur un malware connu)
MEDIUMMotif suspect méritant une révision (eval + contenu dynamique, accès aux identifiants, Trojan Source)
LOWInformationnel (densité anormale de caractères de largeur nulle, scripts d'installation suspects)
OptionDéfautDescription
--extensions / --no-extensionsactivéScanne les extensions VS Code/Cursor/Codium
--npm-scan / --no-npm-scanactivéScanne node_modules
--pip-scan / --no-pip-scandésactivéScanne les site-packages Python
--git / --no-gitactivéScanne les dépôts git
--format [console|json|sarif]consoleFormat de sortie
--output FICHIERstdoutÉcrire le rapport dans un fichier
--severity [critical|high|medium|low]lowSévérité minimale à signaler
--max-file-size TAILLE10MBIgnorer les fichiers plus grands que cela
--include-hiddendésactivéScanne les fichiers/répertoires cachés
--quietdésactivéSupprimer la sortie de progression
--verbosedésactivéAfficher chaque fichier scanné
--exclude MOTIF—Exclure les motifs glob (répétable)
--disable-rule ID_RÈGLE—Supprimer des règles de détection spécifiques (répétable)
--ioc-file FICHIER—Charger des indicateurs IoC supplémentaires depuis un fichier JSON