Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Soumettre
OutilsExploitsBlog
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
TransparentTorProxy — Un utilitaire CLI Linux qui achemine de manière transparente tout le trafic système via le réseau Tor en utilisant nftables. Il permet une rotation rapide de l'IP et une activation/désactivation facile des paramètres de proxy globaux pour les tâches de confidentialité. | Kitploit
Outils/GitHubGitHub/onyks-os/transparenttorproxy
Outils DéfensifsSniffing et Analyse de PaquetsScripting et AutomatisationSécurité RéseauTests d'IntrusionProtection de la Vie PrivéeCommandement et ContrôleUtilitaires et Frameworks
Analyse DNS
GitHubonyks-os/transparenttorproxy

TransparentTorProxy

Un utilitaire CLI Linux qui achemine de manière transparente tout le trafic système via le réseau Tor en utilisant nftables. Il permet une rotation rapide de l'IP et une activation/désactivation facile des paramètres de proxy globaux pour les tâches de confidentialité.

Voir le dépôtSite web
37553il y a 1 jourVérifié par Kitploit

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

TTP - Proxy Tor Transparent

Un outil CLI Linux qui route de manière transparente tout le trafic système à travers le réseau Tor en utilisant nftables.

Sponsor Linux Python CI Status Documentation

PyPI - Downloads
OpenSSF Best Practices
License

Fonctionnalités • Prérequis • Installation • Utilisation • Fonctionnement • Vérification • Contribuer


TTP Demo


Aucune configuration par application nécessaire - il suffit de sudo ttp start et chaque connexion passe par Tor.

[!CAUTION] TTP est un outil conçu pour favoriser la confidentialité en routant le trafic à travers Tor. Cependant, aucun outil ne peut garantir une anonymisation à 100 %. Votre sécurité dépend également de votre comportement (par exemple, utiliser un navigateur classique plutôt que le Tor Browser, se connecter à des comptes, etc.). Utilisez toujours TTP dans le cadre d'une stratégie de sécurité à plusieurs niveaux.

[!WARNING] Si vous êtes un lanceur d'alerte ou si vous exercez des activités à haut risque, N'UTILISEZ PAS TTP. Utilisez plutôt des outils officiellement audités et fiables comme TailsOS ou directement le Tor Browser. Les auteurs et contributeurs de TTP déclinent toute responsabilité quant à votre sécurité ou aux conséquences de l'utilisation de ce logiciel.

Pourquoi TTP ?

Les anciens scripts de proxy transparent (TorGhost, Anonsurf) écrasent les fichiers de configuration et construisent des ensembles de règles iptables qui échouent en clair : lorsqu'ils tombent en panne, le trafic sort en clair. TTP est conçu dans la logique inverse - il échoue en mode fermé et ne conserve rien sur le disque.

Échec fermé par constructionUne table nftables isolée inet ttp avec un rejet fourre-tout et policy drop sur le forwarding. En cas de crash, de déclenchement du watchdog ou de sortie anormale, le trafic est soit routé via Tor, soit bloqué - jamais libéré.
Rien ne persisteL'état de session, le torrc, le fichier de verrouillage et les journaux résident uniquement dans tmpfs (/run/ttp/, /run/tor/ttp/). Un redémarrage ne laisse aucun résidu ni verrou obsolète.
Aucune configuration par applicationTCP et DNS sont interceptés au niveau de la couche réseau. Aucun paramètre SOCKS5, aucune variable d'environnement de proxy, aucun support applicatif requis.
DNS sans réécrire votre systèmeUne superposition mount --bind sur /etc/resolv.conf plutôt qu'une modification, plus un drop-in volatil qui neutralise systemd-resolved, soutenu par un drop au niveau du noyau sur tout trafic vers un résolveur non-loopback.
L'absence de fuite est mesuréeChaque règle de confinement est testée dans un namespace réseau isolé contre l'ensemble de règles réellement généré, et chaque test prouve d'abord qu'il peut voir une fuite avant d'affirmer qu'il n'y en a pas. Voir Vérification.

Fonctionnalités

  • Protection d'intégrité continue - un watchdog gouverné par une FSM formelle (transitions) surveille Tor, les chaînes nftables et la superposition DNS via une double surveillance inotify qui détecte la substitution de cible de lien symbolique. Il répare une fois, puis applique un killswitch d'urgence.
  • Split tunnelling - exemptez des utilisateurs ou des groupes (--bypass-user, --bypass-group) avec la correspondance native UID/GID de nftables, ou exécutez une seule commande hors de Tor avec ttp bypass <cmd> via une slice cgroups v2.
  • LAN préservé - les sous-réseaux RFC 1918 et link-local restent accessibles, ainsi votre imprimante et votre NAS continuent de fonctionner.
  • Dual-stack, ou pas de stack - IPv6 est routé via Tor lorsque le routage loopback est disponible, et abandonné purement et simplement lorsqu'il ne l'est pas. Il n'existe pas de troisième option où il fuite.
  • DoT et DoH bloqués - port 853 rejeté, résolveurs DoH publics connus rejetés sur 443 (TCP et QUIC), et domaines canaris des navigateurs empoisonnés dans torrc.
  • Coexiste avec votre Tor système - exécute son propre ttp-tor.service volatil sur des ports non standard, laissant une instance Tor existante intacte.
  • Bridges - obfs4 et snowflake, avec un mode BYOD (bring your own daemon).

