Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
tcpflow — Demultiplexador de pacotes TCP/IP. Baixar de: | Kitploit
Ferramentas/GitHubGitHub/simsong/tcpflow
Sniffing e Análise de PacotesForensia de RedeAnálise ForenseForensia Digital
GitHubsimsong/tcpflow

tcpflow

Demultiplexador de pacotes TCP/IP. Baixar de:

Ver RepositórioSite
1.8k245há 6 mesesRevisado 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

TCPFLOW CI (c++14)

TCPFLOW 1.5.0

Diretório de downloads: http://digitalcorpora.org/downloads/tcpflow/

Instalação

A maioria das distribuições GNU/Linux comuns inclui tcpflow em seus repositórios. Então, no Debian/Ubuntu/etc você pode digitar

root@kitploit:~
sudo apt-get install tcpflow

e no Fedora/RedHat/CentOS/etc você pode digitar

root@kitploit:~
sudo dnf install tcpflow

E é isso. Se isso não for suficiente por qualquer motivo, você pode compilar a partir do código fonte:

Compilando a partir do código fonte

Para compilar no Linux

Certifique-se de ter os pré-requisitos necessários. Existem arquivos no diretório raiz que farão isso por você, dependendo do seu sistema operacional:

CONFIGURE_ARCH_17_8.sh CONFIGURE_FEDORA_18.sh CONFIGURE_FEDORA_26.sh CONFIGURE_UBUNTU_16_04.sh

Dependendo do seu sistema operacional, execute:

root@kitploit:~
# sudo bash CONFIGURE_<YOUROS>.sh

Depois de configurar seu sistema operacional, compile e instale com:

root@kitploit:~
./configure
make
sudo make install

Se você quiser baixar a árvore de desenvolvimento com git, certifique-se de fazer um checkout completo com --recursive e então execute bootstrap.sh, configure e make:

root@kitploit:~
git clone --recursive https://github.com/simsong/tcpflow.git
cd tcpflow
bash bootstrap.sh
./configure
make
sudo make install  

Para baixar e compilar para Amazon AMI:

root@kitploit:~
ssh ec2-user@<your ec2 instance>
sudo bash yum -y install git make gcc-c++ automake autoconf boost-devel cairo-devel libpcap-devel openssl-devel zlib-devel
git clone --recursive https://github.com/simsong/tcpflow.git
sh bootstrap.sh

Para compilar para Windows com mingw no Fedora Core:

root@kitploit:~
yum -y install mingw64-gcc mingw64-gcc-c++ mingw64-boost mingw64-cairo mingw64-zlib
mingw64-configure
make

Para usar o CMake, consulte as instruções detalhadas: cmake/README.md

Construir RPM

A partir de um repositório limpo como usuário normal (não root):

root@kitploit:~
./bootstrap.sh     # Gera o arquivo ./configure
./configure        # Gera o arquivo tcpflow.spec
rpmbuild -bb tcpflow.spec --build-in-place

Verifique o arquivo spec e o RPM resultante:

root@kitploit:~
rpmlint tcpflow.spec
rpmlint ~/rpmbuild/RPMS/x86_64/tcpflow-....rpm

Instalar:

root@kitploit:~
sudo dnf install ~/rpmbuild/RPMS/x86_64/tcpflow-....rpm

Introdução ao tcpflow

tcpflow é um programa que captura dados transmitidos como parte de conexões TCP (fluxos) e armazena os dados de forma conveniente para análise de protocolo e depuração. Cada fluxo TCP é armazenado em seu próprio arquivo. Assim, o fluxo TCP típico será armazenado em dois arquivos, um para cada direção. tcpflow também pode processar fluxos de pacotes 'tcpdump' armazenados.

tcpflow armazena todos os dados capturados em arquivos que têm nomes da forma:

root@kitploit:~
   [timestampT]sourceip.sourceport-destip.destport[--VLAN][cNNNN]

onde: timestamp é um registro de data e hora opcional do momento em que o primeiro pacote foi visto T é um delimitador que indica que um timestamp foi fornecido sourceip é o endereço IP de origem sourceport é a porta de origem destip é o endereço IP de destino destport é a porta de destino VLAN é a porta VLAN c é um delimitador que indica que múltiplas conexões estão presentes NNNN é um contador de conexões, quando há múltiplas conexões com a mesma combinação [timestamp]/sourceip/sourceport/destip/destport.
Observe que a contagem de conexões raramente ocorre quando o prefixo de timestamp é usado.

AQUI estão alguns exemplos:

root@kitploit:~
   128.129.130.131.02345-010.011.012.013.45103

O conteúdo do arquivo acima seria dados transmitidos do host 128.129.131.131 porta 2345, para o host 10.11.12.13 porta 45103.

root@kitploit:~
   128.129.130.131.02345-010.011.012.013.45103c0005

A sexta conexão de 128.129.131.131 porta 2345, para o host 10.11.12.13 porta 45103.

root@kitploit:~
   1325542703T128.129.130.131.02345-010.011.012.013.45103

Uma conexão de 128.129.131.131 porta 2345, para o host 10.11.12.13 porta 45103, que começou às 17:19 (-0500) em 2 de janeiro de 2012

root@kitploit:~
   128.129.130.131.02345-010.011.012.013.45103--3

Uma conexão de 128.129.131.131 porta 2345, para o host 10.11.12.13 porta 45103 que foi vista na porta VLAN 3.

