
"Two-Face" Rust binary on Linux
Un fichier exécutable qui exécute la plupart du temps un programme inoffensif, mais qui exécutera un code différent et caché s'il est déployé sur un hôte cible spécifique.
Voir Créer un binaire Rust « Two-Face » sur Linux.
Vous avez besoin d'un environnement de compilation Rust, par exemple à partir de rustup.
Une toolchain nightly est requise (pour prendre en charge le ! type « never »).
Le script test-example compile et exécute un exemple complet.
Les paquets suivants sont fournis dans le dépôt :
evil_binary : un exemple de binaire « caché », qui sera exécuté lorsque les données de l'hôte correspondent à celles définies dans example/host.jsonharmless_binary : un exemple de binaire « normal » qui sera exécuté sur les autres hôtesexample : le binaire « Two-Face » résultant qui embarque les deux binaires précédents et répartit l'exécution vers l'un ou l'autre selon l'hôtetwoface : la bibliothèque qui fournit les fonctionnalités de build-time et de run-time