Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
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
tcpcopy — Un outil de réplication de requêtes en ligne et de rejeu de flux TCP, idéal pour les tests réels, les tests de performance, les tests de stabilité, les tests de résistance, les tests de charge, les tests de fumée, et plus encore. | Kitploit
Outils/GitHubGitHub/session-replay-tools/tcpcopy
Scripting et AutomatisationSécurité RéseauTests d'IntrusionUtilitaires et Frameworks
GitHubsession-replay-tools/tcpcopy

tcpcopy

Un outil de réplication de requêtes en ligne et de rejeu de flux TCP, idéal pour les tests réels, les tests de performance, les tests de stabilité, les tests de résistance, les tests de charge, les tests de fumée, et plus encore.

Voir le dépôt
Site web
4.7k1.0k20il y a 1 anVé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

TCPCopy - Un outil de rejeu de flux TCP

TCPCopy est un outil de rejeu de flux TCP pour des tests réalistes d'applications serveur Internet.

Découvrir TCPCopy

Un aperçu de TCPCopy pour les débutants

Un aperçu général de l'architecture de TCPCopy

Cas d'utilisation des tests avec TCPCopy

Exemples de préchauffage avec TCPCopy

Description

Bien que le trafic réel soit crucial pour tester les applications serveur Internet, sa simulation précise est difficile en raison de la complexité des environnements en ligne. Pour permettre des tests plus réalistes, TCPCopy a été développé comme un outil de reproduction de flux en direct qui génère des charges de test très proches des charges de production. TCPCopy est largement utilisé par des entreprises en Chine.

TCPCopy a un impact minimal sur le système de production, ne consommant que du CPU, de la mémoire et de la bande passante supplémentaires. La charge reproduite reflète l'environnement de production en termes de diversité des requêtes, de latence réseau et d'utilisation des ressources.

Cas d'utilisation

  • Tests de charge distribués
    • Utilisez TCPCopy pour reproduire le trafic réel et tester la résistance de votre logiciel serveur, en découvrant des bogues qui n'apparaissent que sous forte charge.
  • Tests en direct
    • Validez la stabilité des nouveaux systèmes et identifiez les bogues qui ne se manifestent que dans des scénarios réels.
  • Tests de régression
    • Assurez-vous que les modifications récentes n'ont pas introduit de nouveaux problèmes.
  • Comparaison des performances
    • Comparez les performances du système entre différentes versions ou configurations.

Architecture

tcpcopy

Figure 1. Aperçu de l'architecture de TCPCopy.

Comme le montre la figure 1, TCPCopy se compose de deux composants : tcpcopy et intercept. Le composant tcpcopy s'exécute sur le serveur en ligne, capturant les requêtes en direct, tandis que intercept fonctionne sur le serveur assistant, effectuant des tâches telles que la transmission des informations de réponse à tcpcopy. L'application de test elle-même s'exécute sur le serveur cible.

Par défaut, tcpcopy utilise des sockets bruts pour capturer les paquets au niveau réseau (représentés par les flèches orange dans la figure). Il gère des processus tels que la simulation d'interaction TCP, le contrôle de la latence réseau et la simulation d'interaction de couche supérieure. Il envoie ensuite les paquets au serveur cible à l'aide de sockets bruts pour la sortie (représentés par les flèches rouge clair dans la figure).

La seule tâche requise sur le serveur cible est de configurer les règles de routage pour diriger les paquets de réponse (représentés par les flèches vert clair dans la figure) vers le serveur assistant.

Le rôle du composant intercept est de transmettre l'en-tête de réponse (par défaut) à tcpcopy. Il capture les paquets de réponse, extrait les informations de l'en-tête de réponse et envoie ces informations à tcpcopy via un canal dédié (représenté par les flèches bleu clair dans la figure). Dès réception de l'en-tête de réponse, tcpcopy utilise les informations pour modifier les attributs des paquets en ligne et continue d'envoyer les paquets suivants.

Il est important de noter que les réponses du serveur cible sont routées vers le serveur assistant, qui fonctionne comme un trou noir.

Démarrage rapide

Pour intercept, vous avez deux options :

  • Téléchargez la dernière version d'intercept.
  • Clonez le dépôt : git clone git://github.com/session-replay-tools/intercept.git.

Pour tcpcopy, vous avez également deux options :

  • Téléchargez la dernière version de tcpcopy.
  • Clonez le dépôt : git clone git://github.com/session-replay-tools/tcpcopy.git.

Installation d'intercept sur le serveur assistant

  1. Accédez au répertoire intercept :
    cd intercept
  2. Exécutez le script de configuration :
    ./configure
    Vous pouvez éventuellement spécifier les options de configuration nécessaires.
  3. Compilez le code source :
    make
  4. Installez l'outil intercept :
    make install

Options de configuration pour intercept

  • --single
    Exécute intercept en mode non distribué.

  • --with-pfring=PATH
    Spécifiez le chemin vers les sources de la bibliothèque PF_RING.

  • --with-debug
    Compile intercept avec le support de débogage, les journaux étant enregistrés dans un fichier.

Installation de tcpcopy sur le serveur en ligne

  1. Accédez au répertoire tcpcopy :
    cd tcpcopy
  2. Exécutez le script de configuration :
    ./configure
    Incluez les options de configuration nécessaires si besoin.
  3. Compilez le code source :
    make
  4. Installez l'outil tcpcopy :
    make install

Options de configuration pour tcpcopy

  • --offline
    Rejoue les flux TCP à partir d'un fichier pcap.

  • --pcap-capture
    Capture les paquets au niveau de la couche liaison de données.

  • --pcap-send
    Envoie les paquets au niveau de la couche liaison de données au lieu de la couche IP.

  • --with-pfring=PATH
    Spécifiez le chemin vers les sources de la bibliothèque PF_RING.

  • --set-protocol-module=PATH
    Configure tcpcopy pour fonctionner avec un module de protocole externe.

  • --single
    Si intercept et tcpcopy sont tous deux configurés avec l'option --single, une seule instance de tcpcopy fonctionnera avec intercept, ce qui améliore les performances.

  • --with-tcmalloc
    Utilise tcmalloc au lieu de malloc.

  • --with-debug
    Compile tcpcopy avec le support de débogage, les journaux étant enregistrés dans un fichier.

Exécution de TCPCopy

Supposons que tcpcopy et intercept soient tous deux configurés avec ./configure.

  1. Sur le serveur cible exécutant les applications serveur :

    Configurez les règles de routage pour diriger les paquets de réponse vers le serveur assistant. Par exemple, si 61.135.233.161 est l'adresse IP du serveur assistant, utilisez la commande de routage suivante pour diriger toutes les réponses des clients de la plage 62.135.200.x vers le serveur assistant :

    route add -net 62.135.200.0 netmask 255.255.255.0 gw 61.135.233.161

  2. Sur le serveur assistant exécutant intercept (privilège root ou capacité CAP_NET_RAW requise) :

    ./intercept -F <filtre> -i <périphérique>

    Notez que le format du filtre est identique à celui du filtre pcap. Par exemple :

    ./intercept -i eth0 -F 'tcp and src port 8080' -d

    Dans cet exemple, intercept capture les paquets de réponse d'une application basée sur TCP écoutant sur le port 8080, en utilisant le périphérique réseau eth0.

    Veuillez noter que ip_forward n'est pas activé sur le serveur assistant.

Télécharger l’outil