
Analyse dynamique et statique avec analyse malware en temps réel et antivirus pour Windows, incluant XDR open source (3 projets EDR), ClamAV, YARA-X, intelligence artificielle par apprentissage automatique, analyse comportementale, unpacker, désobfuscateur, décompilateur, signatures de sites web, Ghidra, Suricata, Sigma, protection basée sur le noyau et l'hyperviseur, et bien plus que vous ne pouvez imaginer.
📚 Pour une documentation détaillée, des diagrammes d'architecture et des guides de composants, consultez notre Wiki du projet.
Ce projet n'est pas prêt pour la production. Des changements cassants, des bogues et des fonctionnalités incomplètes sont à prévoir.
⚠️ AVIS : Ce dépôt est destiné strictement aux ANALYSTES DE MALWARE EXPERTS et aux CHERCHEURS EN SÉCURITÉ. Il contient des composants système de bas niveau et des pilotes de sécurité expérimentaux qui nécessitent des connaissances professionnelles pour être manipulés en toute sécurité.
[!CAUTION]
🛑 RESPONSABILITÉ DE L'UTILISATEUR ET LIMITES DES PROTECTIONS
HydraDragon est conçu pour protéger contre les menaces automatisées malveillantes, pas contre les erreurs humaines ou les modifications intentionnelles du système.
- Suppression manuelle : L'antivirus NE VOUS EMPÊCHERA PAS d'exécuter des commandes comme
rd C: /s /qou de supprimer manuellement vos propres fichiers. Il reconnaît que si vous (l'administrateur) supprimez explicitement quelque chose, il s'agit d'une véritable erreur utilisateur plutôt que d'une intrusion de malware. Le système est conçu pour permettre les décisions administratives intentionnelles sans interférence.- Mauvaise configuration du pilote/système : Le logiciel ne protège pas contre l'installation manuelle de pilotes incompatibles ou de mauvais paramètres système. Un « Inaccessible Boot Device » ou d'autres défaillances système causées par des modifications manuelles du registre ou des expériences de pilotes ne sont PAS considérés comme un comportement malveillant et ne sont pas bloqués.
- Nature expérimentale : Vous êtes responsable de toute perte de données ou instabilité système causée par l'utilisation de ce logiciel expérimental. Testez toujours d'abord dans une machine virtuelle (VM).
Support de plateforme : Ce projet est strictement réservé à Windows x86-64. aarch64 et les autres architectures ne sont pas pris en charge.
Cet installateur est conçu pour être utilisé sur des PC Windows propres ou fraîchement formatés.
Pour de meilleurs résultats, installez HydraDragon Antivirus uniquement sur des systèmes où les composants tiers requis n'ont pas déjà été installés manuellement.
Veuillez ne pas exécuter cet installateur si l'un des programmes suivants est déjà installé sur votre PC :
L'installation d'HydraDragon Antivirus sur un système où ces composants sont déjà installés peut provoquer des conflits de versions, des problèmes de chemins, des conflits de services ou un comportement inattendu de l'installateur.
Utilisez cet installateur sur :
Si vous avez déjà installé l'un des composants requis, désinstallez-le d'abord ou utilisez un environnement Windows propre avant d'installer HydraDragon Antivirus.
HydraDragon est un projet antivirus local (à l'exception du cloud Xcitium) actuellement en développement actif et expérimental.
Ce projet ne vise pas à remplacer votre solution antivirus quotidienne principale.
Les échantillons de malwares très anciens peuvent ne pas être détectés.
Référence sur le retrait des signatures : https://blog.clamav.net/2025/12/clamav-signature-retirement.html
Filtres critiques pour le démarrage : MBRFilter est désormais configuré comme UpperFilter SERVICE_BOOT_START (0). Cela garantit que l'enregistrement de démarrage principal est protégé dès le premier instant où la pile de disque s'initialise, offrant une résistance au niveau matériel contre les bootkits et les rançongiciels de type Petya.
Les fichiers qui apparaissent comme des données indésirables ou totalement inconnues peuvent être intentionnellement ignorés.
Si un en-tête PE est supprimé, certains moteurs de détection peuvent ne plus signaler le fichier.
Les détections YARA peuvent toujours se déclencher selon la logique des règles (par exemple, les règles qui ne vérifient pas le type de fichier).
Exemple :
Échantillon avec en-tête PE supprimé : https://www.virustotal.com/gui/file/9b7e921e971fe7523ba83a4599b4006ad214854eb043372129e4f5a68c5a427f
Échantillon original : https://www.virustotal.com/gui/file/1ef6c1a4dfdc39b63bfe650ca81ab89510de6c0d3d7c608ac5be80033e559326
[!IMPORTANT] Problème de chemin long OpenEDR : OpenEDR contient des structures de répertoires profondément imbriquées qui dépassent la limite de 260 caractères par défaut de Windows. Avant de cloner ou de compiler, exécutez :
git config --global core.longpaths trueSans cela, le clonage ou la compilation du composant OpenEDR échouera avec des erreurs liées aux chemins.
cert.ps1 / sign.bat / build.rs de Sanctum est uniquement un processus d'artefact de test de développement et d'intégration continue. En production réelle, ne livrez pas sanctum.sys avec le sanctum.pfx auto-signé local, le mot de passe PFX d'exemple, les paramètres de démarrage en mode test-signing/debug, ou un hachage ELAM généré par CI. Les versions de pilotes en production doivent utiliser un pipeline de signature de version protégé et la signature via Microsoft Partner Center / Hardware Dev Center. Pour ELAM, utilisez le chemin de soumission du package HLK/WHCP plutôt que cette boucle auto-signée locale ; voir notes de signature Sanctum.HydraDragonController agit comme l'orchestrateur principal de toute la pile de sécurité. Il gère le cycle de vie du moteur AV C++, du cœur EDR Python et du Sanctum PPL Runner.C:\ProgramData\HydraDragonQuarantine
À ce stade :
L'application fonctionne uniquement en local (sauf le cloud Xcitium).
Les fonctionnalités peuvent être incomplètes ou instables.
Des changements cassants peuvent survenir sans préavis.
Ce projet n'est pas prêt pour la production et ne doit être utilisé qu'à des fins de développement et de test.
Analyse dynamique et statique avec analyse de malware en temps réel et antivirus pour Windows, notamment XDR open-source (3 projets EDR), ClamAV, YARA-X, IA d'apprentissage automatique, analyse comportementale, unpacker, désobfuscateur, décompilateur, signatures de sites web, Ghidra, Suricata, Sigma, protection basée sur le noyau et l'hyperviseur, et bien plus encore que vous pouvez imaginer.
Ce projet est sous licence GNU General Public License v2.0 (GPLv2).
Consultez le fichier LICENSE pour plus d'informations.
Base de données la plus récente :
Base de données PE bénins (202k+) : Lien de téléchargement
Base de données JS bénins (53k+)Lien de téléchargement
Base de données JS malwares (39k+) : Lien de téléchargement
La base de données PE malwares reste la même.
Ancienne base de données (avec faux négatifs et faux positifs) :
Base de données PE malwares (53k+) : Lien de téléchargement
Base de données PE bénins (204k+) : Lien de téléchargement
Base de données JS bénins (53k+) : Lien de téléchargement
Base de données JS malwares (39k+) : Lien de téléchargement
Remarque : La collection ne contient que des fichiers PE de moins de 10 Mo. En raison de ma clé USB cassée et irrécupérable, environ 6 000 échantillons bénins ont été perdus à jamais. Certains de ces échantillons n'étaient même pas disponibles sur VirusTotal.
Mot de passe : infected
Pour une suppression complète des pilotes noyau et des services système, veuillez suivre le Guide de désinstallation.
[!IMPORTANT] Un redémarrage en mode sans échec est nécessaire pour supprimer complètement les fichiers de pilotes protégés (
.sys) et les DLL associées.
WinDivert. Ces pilotes sont actuellement vulnérables. Si vous voyez ce pilote abusé, vous êtes probablement infecté.Dans un état post-infection, le malware dispose déjà de l'avantage du premier acteur (First Mover Advantage). Étant donné que ce projet utilise des pilotes non signés et des règles de protection noyau codées en dur (par exemple dans OwlyshieldRansomFilter et la politique d'autodéfense d'OpenEDR), un attaquant peut effectuer les actions suivantes :
C:\Program Files\HydraDragonAntivirus avant que vous n'exécutiez l'installateur. Il définit des ACL restrictives ou dépose des fichiers de configuration « empoisonnés ». Lorsque le pilote démarre, il charge aveuglément ces règles malveillantes depuis le chemin codé en dur.python312.dll ou un node.exe malveillant dans ces dossiers. L'antivirus exécutera alors, sans le savoir, du code malveillant avec des privilèges administratifs lors de son fonctionnement normal.HydraDragon utilise une architecture de règles zéro disque pour empêcher la falsification post-infection et les attaques basées sur les chemins (pour le noyau) :
C:\Program Files\HydraDragonAntivirus\hydradragon). Cela élimine l'accaparement de répertoire et les vulnérabilités TOCTOU (Time-of-Check to Time-of-Use) où un attaquant pourrait remplacer ou « empoisonner » les fichiers de règles avant l'initialisation du pilote.[!IMPORTANT] Pour une analyse de sécurité détaillée sur pourquoi éviter les chemins disque codés en dur est essentiel pour la sécurité des pilotes, consultez la section Mécanismes de protection du Wiki du projet.
Remarque 1 :.
Remarque 2 :
%ProgramFiles%\aHydraDragonAntivirus\hydradragon. En raison des risques, veuillez l'utiliser uniquement dans une VM.https://github.com/GDATAAdvancedAnalytics/de4dotEx/releases/tag/3.4.0
https://www.rathlev-home.de/index-e.html?tools/prog-e.html#unpack
https://github.com/glmcdona/Process-Dump/releases/tag/v2.1.1
https://github.com/radareorg/radare2/releases/tag/6.1.4 (radare2-6.1.4-w64.zip)
J'ai utilisé ces projets pour décompiler.
J'ai utilisé ces projets pour l'IA.
J'ai utilisé ces projets pour l'EDR (Remarque : les forks les plus récents sont ajoutés au dépôt principal au lieu d'un autre dépôt).
https://github.com/danisss9/Xvirus (malvendor.db)
J'ai utilisé ces projets pour l'antivirus
J'ai utilisé ces projets pour le hooking
J'ai utilisé ces projets pour le MITM
J'ai utilisé ces projets pour la détection par signatures
J'ai utilisé ce projet pour la protection du MBR.
https://github.com/clamwin/python-clamav (Converti en C++)
J'ai utilisé ces projets pour optimiser l'antivirus.
https://github.com/HyperDbg/RedDbg (Pourrait devoir être uni à SimpleSVM mais pour l'instant j'utilise celui-ci.)
J'ai utilisé ces projets pour l'hyperviseur
J'ai utilisé ces projets pour la liste blanche.
https://github.com/swelljoe/clam-juice/blob/main/clam_juice.py
J'ai utilisé ces projets pour rendre l'antivirus non encombré par les signatures.
https://github.com/HydraDragonAntivirus/HydraDragonAntivirus/releases/tag/HashDatabase
J'ai utilisé ces projets pour la détection basée sur les empreintes.
Note 4:.
Note 5:
Note 6:
Note 7:
Note 8:
Astuce 1:
%ProgramFiles%\HydraDragonAntivirus\hydradragon\antivirus_scripts\log\%ProgramFiles%\HydraDragonAntivirus\hydradragon\Sanctum\logs\sanctum.logSanctumPPLRunner). Consultez l'Observateur d'événements -> Journaux Windows -> Application.HydraDragonController).Pour les questions fréquemment posées, veuillez vous référer à FAQ.md.
Ce document décrit tous les répertoires de sortie utilisés par l'outil d'analyse des exécutables pour diverses opérations d'extraction, de décompilation et de dépaquetage.
Ce document décrit les répertoires de sortie utilisés par l'outil d'analyse HydraDragon et ce que contient chaque répertoire. Conservez ce README à côté de la sortie d'analyse afin que les analystes puissent rapidement trouver les artefacts décompilés/extraits.
1/, 2/, ...) pour éviter les écrasements lorsque le même packer/résultat est traité plusieurs fois.hydra_dragon_dumper_extracted/, upx_extracted/, themida_unpacked/, vmprotect_unpacked/, debloat/dotnet/, obfuscar/, de4dot_extracted/, net_reactor_extracted/, un_confuser_ex_extracted/, eazfixer/jadx_decompiled/, androguard/pyinstaller_extracted/, pyarmor8_and_9_extracted/, pyarmor7_extracted/, nuitka/, nuitka_extracted/, nuitka_source_code/, cx_freeze_extracted/, pylingual_extracted/, python_deobfuscated/, python_deobfuscated_marshal_pyc/, pycdas_extracted/, python_source_code/webcrack_javascript_deobfuscated/, asar/, npm_pkg_extracted/, decompiled_jsc/jar_extracted/, FernFlower_decompiled/inno_setup_unpacked/, advanced_installer_extracted/, installshield_extracted/, zip_extracted/, seven_zip_extracted/, tar_extracted/, general_extracted_with_7z/, pe_extracted/autohotkey_decompiled/, autoit_extracted/ungarbler/, ungarbler_string/decompiled/, ole2/, memory/, resource_extractor/, html_extracted/(Chaque ligne montre le nom du répertoire et l'objectif des fichiers qui s'y trouvent.)
hydra_dragon_dumper_extracted/ — Sortie extraite de Hydra Dragon Dumper (un fork de Mega Dumper).enigma1_extracted/ — Fichiers extraits d'Enigma Virtual Box.decompiled/ — Fichiers décompilés généraux provenant de divers outils.upx_extracted/ — Fichiers extraits par UPX (Ultimate Packer for eXecutables).webcrack_javascript_deobfuscated/ — Fichiers JavaScript désobfusqués avec webcrack.inno_setup_unpacked/ — Fichiers d'installateur Inno Setup dépaquetés.autohotkey_decompiled/ — Sorties décompilées de scripts AutoHotkey.themida_unpacked/ — Sorties dépaquetées de Themida.nuitka/ — Répertoire extrait de Nuitka onefile.ole2/ — Ressources OLE2 extraites et structures de fichiers composés.dotnet/ — Sources .NET décompilés.jadx_decompiled/ — APK décompilé avec JADX (sources Java).androguard/ — Sortie APK décompilée par androguard (smali/java).asar/ — Contenu extrait de l'archive ASAR (Electron).npm_pkg_extracted/ — Extraction de paquets NPM (bundles JavaScript).decompiled_jsc/ — Objets bytecode V8 / JSC et artefacts décompilés.obfuscar/ — Assemblies .NET obfusqués avec Obfuscar.de4dot_extracted/ — Fichiers .NET désobfusqués à l'aide de de4dot.net_reactor_extracted/ — Sorties de .NET Reactor Slayer.un_confuser_ex_extracted/ — Sorties de désobfuscation UnConfuserEx.eazfixer/ — Sorties de désobfuscation EazFixer pour les assemblies .NET protégées par Eazfuscator.pyinstaller_extracted/ — Résultats d'extraction PyInstaller onefile.pyarmor8_and_9_extracted/ — Sorties dépaquetées de PyArmor 8/9.pyarmor7_extracted/ — Sorties de dépaquetage spécifiques à PyArmor 7.cx_freeze_extracted/ — Contenu extrait de library.zip de cx_Freeze.pe_extracted/ — Internes des fichiers PE et sections/ressources extraites.zip_extracted/ — Contenu d'archives ZIP.seven_zip_extracted/ — Contenu d'archives 7-Zip.general_extracted_with_7z/ — Zone d'extraction générale pour les opérations 7-Zip.nuitka_extracted/ — Sorties binaires Nuitka et fichiers de support.advanced_installer_extracted/ — Sorties d'extraction d'Advanced Installer.tar_extracted/ — Contenu d'archives TAR.memory/ — Fichiers de dump mémoire d'analyse dynamique (.dmp / dumps mémoire bruts).resource_extractor/ — Ressources RCData et ressources intégrées extraites par l'extracteur de ressources.ungarbler/ — Binaires Go (garble) désobfusqués et sortie.ungarbler_string/ — Chaînes désobfusquées à partir des sorties Go Garble.debloat/ — Répertoire des fichiers dégraissés (installateurs/binaires allégés).jar_extracted/ — Contenu extrait des fichiers JAR.FernFlower_decompiled/ — JARs décompilés avec FernFlower.pylingual_extracted/ — Sources Python inversées par pylingual (.pyc -> .py).vmprotect_unpacked/ — Répertoires dépaquetés de VMProtect.python_deobfuscated/ — Sources Python désobfusquées.python_deobfuscated_marshal_pyc/ — .pyc désobfusqués à partir de blobs marshal.pycdas_extracted/ — Sources Python extraites par pycdas / Decompyle++. ( 21-Oct-2025)python_source_code/ — Sources de projets Python extraites et organisées.nuitka_source_code/ — Arborescence source de Nuitka rétro-ingénié.html_extracted/ — Ressources HTML et pages web capturées lors de l'analyse.installshield_extracted/ — Sorties dépaquetées d'InstallShield.autoit_extracted/ — Résultats d'extraction de scripts AutoIt.Unknown.0,Unknown), exécutez le script fourni reference_fix_and_rebuild.py pour normaliser et reconstruire les références.Pour modifier ce README ou ajouter de nouveaux répertoires d'extraction, mettez à jour ce fichier et envoyez-le dans votre dépôt afin que tout le monde puisse voir la correspondance.