Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
zombieguard — Détection basée sur le ML des attaques d'évasion d'en-tête d'archives ZIP Zombie (CVE-2026-0866) | Kitploit
Outils/GitHubGitHub/mdshoaibuddinchanda/zombieguard
Outils DéfensifsAnalyse StatiqueScanners de VulnérabilitésAnalyse des VulnérabilitésAnalyse de MalwareAnalyse de BinairesApprentissage Automatique
GitHubmdshoaibuddinchanda/zombieguard

zombieguard

Détection basée sur le ML des attaques d'évasion d'en-tête d'archives ZIP Zombie (CVE-2026-0866)

Voir le dépôt
319il y a 9 joursPas encore vérifié

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

ZombieGuard

Un scanner défensif pour le contournement des métadonnées structurelles dans les archives ZIP.

CI Python 3.11–3.12 License: Apache-2.0 Scope: ZIP

ZombieGuard détecte les contradictions entre les en-têtes de fichiers locaux ZIP, les enregistrements du répertoire central et les caractéristiques des charges utiles. Ces contradictions peuvent être utilisées pour faire apparaître le contenu d'une archive comme vide ou inoffensif pour un analyseur tandis qu'un autre analyseur atteint toujours la charge utile.

Il combine un analyseur ZIP borné avec un petit modèle LightGBM. Il n'extrait ni n'exécute le contenu des archives.

[!IMPORTANT] ZombieGuard détecte des signaux de contournement d'archive, pas des logiciels malveillants. Un résultat propre ne prouve pas que les fichiers contenus dans une archive sont sûrs.

Démarrage rapide en 60 secondes

ZombieGuard prend en charge Python 3.11 et 3.12.

git clone https://github.com/mdshoaibuddinchanda/zombieguard.git
cd zombieguard
python -m pip install .
zombieguard scan suspicious.zip --include-features

Le modèle de version est installé avec le paquet. Utilisez zombieguard scan --help pour la limite de taille d'entrée, la sortie JSON/SARIF et les options d'analyse de répertoire.

Pour le développement, installez le dépôt en mode éditable :

python -m pip install -e ".[dev]"
python -m pytest

Ce qu'il vérifie

ZombieGuard traite chaque ZIP comme un problème de cohérence plutôt que de rechercher des signatures de logiciels malveillants :

  • accord entre l'en-tête de fichier local et le répertoire central ;
  • cohérence de la méthode de compression, de la taille, du décalage et du CRC ;
  • compression déclarée par rapport à l'entropie de la charge utile ;
  • structures malformées, tronquées, chiffrées et non prises en charge ;
  • comportement suspect sur l'ensemble des entrées et non seulement sur la première entrée.

Le scanner rapporte un verdict accompagné de codes de raison justificatifs. Les échecs d'analyse sont signalés comme des conditions indéterminées ou suspectes ; ils ne sont jamais silencieusement convertis en résultat propre.

Architecture

Octets ZIP non fiables
       │
       ▼
Analyseur structurel borné ──► échecs explicites d'analyse/de limite
       │
       ▼
Caractéristiques de cohérence par entrée
       │
       ▼
Modèle LightGBM versionné
       │
       ▼
verdict + score + raisons

Les erreurs de validation structurelle produisent un résultat explicite non analysable. Les archives analysées avec succès sont notées par le modèle, et les incohérences observées sont renvoyées comme codes de raison. Les métadonnées du modèle enregistrent le schéma des caractéristiques, la configuration d'entraînement, les hachages des sources et la somme de contrôle du modèle.

Évaluation vérifiée

L'évaluation de la version est volontairement étroite et reproductible. Elle ne prétend pas à la détection de logiciels malveillants dans le monde réel ni à une généralisation multi-formats.

PropriétéProtocole de version
PortéeBenchmark de caractéristiques de contournement structurel ZIP à positifs synthétiques
Corpus éligible1 150 positifs générés et 1 568 lignes de caractéristiques bénignes dédupliquées et étiquetées
Ensemble de retenue positifExclusion d'une variante d'attaque complète par pli (8 variantes)
Ensemble de retenue béninPartition déterministe SHA-256 ; chaque échantillon est évalué une fois
Seuil de décisionCalibrage groupé imbriqué sur les lignes d'entraînement externes uniquement ; budget de 0,5 % de faux positifs bénins
Prédictions rapportéesPrédictions des plis externes uniquement ; les lignes retenues ne définissent jamais leur seuil
Exclus des affirmationsÉtiquettes positives dérivées de MalwareBazaar ou non vérifiées autrement
Intervalle de confianceIntervalles de Wilson à 95 % accompagnant les métriques agrégées

L'artefact actuel rapporte :

MétriqueRésultatIntervalle de Wilson à 95 %
Exactitude99,89 % (2 715 / 2 718)99,68–99,96 %
Précision99,74 %99,24–99,91 %
Rappel100 % (1 150 / 1 150)99,67–100 %
F199,87 %—
ROC-AUC99,90 %—
Taux de faux positifs0,191 % (3 / 1 568)0,065–0,561 %

La matrice de confusion est TN=1 565, FP=3, FN=0, TP=1 150. Les résultats faisant autorité se trouvent dans artifacts/metrics.json ; ce fichier contient également les résumés par pli et par variante, les hachages des sources de données, les assertions de fuite, la somme de contrôle du modèle et la configuration exacte. Si une métrique est utilisée dans un CV, un article ou une présentation, citez sa portée comme évaluation de caractéristiques synthétiques imbriquées avec exclusion d'une variante par pli.

Les lignes négatives comprennent 686 lignes de caractéristiques dérivées de PyPI, 478 négatives difficiles générées, 400 petites bénignes générées et 4 lignes de caractéristiques dérivées d'Office. Les familles de sources négatives sont réparties entre les plis plutôt que retenues en tant que familles. Les intervalles décrivent l'incertitude au niveau des lignes dans ce benchmark ; ils n'estiment ni l'incertitude de déploiement ni le décalage de domaine. La sortie LightGBM est rapportée comme un score non calibré, pas comme une probabilité. La politique de seuil est un point de fonctionnement de développement évalué avec des plis imbriqués ; de nouvelles archives bénignes analysées par la version actuelle restent nécessaires avant de considérer le taux de faux positifs mesuré comme une preuve en production.

Pourquoi utiliser des positifs synthétiques ? Les exemples publics et vérifiés de manière indépendante de cette technique étroite de contournement sont rares. La génération rend chaque mutation structurelle explicite et reproductible. La performance synthétique prouve que le détecteur reconnaît ces mutations ; elle ne remplace pas un benchmark du monde réel étiqueté de manière indépendante.

Consultez la fiche de données et la fiche de modèle pour la provenance, la sémantique des étiquettes et les modes de défaillance.

Reproduire la version

Installez les dépendances principales et vérifiez les artefacts validés. Les étapes supplémentaires de génération et d'actualisation reproduisent tous les positifs synthétiques sûrs et confirment que leurs caractéristiques validées correspondent toujours à l'analyseur actuel avant le réentraînement :

python -m pip install -e .
python -m zombieguard.evaluate --check
python data/scripts/generate_zombie_samples.py
python scripts/refresh_synthetic_features.py
python -m zombieguard.evaluate --train --check

L'entraînement lit les tables de caractéristiques et d'étiquettes validées et écrit :

  • src/zombieguard/assets/zombieguard_lgbm.txt — modèle LightGBM portable ;
  • src/zombieguard/assets/zombieguard_lgbm.metadata.json — schéma et métadonnées d'intégrité ;
  • artifacts/metrics.json — rapport d'évaluation lisible par machine.
Télécharger l’outil