Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
tcpcopy — Uma ferramenta online de replicação de requisições e reprodução de fluxos TCP, ideal para testes reais, testes de desempenho, testes de estabilidade, testes de estresse, testes de carga, testes de fumaça e muito mais. | Kitploit
Ferramentas/GitHubGitHub/session-replay-tools/tcpcopy
Scripting e AutomaçãoSegurança de RedeTestes de PenetraçãoUtilitários e Frameworks
GitHubsession-replay-tools/tcpcopy

tcpcopy

Uma ferramenta online de replicação de requisições e reprodução de fluxos TCP, ideal para testes reais, testes de desempenho, testes de estabilidade, testes de estresse, testes de carga, testes de fumaça e muito mais.

Ver Repositório
Site
4.7k1.0k27há 1 anoRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

TCPCopy - Uma Ferramenta de Reprodução de Fluxo TCP

TCPCopy é uma ferramenta de reprodução de fluxo TCP para testes realistas de aplicações de servidor de Internet.

Conhecendo o TCPCopy

Uma Visão Geral do TCPCopy para Iniciantes

Uma Visão Geral da Arquitetura do TCPCopy

Casos de Uso de Teste do TCPCopy

Exemplos de Pré-Aquecimento do TCPCopy

Descrição

Embora o tráfego real ao vivo seja crucial para testar aplicações de servidor de Internet, simulá-lo com precisão é desafiador devido à complexidade dos ambientes online. Para permitir testes mais realistas, o TCPCopy foi desenvolvido como uma ferramenta de reprodução de fluxo ao vivo que gera cargas de trabalho de teste que se assemelham de perto às cargas de trabalho de produção. O TCPCopy é amplamente utilizado por empresas na China.

O TCPCopy impacta minimamente o sistema de produção, consumindo apenas CPU, memória e largura de banda adicionais. A carga de trabalho reproduzida reflete o ambiente de produção em termos de diversidade de requisições, latência de rede e uso de recursos.

Casos de Uso

  • Teste de Estresse Distribuído
    • Use o TCPCopy para replicar tráfego do mundo real para testar a resistência do seu software de servidor, descobrindo bugs que só aparecem sob condições de alto estresse.
  • Teste ao Vivo
    • Validar a estabilidade de novos sistemas e identificar bugs que só se manifestam em cenários do mundo real
  • Teste de Regressão
    • Garantir que alterações recentes não introduziram novos problemas.
  • Comparação de Desempenho
    • Comparar o desempenho do sistema em diferentes versões ou configurações.

Arquitetura

tcpcopy

Figura 1. Visão geral da arquitetura do TCPCopy.

Como mostrado na Figura 1, o TCPCopy é composto por dois componentes: tcpcopy e intercept. O componente tcpcopy é executado no servidor online, capturando requisições ao vivo, enquanto o intercept opera no servidor assistente, realizando tarefas como passar informações de resposta para o tcpcopy. A aplicação de teste em si é executada no servidor de destino.

Por padrão, o tcpcopy usa sockets raw para capturar pacotes na camada de rede (representado pelas setas laranjas na figura). Ele lida com processos como simulação de interação TCP, controle de latência de rede e simulação de interação de camada superior. Em seguida, envia pacotes para o servidor de destino usando sockets raw para saída (mostrado pelas setas vermelhas claras na figura).

A única tarefa necessária no servidor de destino é configurar regras de rota para direcionar os pacotes de resposta (mostrados por setas verdes claras na figura) para o servidor assistente.

O papel do componente intercept é encaminhar o cabeçalho da resposta (por padrão) para o tcpcopy. Ele captura os pacotes de resposta, extrai as informações do cabeçalho da resposta e envia essas informações para o tcpcopy através de um canal dedicado (representado por setas azuis claras na figura). Ao receber o cabeçalho da resposta, o tcpcopy usa as informações para modificar os atributos dos pacotes online e prossegue para enviar pacotes subsequentes.

É importante notar que as respostas do servidor de destino são roteadas para o servidor assistente, que funciona como um buraco negro.

Início Rápido