Prérequis

  • Linux avec systemd
  • Python 3.10+
  • nftables (préinstallé sur la plupart des distributions modernes)
  • Privilèges root (requis pour les modifications du pare-feu et du DNS)

Installation

Choisissez la méthode qui correspond le mieux à vos besoins. Les paquets natifs sont fortement recommandés pour la stabilité du système, la sécurité et une désinstallation propre.

1. Paquets natifs (recommandé)

L'installation via des paquets natifs garantit que toutes les dépendances système (tor, nftables) et les optimisations au niveau du noyau (SELinux) sont gérées par le gestionnaire de paquets de votre OS.

Téléchargez le .deb ou le .rpm pour la version souhaitée depuis la dernière release - les paquets sont des assets de release et ne sont pas versionnés dans le dépôt - puis installez-le :

  • Debian / Ubuntu : sudo apt install ./transparent-tor-proxy_0.4.9_all.deb
  • Fedora / RHEL : sudo dnf install ./transparent-tor-proxy-0.4.9-1.noarch.rpm
  • Arch Linux : compilez depuis le dépôt avec cd packaging && makepkg -si

Pour obtenir des instructions sur la façon de vérifier l'intégrité et l'authenticité des assets de release, consultez le Guide de vérification des releases.


2. Installation manuelle depuis les sources (développeur/universel)

Si vous êtes développeur ou souhaitez installer depuis le dépôt :

root@kitploit:~
git clone https://github.com/onyks-os/TransparentTorProxy.git
cd TransparentTorProxy
sudo ./scripts/install.sh

[!TIP] Pourquoi utiliser ./install.sh ?
Contrairement aux installateurs Python standards, ce script est « intelligent ». Sur les systèmes basés sur Red Hat, il détecte si SELinux est en mode Enforcing et compile dynamiquement un module de politique personnalisé (à partir de ttp_tor_policy.te) pour permettre à Tor de se lier aux ports non standard requis par TTP (9041, 9054). Cette optimisation au niveau du noyau ne peut pas être effectuée par pip.

3. Méthodes d'installation alternatives (repli)

Pour installer TTP via des gestionnaires de paquets spécifiques à Python (pipx ou pip avec environnements virtuels), consultez la Référence des méthodes d'installation alternatives.

Utilisation

TTP est conçu pour être simple et léger. Pour la liste complète des commandes CLI, options, codes de sortie et spécifications techniques, reportez-vous à la Référence des interfaces externes.

Démarrage rapide

La plupart des commandes modifiant le réseau nécessitent les privilèges root (sudo) :

  • Démarrer le proxy :

    root@kitploit:~
    sudo ttp start
    
  • Arrêter le proxy :

    root@kitploit:~
    sudo ttp stop
    
  • Vérifier l'état de la session en cours :

    root@kitploit:~
    ttp status
    
  • Vérifier le routage Tor et la latence :

    root@kitploit:~
    ttp check
    
  • Demander une nouvelle IP de sortie (rotation des circuits) :

    root@kitploit:~
    sudo ttp refresh
    

Pour des configurations plus avancées et des profils de contournement, consultez la Référence des profils de sécurité et d'utilisation avancés ou la Référence des interfaces externes.

Vérification de votre session

Cliquez pour développer les étapes de vérification manuelle

Pour confirmer que le tunnel fonctionne correctement et qu'aucune fuite n'est présente :

  1. Vérifier l'IP de sortie Tor :

    root@kitploit:~
    curl -s https://check.torproject.org/api/ip
    
  2. Vérifier le routage DNS :

    root@kitploit:~
    # Should return a valid IP via Tor's DNSPort
    dig +short A check.torproject.org
    
  3. Test de fuite DNS (terminal) :

    root@kitploit:~
    # This TXT query SHOULD return an EMPTY output
    dig +short TXT whoami.ipv4.akahelp.net
    

    Remarque : une sortie vide est le comportement attendu sous Tor. Le résolveur transparent de Tor ne prend pas en charge les enregistrements TXT ; si cette commande renvoie l'IP de votre véritable FAI, vous avez une fuite DNS.

  4. Vérification via le Web : Effectuez toujours des tests supplémentaires sur dnsleaktest.com et ipleak.net.

