
HydraDragonAntivirus openedr-demo
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.
Hydra Dragon Antivirus
📚 Pour une documentation détaillée, des diagrammes d'architecture et des guides de composants, consultez notre Wiki du projet.
AVERTISSEMENT : DÉVELOPPEMENT ACTIF EN COURS
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).
Projet d'une seule personne
- HydraDragon est un projet antivirus/EDR open-source indépendant de trois ans, développé principalement par un seul développeur.
TODO
- Ajouter HydraDragonIDE au projet (analyseur statique).
- Supprimer Npcap car ce n'est pas vraiment open source et le remplacer par une build Suricata personnalisée.
À propos des fonctionnalités du projet
- J'ai dit ceci il y a environ un mois : NOTE : Ce projet est devenu bien plus complexe que vous ne le pensez, alors je suis passé sur Android pour rejoindre AV-Test afin de devenir le premier antivirus open source à participer à des tests professionnels : https://github.com/HydraDragonAntivirus/HydraDragonAV-Mobile
- Puis cette MISE À JOUR : Je prévoyais d'utiliser uniquement les meilleures signatures et de retirer une grande partie de l'antivirus basé sur l'analyse dynamique pour ne conserver qu'Owlyshield + OpenEDR + Firewall, car dans le monde réel, nous devons nous concentrer sur la protection en temps réel sans signatures lourdes.
- Cela va donc être une tâche très complexe, encore une fois. Bonne chance à moi.
Compatibilité avec les PC
-
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.
Avis important
Veuillez ne pas exécuter cet installateur si l'un des programmes suivants est déjà installé sur votre PC :
- Python 3.12
- Node.js
- Npcap
- ClamAV
- Suricata
- OpenEDR ou composants EDR associés
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.
Utilisation recommandée
Utilisez cet installateur sur :
- Nouvelles installations Windows
- Machines de test propres
- Machines virtuelles
- PC sans dépendances existantes à des moteurs antivirus
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.
Remarques importantes et limites
Portée du projet
HydraDragon est un projet antivirus local (à l'exception du cloud Xcitium) actuellement en développement actif et expérimental.
- Il fonctionne localement sur le système.
- Il est destiné à la recherche, à l'apprentissage et à l'expérimentation en analyse de malwares.
Ce projet ne vise pas à remplacer votre solution antivirus quotidienne principale.
Philosophie de détection
- Des faux positifs peuvent survenir.
- Le système suppose que la machine est dans un état propre (et non post-infection).
- Le projet privilégie une analyse plus approfondie à la rapidité.
- L'objectif est une amélioration de la détection à long terme plutôt qu'une détection rapide mais superficielle.
- Cela ne signifie PAS que le projet atteint un taux de détection de 99 % — cela reflète uniquement la philosophie de développement.
- Cet antivirus n'utilise pas seulement ses meilleures signatures, mais presque toutes les nouvelles signatures. C'est pour cela qu'il est lourd.
Statut expérimental
- C'est un projet hautement expérimental.
- Certaines décisions architecturales des versions précédentes n'étaient pas optimales et ont affecté la stabilité.
- Le projet est activement amélioré et affiné.
- À utiliser avec prudence.
Limitations connues
- Les fichiers de plus de 2 Go sont ignorés par le scanner et ne sont pas analysés. Ne considérez pas un fichier ignoré comme propre.
- Le proxy/inspecteur TLS transparent peut installer un certificat HydraDragon Firewall CA local lorsque le consentement à l'installation du certificat est activé. L'interface graphique du pare-feu peut l'ajouter/supprimer manuellement, et le désinstalleur le supprime au mieux.
Politique de détection des échantillons
-
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 :
MBRFilterest 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
Remarques sur l'installation et l'utilisation
[!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.
- Le processus d'installation n'est pas entièrement automatisé. Npcap, les pilotes, les composants du pare-feu et certaines autres dépendances peuvent nécessiter une approbation manuelle pendant l'installation.
- Vous devez désinstaller le pilote ELAM manuellement si le désinstalleur automatisé a rencontré des problèmes. Consultez le Guide de désinstallation pour les étapes de nettoyage du registre.
- Les erreurs temporaires de mise à jour de ClamAV pendant l'installation peuvent être ignorées sans risque.
- Si l'installation du pilote échoue, désactivez le Secure Boot et réessayez.
- Il est recommandé d'attendre que l'interface antivirus se charge complètement, même si certaines protections semblent actives
- Étant donné que l'ELAM ne peut pas se lancer automatiquement en mode test-signing, nous utilisons un démarrage différé pour l'antivirus afin d'empêcher que le pilote soit exécuté via un abus. (Remarque : Tous les pilotes doivent être signés. Bien que la signature de test WDK soit acceptable pour le développement général, elle ne suffit pas pour les pilotes ELAM).
- La boucle de hachage
cert.ps1/sign.bat/build.rsde Sanctum est uniquement un processus d'artefact de test de développement et d'intégration continue. En production réelle, ne livrez passanctum.sysavec lesanctum.pfxauto-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. - Pour garantir le bon fonctionnement de l'antivirus, l'Intégrité de la mémoire doit être désactivée. Référence : https://github.com/adrianyy/kernelhook/issues/1
Protection des processus et orchestration
- Orchestration unifiée :
HydraDragonControlleragit 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. - Lanceur protégé : Le lanceur de l'antivirus lui-même est protégé. Bien qu'un administrateur puisse le terminer manuellement, les malwares ne peuvent pas le terminer, car le pilote vérifie l'origine de toutes les demandes de terminaison.
- Contrôle manuel : Si vous fermez l'interface graphique manuellement, les moteurs de sécurité en arrière-plan restent actifs.
Répertoire de quarantaine
C:\ProgramData\HydraDragonQuarantine
Limitation de la récupération après rançongiciel
- La réponse actuelle aux rançongiciels se concentre sur la détection, le blocage, la terminaison des processus, la quarantaine et la télémétrie.
- Il n'existe actuellement aucune restauration automatique des fichiers après qu'un rançongiciel a modifié ou chiffré des fichiers.
- Une restauration de fichiers basée sur les clichés instantanés (Shadow Copy) existe, mais ne leur faites pas confiance.
- Une restauration du registre existe déjà pour les modifications de persistance ou de configuration liées aux rançongiciels prises en charge ; cela est distinct de la restauration du contenu des fichiers.
- Conservez des sauvegardes indépendantes et des points de restauration ; la détection ne remplace pas la récupération.
Remarque sur les alertes du pare-feu / HIPS
- Ne mettez pas en quarantaine chaque alerte issue des notifications de « nouvelle connexion » du pare-feu.
- Une alerte de nouvelle connexion n'est pas la même chose qu'un verdict automatisé complet de malware.
- La télémétrie du pare-feu et du HIPS est encore partiellement séparée, de sorte que certaines alertes sont informatives, contextuelles ou nécessitent un examen manuel avant la mise en quarantaine.
- Examinez d'abord le chemin du processus, le processus parent, la destination et les autres données de télémétrie au lieu de supposer que chaque alerte réseau est malveillante.
Description
À 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.
Licence
Ce projet est sous licence GNU General Public License v2.0 (GPLv2).
Consultez le fichier LICENSE pour plus d'informations.
Télécharger la base de données de malwares et de fichiers bénins pour l'apprentissage automatique
-
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
Guide d'entraînement de l'apprentissage automatique
- Installez la base de données des malwares (datamaliciousorder) et des bénins (data2), puis installez requirements.txt depuis train.py et exécutez simplement train.py avec le même dossier que datamaliciousorder et data2.
- Supprimez ensuite results.pkl et renommez ml_definitions.pkl en results.pkl pour consolider les données sérialisées (pickle).
Guide de compilation à partir des sources
- La documentation de compilation est en cours de découpage en pages par composant.
- D'autres pages spécifiques aux composants seront ajoutées au fil du temps.
Code source de Ghidra
- J'utilise désormais la version 12.0.4 : https://ghidra-sre.org/
Kit de développement Java
- Allez simplement voir https://www.oracle.com/java/technologies/downloads/#jdk25-windows
Installation
- Le fichier d'installation se trouve dans la version HydraDragonAntivirus.exe
Désinstallation
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.
Ghidra
- Ghidra : %ProgramFiles%\aHydraDragonAntivirus\hydradragon\ghidra
- Scripts Ghidra : %ProgramFiles%\aHydraDragonAntivirus\hydradragon\scripts
Sigma-HQ - Hayabusa
- https://github.com/Yamato-Security/hayabusa/releases/tag/v3.9.0 (hayabusa-3.9.0-win-x64.zip)
IMPORTANT
- Pilotes vulnérables et risque post-infection : Ce projet utilise des pilotes comme
WinDivert. Ces pilotes sont actuellement vulnérables. Si vous voyez ce pilote abusé, vous êtes probablement infecté. - Scénario post-infection : Par défaut, ce projet suppose que votre système est propre au moment de l'installation. Il n'est PAS conçu pour nettoyer ou réparer un système déjà infecté.
- Zéro responsabilité : Si vous installez ce logiciel sur un système déjà compromis, un malware résident peut exploiter ces pilotes ou la structure centralisée des dépendances (Python/Node.js) pour élever ses privilèges ou persister. Le développeur n'est pas responsable des dommages dans un scénario post-infection.
- N'exécutez pas en mode sans échec : HydraDragonAntivirus n'est pas compatible avec le mode sans échec et son exécution y est fortement déconseillée. Pour empêcher les malwares d'abuser du mode sans échec, HydraDragonAntivirus inclut une règle de protection du mode sans échec qui détecte les tentatives d'activation des options de démarrage en mode sans échec, de modification des paramètres de registre associés ou toute autre action forçant le système à démarrer en mode sans échec.
- Blocage du protocole QUIC : Le pare-feu HydraDragon bloque le trafic QUIC (port UDP 443) par défaut pour empêcher les malwares de contourner l'inspection TLS traditionnelle. Cela force les applications à utiliser HTTPS/TLS standard, permettant une véritable inspection approfondie des paquets. Certaines applications modernes (Chrome, Firefox, etc.) peuvent connaître des délais de connexion initiaux lors du repli de QUIC vers HTTPS.
Comment une attaque est possible (modèle de menace)
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 :
- Accaparement de répertoire (Directory Squatting) : Le malware pré-crée
C:\Program Files\HydraDragonAntivirusavant 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. - Détournement de dépendances : Étant donné que Python et Node.js sont installés dans le sous-répertoire de l'antivirus, un malware peut déposer une
python312.dllou unnode.exemalveillant dans ces dossiers. L'antivirus exécutera alors, sans le savoir, du code malveillant avec des privilèges administratifs lors de son fonctionnement normal. - Abus de pilotes vulnérables (BYOVD) : Les attaquants peuvent « apporter leur propre pilote vulnérable » (ou abuser de ceux inclus ici) pour contourner les protections du noyau Windows. Sans ELAM et signatures numériques, l'antivirus ne peut pas vérifier sa propre identité ni l'intégrité de son environnement pendant le processus de démarrage.
Livraison durcie des règles et architecture de sécurité
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) :
- Dépendance zéro disque : Les pilotes noyau ne lisent plus les règles de configuration ou d'exclusion depuis des chemins disque codés en dur (par exemple
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. - Résilience au démarrage précoce : En déplaçant les règles du disque vers la mémoire, nous atténuons les attaques où un malware lancé tôt tente de supprimer ou de remplacer les fichiers de règles avant le démarrage du service AV. Cependant, dans un scénario « post-infection » où le malware a déjà obtenu une persistance, il peut tenter de supprimer les binaires AV eux-mêmes. Pour se défendre contre cela, HydraDragon s'appuie sur ELAM (Early Launch Anti-Malware) et PPL (Protected Process Lite) pour garantir que le cœur de l'antivirus s'initialise et se protège avant que du code malveillant tiers puisse s'exécuter.
[!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.
- Pour éviter une perte de vitesse de connexion, assurez-vous que « late_blocking_mode » est défini sur true dans C:\Program Files\HydraDragonAntivirus\hydradragon\HydraDragonFirewall\settings.json. Cela peut entraîner une détection légèrement plus tardive des malwares.
- Pour le débogage, pensez à définir HKEY_LOCAL_MACHINE\SOFTWARE\Owlyshield\VERBOSE_LOGGING sur 1.
- Acceptez la boîte de dialogue de confiance du certificat que Windows affiche pendant que le pare-feu est en cours d'exécution.
- Tous les journaux seront supprimés lorsque vous redémarrerez le programme. Soyez donc prudent !
- Vous devez redémarrer le programme après l'analyse.
- Veuillez ne pas partager votre IP dans les journaux.
- Assurez-vous que la base de données ClamAV est installée sans problème.
- Nous recommandons fortement de prendre un instantané puis de revenir en arrière une fois votre travail terminé.
- Rendez votre nom d'utilisateur aléatoire (par exemple, et pour éviter l'anti-analyse).
- L'installateur inclut également daily.cvd, main.cvd, bytecode.cvd en raison de problèmes de téléchargement de la base de données ClamAV.
- Vous ne pouvez pas installer les signatures ClamAV depuis une IP russe https://github.com/Cisco-Talos/clamav/issues/500
Serveur communautaire Discord
- Voici le lien du serveur : https://discord.gg/7XMCuj5mbP
Préparer l'environnement
- Créez trop de fichiers pour détecter les rançongiciels.
Guide
Remarque 1 :.
- Autorisez Java dans le pare-feu Windows, car il décompilera le fichier PE.
Remarque 2 :
- Si vous rencontrez un problème, veuillez créer un ticket (issue). Le logiciel antivirus peut être déclenché par les signatures de sites web car elles ne sont pas obfusquées, alors excluez le dossier
%ProgramFiles%\aHydraDragonAntivirus\hydradragon. En raison des risques, veuillez l'utiliser uniquement dans une VM.
Remarque 3 :- https://github.com/icsharpcode/ILSpy/tree/master/ICSharpCode.ILSpyCmd
-
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:.
- Vous aurez besoin d'une connexion Internet pour installer. Ce n'est pas un installateur hors ligne.
- Remarque sur l'installateur : lorsque l'installation désactive Hyper-V/VBS ou demande un redémarrage, cela concerne uniquement le pilote Windows de ce dépôt et les tests de compatibilité.
- Ce n'est pas la même chose que le matériel d'hyperviseur séparé mentionné dans le wiki ou dans d'autres dossiers.
Note 5:
- N'oubliez pas de faire un nettoyage, car cela prend trop de place lors du traitement des fichiers contre les ransomwares, etc.
- Il vous faut beaucoup de stockage, car tout est journalisé.
Note 6:
- J'ai collecté toutes les IP et domaines malveillants d'Internet. Il doit donc y avoir beaucoup de faux positifs, mais je les gère.
Note 7:
- Inno Setup version 6.7.3
Note 8:
- Le scanner Sanctum n'est pas une analyse complète du moteur antivirus. Il ne vérifie que certains composants statiques.
Astuces
Astuce 1:
- N'utilisez pas de noms de VM suspects sur votre machine. (John Doe, etc.)
Astuce 2:
- Utilisez VSCode, VSCodium ou un autre éditeur pour voir les modifications en direct des fichiers .log.
Astuce 3:
- Où trouver les journaux :
- Moteurs principaux (AV/Python): Regardez dans
%ProgramFiles%\HydraDragonAntivirus\hydradragon\antivirus_scripts\log\ - Moteur Sanctum: Regardez dans
%ProgramFiles%\HydraDragonAntivirus\hydradragon\Sanctum\logs\sanctum.log - Sanctum PPL Runner: Ce composant journalise dans le Journal d'événements Windows (Source :
SanctumPPLRunner). Consultez l'Observateur d'événements -> Journaux Windows -> Application. - Contrôleur principal: Journalise dans le Journal d'événements Windows (Source :
HydraDragonController).
- Moteurs principaux (AV/Python): Regardez dans
Astuce 4:
- Fermez le Pare-feu Windows sur la VM pour éviter tout blocage du pare-feu. Nous testons ce programme, pas le Pare-feu Windows.
FAQ
Pour les questions fréquemment posées, veuillez vous référer à FAQ.md.
Crédits :
- Tout le crédit revient à Emirhan Uçan (oui, c'est un projet d'une seule personne jusqu'à l'arrivée de Yusif https://github.com/Siradankullanici)
- Merci à Yusif Musayev pour son aide à faire en sorte que le projet ne reste pas un projet d'une seule personne (https://github.com/elnureisayeva1-cloud).
- Merci à Hacı Murad pour avoir collecté et compilé certaines signatures de machine learning (https://github.com/hacimurad41).
- Merci à Yusuf d'avoir testé l'hyperviseur sur Intel (https://github.com/caymazyusuf72).
- Merci à Emrah pour le dossier .agent (https://github.com/emrahd0732).
Répertoires d'extraction et de décompilation
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.
Sortie d'extraction et de décompilation HydraDragon — README
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.
Comment la sortie est organisée
- Chaque extracteur/décompilateur écrit dans un répertoire dédié sous la racine d'analyse.
- Les outils créent des sous-dossiers numérotés (
1/,2/, ...) pour éviter les écrasements lorsque le même packer/résultat est traité plusieurs fois. - Les noms de fichiers et les sous-dossiers sont conservés autant que possible pour faciliter le retour à l'artefact d'origine.
- Les répertoires sont créés automatiquement par les modules d'extraction/décompilation.
Catégories de répertoires de premier niveau (référence rapide)
- Extraction packer/obfuscateur:
hydra_dragon_dumper_extracted/,upx_extracted/,themida_unpacked/,vmprotect_unpacked/,debloat/ - Analyse .NET:
dotnet/,obfuscar/,de4dot_extracted/,net_reactor_extracted/,un_confuser_ex_extracted/,eazfixer/ - Android/APK:
jadx_decompiled/,androguard/ - Python:
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/ - JavaScript / Node / Electron:
webcrack_javascript_deobfuscated/,asar/,npm_pkg_extracted/,decompiled_jsc/ - Java:
jar_extracted/,FernFlower_decompiled/ - Installer / archive:
inno_setup_unpacked/,advanced_installer_extracted/,installshield_extracted/,zip_extracted/,seven_zip_extracted/,tar_extracted/,general_extracted_with_7z/,pe_extracted/ - Décompilateurs de scripts:
autohotkey_decompiled/,autoit_extracted/ - Sorties Go / Ungarbler:
ungarbler/,ungarbler_string/ - Divers / artefacts d'analyse:
decompiled/,ole2/,memory/,resource_extractor/,html_extracted/
Descriptions détaillées des répertoires
(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 delibrary.zipde 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.
Utilisation et bonnes pratiques
- Inspectez chaque répertoire d'extraction après l'exécution pour localiser les blobs de configuration, les ressources intégrées, les chaînes et les binaires suspects.
- Si vous devez régénérer les sorties extraites, exécutez à nouveau l'extracteur concerné ; les sous-dossiers numérotés évitent les écrasements accidentels.
Dépannage
- Si un répertoire est vide, consultez le journal d'extraction correspondant pour détecter les erreurs. Les outils peuvent échouer silencieusement si les binaires sont corrompus.
- Si les références semblent malformées (par exemple
Unknown.0,Unknown), exécutez le script fournireference_fix_and_rebuild.pypour normaliser et reconstruire les références. - Si le chargeur est lent, activez la mise en cache des shards ou les requêtes par lots (voir la documentation du chargeur) plutôt que de recharger chaque shard pour chaque recherche.
Contact
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.
Donate:
- Pour faire un don au créateur de HydraDragonAV-Mobile, allez ici : https://boosty.to/yusif_musayev/single-payment/donation/817954/target?share=target_link (Yusif Musayev, créateur de HydraDragonAV-Mobile)