
Boîte à outils deepfake en temps réel pour les tests d'intrusion des systèmes de vérification d'identité et de visioconférence. Prend en charge l'échange de visage, l'animation d'images et l'injection de caméra virtuelle pour les opérations d'équipe rouge.
dot (ou Deepfake Offensive Toolkit) permet de créer en temps réel des deepfakes contrôlables prêts pour l'injection dans des caméras virtuelles. dot a été créé pour effectuer des tests de pénétration contre, par exemple, les systèmes de vérification d'identité et de visioconférence, à l'usage des analystes de sécurité, des membres d'équipes Rouges et des chercheurs en biométrie.
Si vous souhaitez en savoir plus sur l'utilisation de dot pour les tests de pénétration avec des deepfakes dans l'industrie, lisez ces articles de The Verge et Biometric Update.
dot est développé à des fins de recherche et de démonstration. En tant qu'utilisateur final, vous avez la responsabilité de respecter toutes les lois applicables lorsque vous utilisez ce programme. Les auteurs et les développeurs contributeurs déclinent toute responsabilité et ne sont pas responsables de toute utilisation abusive ou de tout dommage causé par l'utilisation de ce programme.
En bref, dot fonctionne comme suit :
flowchart LR;
A(flux de votre webcam) --> B(ensemble de deepfakes en temps réel);
B(ensemble de deepfakes en temps réel) --> C(injection de caméra virtuelle);
Tous les deepfakes pris en charge par dot ne nécessitent pas d'apprentissage supplémentaire. Ils peuvent être utilisés en temps réel, à la volée, sur une photo qui devient la cible de l'usurpation d'identité faciale. Méthodes prises en charge :
224 et 512
256 et 512Téléchargez et exécutez l'exécutable dot pour votre système d'exploitation :
Windows (testé sur Windows 10 et 11) :
dot.zip depuis ce lien, décompressez-le puis exécutez dot.exeUbuntu :
Mac (testé sur Apple M2 Sonoma 14.0) :
dot-m2.zip depuis ce lien et décompressez-lexattr -cr dot-executable.app pour supprimer les attributs étendusAfficher le contenu du paquetdot-executable depuis le dossier Contents/MacOSExemple d'utilisation :
source.target. Dans la plupart des cas, 0 est l'identifiant correct.config_file. Sélectionnez une configuration par défaut dans la liste déroulante ou utilisez un fichier personnalisé.use_gpu pour utiliser le GPU.RUN pour démarrer le deepfake.Pour plus d'informations sur chaque champ, cliquez sur le menu Help/Usage.
Regardez la vidéo de démonstration suivante pour mieux comprendre l'interface :
Linux
sudo apt install ffmpeg cmake
MacOS
brew install ffmpeg cmake
Windows
Les instructions supposent que Miniconda est installé sur votre machine. Si ce n'est pas le cas, vous pouvez vous référer à ce lien pour les instructions d'installation.
conda env create -f envs/environment-gpu.yaml
conda activate dot
Installez les dépendances torch et torchvision en fonction de la version CUDA installée sur votre machine :
Installez CUDA 11.8 depuis ce lien
Installez cudatoolkit depuis conda : conda install cudatoolkit=<cuda_version_no> (remplacez <cuda_version_no> par la version sur votre machine)
Installez les dépendances torch et torchvision : pip install torch==2.0.1+<cuda_tag> torchvision==0.15.2+<cuda_tag> torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu118, où <cuda_tag> est le tag CUDA défini par Pytorch. Par exemple, pip install torch==2.0.1+cu118 torchvision==0.15.2+cu118 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu118 pour CUDA 11.8.
Remarque : torch1.9.0+cu111 peut également être utilisé.
Pour vérifier que torch et torchvision sont installés correctement, exécutez la commande suivante : python -c "import torch; print(torch.cuda.is_available())". Si la sortie est True, les dépendances sont installées avec le support CUDA.
conda env create -f envs/environment-apple-m2.yaml
conda activate dot
Pour vérifier que torch et torchvision sont installés correctement, exécutez la commande suivante : python -c "import torch; print(torch.backends.mps.is_available())". Si la sortie est True, les dépendances sont installées avec le support du framework Metal.
conda env create -f envs/environment-cpu.yaml
conda activate dot
pip install -e .
Exécutez dot --help pour obtenir une liste complète des options disponibles.
Simswap
dot -c ./configs/simswap.yaml --target 0 --source "./data" --use_gpu
SimSwapHQ
dot -c ./configs/simswaphq.yaml --target 0 --source "./data" --use_gpu