Para intercept, você tem duas opções:

  • Baixar a versão mais recente do intercept.
  • Clonar o repositório: git clone git://github.com/session-replay-tools/intercept.git.

Para tcpcopy, você também tem duas opções

  • Baixar a versão mais recente do tcpcopy.
  • Clonar o repositório: git clone git://github.com/session-replay-tools/tcpcopy.git.

Instalando o intercept no Servidor Assistente

  1. Navegue até o diretório intercept:
    cd intercept
  2. Execute o script de configuração:
    ./configure
    Opcionalmente, especifique quaisquer opções de configuração necessárias.
  3. Compile o código fonte:
    make
  4. Instale a ferramenta intercept:
    make install

Opções de Configuração para intercept

  • --single
    Execute o intercept em modo não distribuído.

  • --with-pfring=PATH
    Especifique o caminho para as fontes da biblioteca PF_RING.

  • --with-debug
    Compile o intercept com suporte a depuração, com logs salvos em um arquivo.

Instalando o tcpcopy no Servidor Online

  1. Navegue até o diretório tcpcopy:
    cd tcpcopy
  2. Execute o script de configuração:
    ./configure
    Inclua quaisquer opções de configuração necessárias conforme necessário.
  3. Compile o código fonte:
    make
  4. Instale a ferramenta tcpcopy:
    make install

Opções de Configuração para tcpcopy

  • --offline
    Reproduzir fluxos TCP a partir de um arquivo pcap.

  • --pcap-capture
    Capturar pacotes na camada de enlace de dados.

  • --pcap-send
    Enviar pacotes na camada de enlace de dados em vez da camada IP.

  • --with-pfring=PATH
    Especificar o caminho para as fontes da biblioteca PF_RING.

  • --set-protocol-module=PATH
    Configurar o tcpcopy para trabalhar com um módulo de protocolo externo.

  • --single
    Se tanto o intercept quanto o tcpcopy forem configurados com a opção --single, apenas uma instância do tcpcopy funcionará com o intercept, resultando em melhor desempenho.

  • --with-tcmalloc
    Usar tcmalloc em vez de malloc.

  • --with-debug
    Compilar o tcpcopy com suporte a depuração, com logs salvos em um arquivo.

Executando o TCPCopy

Suponha que tanto o tcpcopy quanto o intercept estejam configurados usando ./configure.

  1. No Servidor de Destino Executando Aplicações de Servidor:

    Configure as regras de rota para direcionar os pacotes de resposta para o servidor assistente. Por exemplo, se 61.135.233.161 for o endereço IP do servidor assistente, use o seguinte comando de rota para direcionar todas as respostas de clientes no intervalo 62.135.200.x para o servidor assistente:

    route add -net 62.135.200.0 netmask 255.255.255.0 gw 61.135.233.161

  2. No Servidor Assistente Executando intercept (Privilégio de Root ou Capacidade CAP_NET_RAW Necessária):

    ./intercept -F <filter> -i <device>

    Observe que o formato do filtro é o mesmo que o filtro pcap. Por exemplo:

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

    Neste exemplo, o intercept capturará pacotes de resposta de uma aplicação baseada em TCP ouvindo na porta 8080, usando o dispositivo de rede eth0.

    Observe que ip_forward não está ativado no servidor assistente.

  3. No Servidor de Origem Online (Privilégio de Root ou Capacidade CAP_NET_RAW Necessária):

    ./tcpcopy -x localServerPort-targetServerIP:targetServerPort -s <intercept server> [-c <ip range>]

    Por exemplo (assumindo que 61.135.233.160 é o endereço IP do servidor de destino):

    ./tcpcopy -x 80-61.135.233.160:8080 -s 61.135.233.161 -c 62.135.200.x

    Neste exemplo, o tcpcopy captura pacotes na porta 80 do servidor atual, altera o endereço IP do cliente para um do intervalo 62.135.200.x e envia esses pacotes para a porta 8080 no servidor de destino (61.135.233.160). Ele também se conecta a 61.135.233.161 para solicitar que o intercept encaminhe os pacotes de resposta. Embora o parâmetro -c seja opcional, ele é usado aqui para simplificar as regras de rota.

Nota

Baixar ferramenta