Você pode alterar o modelo usado para criar nomes de arquivos com as opções -F e -T. Se um diretório aparecer no modelo, o diretório será criado automaticamente.

Se você usar a opção -a, o tcpflow interpretará automaticamente as respostas HTTP.

root@kitploit:~
   If the output file is
      208.111.153.175.00080-192.168.001.064.37314,

   Then the post-processing will create the files:
      208.111.153.175.00080-192.168.001.064.37314-HTTP
      208.111.153.175.00080-192.168.001.064.37314-HTTPBODY

   If the HTTPBODY was compressed with GZIP, you may get a 
   third file as well:

      208.111.153.175.00080-192.168.001.064.37314-HTTPBODY-GZIP

   Additional information about these streams, such as their MD5
   hash value, is also written to the DFXML file

tcpflow é semelhante ao 'tcpdump', pois ambos processam pacotes da rede ou de um arquivo armazenado. Mas é diferente porque reconstrói os fluxos de dados reais e armazena cada fluxo em um arquivo separado para análise posterior.

tcpflow entende números de sequência e reconstruirá corretamente os fluxos de dados independentemente de retransmissões ou entrega fora de ordem. No entanto, o tcpflow atualmente não entende fragmentos IP; fluxos contendo fragmentos IP não serão gravados corretamente.

tcpflow pode gerar um arquivo de relatório resumido no formato DFXML. Este arquivo inclui informações sobre o sistema no qual o programa tcpflow foi compilado, onde foi executado, e cada fluxo TCP, incluindo endereços IP e portas de origem e destino, número de bytes, número de pacotes e (opcionalmente) o hash MD5 de cada fluxo de bytes.

tcpflow usa a LBL Packet Capture Library (disponível em ftp://ftp.ee.lbl.gov/libpcap.tar.Z) e, portanto, suporta as mesmas expressões de filtragem ricas que programas como 'tcpdump' suportam. Ele deve compilar sob as versões mais populares do UNIX; consulte o arquivo INSTALL para detalhes.

Qual a utilidade?

tcpflow é uma ferramenta útil para entender fluxos de pacotes de rede e realizar perícia forense de rede. Ao contrário de programas como WireShark, que mostram muitos pacotes ou uma única conexão TCP, o tcpflow pode mostrar centenas, milhares ou centenas de milhares de conexões TCP em contexto.

Um uso comum do tcpflow é revelar o conteúdo de sessões HTTP. Usando o tcpflow você pode reconstruir páginas web baixadas via HTTP. Você pode até extrair malware entregue como 'downloads drive-by.'

Jeremy Elson originalmente escreveu este programa para capturar os dados enviados por vários programas que usam protocolos de rede não documentados na tentativa de fazer engenharia reversa desses protocolos. RealPlayer (e a maioria dos outros players de mídia de streaming), ICQ e AOL IM são bons exemplos desse tipo de aplicativo. Mais tarde, foi usado para análise de protocolo HTTP.

Simson Garfinkel fundou a Sandstorm Enterprises em 1998. A Sandstorm criou um programa semelhante ao tcpflow chamado TCPDEMUX e outra versão do programa chamada NetIntercept. Esses programas são comerciais. Depois que Simson deixou a Sandstorm, ele precisou de um programa de remontagem de fluxo TCP. Ele encontrou o tcpflow e assumiu sua manutenção.

Bugs

Por favor, reporte bugs no rastreador de problemas do github

tcpflow atualmente não entende fragmentos IP. Fluxos contendo fragmentos IP não serão gravados corretamente. A fragmentação IP é cada vez mais rara, então isso não parece ser um problema significativo.

CITAÇÃO RECOMENDADA

Se você está escrevendo um artigo sobre tcpflow, por favor cite nosso relatório técnico:

  • Passive TCP Reconstruction and Forensic Analysis with tcpflow, Simson Garfinkel and Michael Shick, Naval Postgraduate School Technical Report NPS-CS-13-003, September 2013. https://calhoun.nps.edu/handle/10945/36026

MANTENEDOR

Simson L. Garfinkel [email protected]

RELATÓRIO DE STATUS DO TCPFLOW 1.6

Continuo portando bulk_extractor, tcpflow, be13_api e dfxml para C++ moderno. Após pesquisar os padrões, decidi usar C++17 e não C++14, pois o suporte ao 17 agora é generalizado. (Provavelmente não preciso do 20). Estou mantendo o autotools, embora pareça haver uma forte razão para migrar para CMake. Estou mantendo be13_api e dfxml como módulos incluídos, ao estilo Python, em vez de torná-los bibliotecas independentes vinculadas. Não tenho 100% de certeza de que essa seja a decisão correta, no entanto.

O projeto está demorando mais do que o previsto porque também estou fazendo uma refatoração geral do código. A principal coisa que está tomando tempo é descobrir como desembaraçar todos os objetos C++ relacionados às opções e configuração do analisador.

Dado que tcpflow e bulk_extractor usam be13_api, minha atenção se concentrou em usar tcpflow para tornar o be13_api operacional, pois é um programa mais simples. Estou cerca de três quartos do caminho agora. Antecipo ter algo pronto antes do final de 2020.

--- Simson Garfinkel, 18 de outubro de 2020

AGRADECIMENTOS

Agradecimentos a:

  • Jeffrey Pang, pela implementação do radiotap
  • Doug Madory, pelo analisador WiFi
  • Jeremy Elson, pela ideia original e implementação inicial do TCP/IP
Baixar ferramenta