Désinstallation complète

Pour supprimer complètement TTP du système :

root@kitploit:~
sudo ./scripts/uninstall.sh

Fonctionnement

TTP route de manière transparente tout le trafic réseau en orchestrant les sous-systèmes standard du noyau Linux, les utilitaires système et les interfaces de contrôle de Tor :

root@kitploit:~
flowchart LR
    App["Application"] --> Local["Local Network"]
    Local --> DNS["systemd-resolved (Intercepted)"]
    DNS --> NFT["nftables (inet ttp table)"]
    NFT --> Tor["Tor Daemon"]
    Tor --> Internet["Internet"]
  1. Redirection atomique du pare-feu : génère et charge atomiquement un ensemble de règles nftables isolé inet ttp pour intercepter le trafic TCP et DNS, en les redirigeant vers Tor tout en empêchant les fuites IPv6 et DoT/DoH.
  2. Superposition par bind-mount DNS : superpose /etc/resolv.conf avec une configuration volatile en RAM via un bind-mount au niveau du noyau pour garantir que les appels DNS sont résolus par Tor.
  3. Intégration du démon Tor : configure, exécute et surveille une instance Tor isolée via des services systemd volatils sur des ports non standard pour éviter les conflits de ports.
  4. Watchdog de session : exécute un moniteur d'arrière-plan actif qui vérifie l'intégrité de la configuration et déclenche un killswitch d'urgence en mode échec fermé en cas de brèche de sécurité ou de modification du système.

Pour une présentation détaillée des flux d'exécution, des hooks système, des frontières de sécurité et des composants modulaires, veuillez consulter :

Guide d'architecture technique et de conception

Récupération après crash

TTP est conçu pour toujours restaurer votre réseau, même dans les cas limites :

ScénarioCe qui se passe
ttp stopNettoyage sans fuite : applique un verrouillage de démontage, arrête proprement Tor, exécute un abattage actif des sockets, attend 1,5 s, vide le suivi de connexion, restaure le pare-feu et le DNS (via flush et suppression de table), et supprime le fichier de verrouillage
Ctrl+C / killLe gestionnaire de signaux intercepte SIGINT/SIGTERM et exécute le nettoyage normal avant de quitter
kill -9 / Coupure de courantLe prochain ttp start détecte le fichier de verrouillage orphelin, efface toute pile de montage obsolète et restaure automatiquement
Urgence manuelleExécutez sudo ./scripts/restore-network.sh pour vider toutes les règles nftables, réinitialiser le DNS et supprimer le fichier de verrouillage

Comportement connu et limitations

[!WARNING]

  • Tor Browser : les applications utilisant un proxy SOCKS5 explicite créeront un double saut Tor. Utilisez plutôt un navigateur classique pendant que TTP est actif.
  • DNS-over-HTTPS (DoH) : les navigateurs classiques (Firefox, Chrome, Brave, Edge) peuvent utiliser DoH, contournant le DNS système. TTP atténue DoH via une défense à 3 couches : (1) tout le trafic TCP sortant (y compris DoH) est redirigé vers le TransPort de Tor ; (2) les domaines canaris DoH courants sont mappés vers 0.0.0.0 dans torrc ; (3) les résolveurs IP DoH publics sont bloqués sur le port TCP/UDP 443 (bloquant le DoH HTTP/3 QUIC). Pour une sécurité maximale, désactivez DoH / « DNS sécurisé » dans les paramètres de votre navigateur.
  • IPv6 : entièrement pris en charge lorsqu'il est disponible. TTP détecte dynamiquement le loopback IPv6 et route le trafic IPv6 via Tor. Si l'hôte ne dispose pas du support du loopback IPv6 OU si l'option --no-ipv6 est passée, TTP abandonne tout le trafic IPv6 sortant pour éviter les fuites.
  • Variation de l'IP de sortie : différentes connexions peuvent afficher différentes IP de sortie en raison de l'isolation des flux Tor.

Pour une analyse complète des risques résiduels, des frontières de confiance architecturales et du modèle de menace STRIDE, consultez :

docs/security-assessment.md

Développement et tests

TTP utilise un Makefile pour automatiser et standardiser le pipeline de tests. Cela garantit que chaque modification est vérifiée par des tests unitaires et d'intégration avant d'être validée.

La règle du « Pre-Push »

[!IMPORTANT] Exécutez toujours make verify avant de pousser du code. Si cette commande échoue, le code n'est PAS prêt pour la production.

Commandes essentielles

