
FakeNet-NG - Outil d'analyse dynamique de réseau de nouvelle génération
| ____/\ | |/ / ____| \ | | ____|__ __| | \ | |/ ____|
| |__ / \ | ' /| |__ | \| | |__ | |______| \| | | __
| __/ /\ \ | < | __| | . ` | __| | |______| . ` | | |_ |
| | / ____ \| . \| |____| |\ | |____ | | | |\ | |__| |
|_|/_/ \_\_|\_\______|_| \_|______| |_| |_| \_|\_____|
D O C U M E N T A T I O N
FakeNet-NG 3.5 est un outil d'analyse réseau dynamique de nouvelle génération pour les analystes de logiciels malveillants et les testeurs d'intrusion. Il est open source et conçu pour les dernières versions de Windows (et Linux, pour certains modes de fonctionnement). FakeNet-NG est basé sur l'excellent outil Fakenet développé par Andrew Honig et Michael Sikorski.
L'outil vous permet d'intercepter et de rediriger tout ou partie du trafic réseau tout en simulant des services réseau légitimes. En utilisant FakeNet-NG, les analystes de logiciels malveillants peuvent rapidement identifier la fonctionnalité des malwares et capturer des signatures réseau. Les testeurs d'intrusion et les chasseurs de bugs trouveront le moteur d'interception configurable et le cadre modulaire de FakeNet-NG très utiles lors des tests de fonctionnalités spécifiques d'applications et du prototypage de PoCs.
Vous pouvez installer FakeNet-NG de plusieurs façons. Notez que les processus d'installation suivants récupèreront des bibliothèques open-source tierces utilisées par FakeNet-NG sur votre système. Ces bibliothèques seront chargées dynamiquement au moment de l'exécution, et certaines de ces bibliothèques peuvent être sous licence LGPL.
Il est plus simple de télécharger la version compilée qui peut être obtenue depuis la page des versions :
https://github.com/mandiant/flare-fakenet-ng/releases
Exécutez FakeNet-NG en lançant 'fakenet.exe'.
C'est la méthode préférée pour utiliser FakeNet-NG sur Windows car elle ne nécessite pas l'installation de modules supplémentaires, ce qui est idéal pour une machine d'analyse de logiciels malveillants.
REMARQUE : FakeNet-NG peut être signalé comme malveillant par les solutions Antivirus (AV) et de Détection et Réponse des Points d'Accès (EDR) (par exemple, Windows Defender, Navigation sécurisée de Chrome). Cela est probablement dû à sa capacité à modifier le trafic réseau et à simuler des services réseau, en plus de l'utilisation de PyInstaller pour construire les exécutables de version. Les binaires de version officiels sont sûrs et ces détections doivent être considérées comme des faux positifs. Pour rappel, FakeNet-NG est conçu et fortement recommandé pour une utilisation dans un environnement contrôlé et isolé, tel qu'une Machine Virtuelle (VM), où il peut modifier en toute sécurité les paramètres réseau du système.
Installez Python 3.10.11 et la dernière version de pip pour Windows/Linux.
Sur Windows, téléchargez et installez Visual C++ build tools.
L'installation sur Linux nécessite les dépendances suivantes :
Installez ces dépendances en utilisant la commande suivante :
sudo apt-get install build-essential python3.10-dev libnetfilter-queue-dev
Installez FakeNet-NG en tant que module Python en utilisant pip :
python -m pip install https://github.com/mandiant/flare-fakenet-ng/zipball/master
Ou en obtenant le dernier code source et en l'installant manuellement :
git clone https://github.com/mandiant/flare-fakenet-ng/
Installez les dépendances Python en exécutant les commandes suivantes avec des privilèges d'administrateur :
Sous Linux (testé sur Ubuntu 24.04.2 LTS), exécutez les commandes suivantes avant d'exécuter setup.py :
python -m pip install --upgrade setuptools
# build wheel for python 3.10
python -m pip install --force-reinstall netifaces
# Observed "ModuleNotFoundError: No module named '_cffi_backend'" error while testing
# This will get the required version of cffi packages for cryptography
python -m pip install --upgrade cryptography
Si vous installez manuellement, changez de répertoire vers le dossier flare-fakenet-ng téléchargé et exécutez la commande suivante avec des privilèges d'administrateur :
python setup.py install
Sous Linux, libérez le port 53 pour l'écoute DNS :
sudo systemctl stop systemd-resolved
Exécutez FakeNet-NG en lançant 'fakenet' depuis n'importe quel répertoire dans un shell avec privilèges.
Enfin, si vous souhaitez éviter d'installer FakeNet-NG et simplement l'exécuter tel quel (par exemple pour le développement), vous devez obtenir le code source et installer les dépendances comme suit :
Installez Python 3.10.11 64 bits ou 32 bits pour les versions 64 bits ou 32 bits de Windows/Linux respectivement.
Sous Windows, installez les dépendances Python en exécutant les commandes suivantes avec des privilèges d'administrateur :
python -m pip install pydivert dnslib dpkt pyopenssl pyftpdlib netifaces jinja2
REMARQUE : pydivert téléchargera et installera également la bibliothèque et le pilote WinDivert
dans le répertoire %PYTHONHOME%\DLLs. FakeNet-NG intègre ces fichiers, ils ne sont donc pas nécessaires pour une utilisation normale.
Sous Linux, installez les dépendances Python en exécutant les commandes suivantes avec des privilèges d'administrateur :
python -m pip install --upgrade setuptools
# build wheel for python 3.10
python -m pip install --force-reinstall netifaces
# Observed "ModuleNotFoundError: No module named '_cffi_backend'" error while testing
# This will get the required version of cffi packages for cryptography
python -m pip install --upgrade cryptography
python -m pip install netfilterqueue dnslib dpkt pyopenssl pyftpdlib netifaces jinja2
Vous pouvez éventuellement installer le module suivant utilisé pour les tests :
python -m pip install requests
Téléchargez le code source de FakeNet-NG :
git clone https://github.com/mandiant/flare-fakenet-ng
Sous Linux, libérez le port 53 pour l'écoute DNS :
sudo systemctl stop systemd-resolved
Exécutez FakeNet-NG en le lançant avec un interpréteur Python dans un shell avec privilèges :
python -m fakenet.fakenet
La façon la plus simple d'exécuter FakeNet-NG est d'exécuter simplement l'exécutable fourni en tant qu'Administrateur. Vous pouvez fournir le paramètre de ligne de commande --help pour obtenir une aide simple :