CommandeObjectif
make testExécute rapidement les tests unitaires en local (aucun root nécessaire, entièrement mockés).
make integration-debianExécute les tests système complets dans un conteneur Docker privilégié (Debian).
make integration-allExécute les tests d'intégration pour toutes les distributions prises en charge (Debian, Fedora, Arch).
make verifyExécute les tests unitaires + tous les tests d'intégration.
make buildGénère les paquets natifs .deb et .rpm.
make cleanSupprime tous les artefacts de build, caches et fichiers temporaires.

Vérification

L'affirmation de TTP d'absence de fuite est mesurée, non affirmée. Le Network Sandbox Engine construit un namespace réseau isolé, y charge l'ensemble de règles réellement généré par TTP, génère le trafic dont consisterait une fuite, et surveille l'interface veth de frontière avec un sniffer Scapy.

Chaque test de confinement s'exécute deux fois. assert no leaks est également vrai lorsque le sniffer n'a jamais démarré, lorsque le nom de l'interface est erroné, ou lorsque le trafic n'a jamais quitté le processus, donc chaque test exécute d'abord le même stimulus avec le ruleset vidé et exige que le paquet soit vu. Ce n'est qu'ensuite qu'il affirme que le ruleset de TTP l'arrête. Un harnais qui ne peut pas observer une fuite échoue au test plutôt que de le réussir.

Couvert : DNS en clair (UDP et TCP), TCP ordinaire, DoT sur 853, DoH QUIC sur UDP/443, ICMP, UDP arbitraire, IPv6 — plus la direction inverse, qu'un UID contourné peut toujours atteindre le LAN. Un pare-feu qui bloquerait tout réussirait les sept premiers et échouerait au huitième.

root@kitploit:~
# libpcap is required: the sniffer compiles a BPF filter, and Scapy dlopen()s
# the unversioned libpcap.so that only the -devel/-dev package ships.
sudo apt install nftables iproute2 conntrack libpcap0.8 libpcap-dev   # Debian/Ubuntu
sudo dnf install nftables iproute2 conntrack libpcap libpcap-devel    # Fedora/RHEL
pip install -e ".[nse]"
make test-nse            # runs as root; TTP_REQUIRE_NSE=1 so it cannot skip itself

Cela s'exécute en CI à chaque push (le job Zero-leak ruleset verification) et comme une étape dans scripts/verify.sh avant une release.

Avancé : tests en VM réelle

Bien que les tests d'intégration Docker soient rapides et atomiques, ils ne capturent pas 100 % des nuances du noyau/systemd. Pour les modifications critiques, il est fortement recommandé de tester dans une vraie VM QEMU :

root@kitploit:~
# Start a specific VM (e.g., arch)
./scripts/vm/start.sh arch

# Sync current code to the VM
./scripts/vm/send.sh

# Snapshot management for easy rollbacks
./scripts/vm/snapshot.sh arch save before-risky-test

Diagnostics

Si quelque chose ne va pas, exécutez la commande de diagnostic :

root@kitploit:~
sudo ttp diagnose

Structure du projet

root@kitploit:~
├── pyproject.toml          # Package metadata and dependencies
├── README.md
├── CONTRIBUTING.md         # Contribution guidelines
├── SECURITY.md             # Security policy
├── scripts/                # Installation, verification, and VM management scripts
├── assets/                 # Branding and demo assets
├── packaging/              # Packaging configurations (.deb, .rpm, Arch PKGBUILD)
├── ttp/                    # Main Python source package
│   └── resources/          # Internal package resources (SELinux policies, etc.)
├── tests/                  # Unit, integration, and leak testing suites
└── docs/                   # Technical documentation, threat models, and ADRs

Contribuer

Les contributions sont les bienvenues, et les domaines où l'aide compte le plus sont étroits et spécifiques :

  1. Réseau Linux - nftables, tables de routage, namespaces réseau, détection d'interface VPN.
  2. Internes de Tor - configuration du démon, Stem, bridges, cas limites de bootstrap.
  3. CI/CD - maintenir les suites de tests privilégiées rapides et fiables sur GitHub Actions.

Commencez par CONTRIBUTING.md, qui documente les deux règles sur lesquelles ce codebase est construit : ne jamais corriger un bug sans ajouter la vérification qui l'aurait attrapé, et un test qui affirme une absence doit d'abord prouver qu'il peut détecter une présence.

Bugs et demandes de fonctionnalitésGitHub Issues
Vulnérabilités de sécuritéSECURITY.md - veuillez ne pas ouvrir d'issue publique
Support des versions et EOLSUPPORT.md
Releases et paquetsGitHub Releases · PyPI

Ce projet est maintenu sur du temps libre. Une étoile aide les autres à le trouver ; le sponsoring aide à le faire perdurer.

Licence

MIT. Voir LICENSE pour plus d'informations.

Télécharger l’outil