A análise do tráfego de rede torna-se uma das tarefas de administração mais comuns e necessárias, independentemente do tipo de organização, uma vez que uma configuração TCP incorreta causará erros de conexão e gerenciamento de todos os pacotes de rede.
O protocolo TCP (Transmission-Control-Protocol), é um dos protocolos mais utilizados em ambientes de rede, pois facilita a administração dos dados que chegam ou vão para o endereço IP para que toda a rede de processos seja concluída com sucesso.
CaracteristicasAlgumas das características deste protocolo são:
- Facilita o monitoramento do fluxo de dados evitando a saturação da rede
- Permite que os dados sejam formados em segmentos de comprimento variável para serem entregues ao protocolo IP
- Dá a possibilidade de multiplexar os dados, ou seja, faz com que as informações provenientes de diferentes fontes possam circular simultaneamente.
Agora, existem várias opções para analisar esse tráfego de rede e é graças ao utilitário TCPflow que o Solvetic vai explicar como instalá-lo e utilizá-lo em ambientes Linux.
O que é TCPflowA ferramenta tcpflow foi desenvolvida como um programa que captura os dados transmitidos por meio de conexões TCP e, em seguida, armazena esses dados para posterior análise e depuração do protocolo.
Cada fluxo TCP é armazenado em seu respectivo arquivo, portanto, o fluxo TCP típico será armazenado em dois arquivos, um para cada endereço gerenciado.
Seu conjunto de recursos inclui um sistema de plug-in avançado que permite descompactar conexões HTTP compactadas, desfazer a codificação MIME ou chamar programas de terceiros para pós-processamento e muitas outras opções.
Uso prático TCPflowAlguns dos usos práticos em que o TCPflow é útil são:
- Compreender os fluxos de pacotes de rede e realizar análises forenses de rede
- Revelar o conteúdo das sessões HTTP
- Reconstruir páginas da web baixadas via HTTP
- Extraia malware fornecido com a categoria de downloads drive-by
Agora vamos ver como usar o TCPflow
1. Como instalar o TCPflow no Linux
Passo 1
Para instalar o TCPflow, devemos executar um dos seguintes comandos, dependendo da distribuição usada:
sudo apt install tcpflow (Debian / Ubuntu) sudo yum install tcpflow (CentOS / RHEL) sudo dnf install tcpflow (Fedora)
PROLONGAR
Inserimos a letra S para confirmar o download e a instalação do utilitário.
Passo 2
Depois de instalar o TCPflow, será possível executá-lo com privilégios de superusuário ou então fazer uso do comando sudo, o TCPflow escuta na interface de rede ativa do sistema.
sudo tcpflow
PROLONGAR
Neste caso, veremos que a interface selecionada é enp0s3.
etapa 3
Por padrão, o TCPflow armazena todos os dados capturados em arquivos que possuem nomes no formulário com a seguinte sintaxe:
sourceip.sourceport-destip.destportPasso 4
Podemos fazer uma lista de diretórios para verificar se o fluxo tcp foi capturado em algum arquivo disponível, executamos:
ls -l
PROLONGAR
Como mencionado antes, cada fluxo TCP é armazenado em seu próprio arquivo, onde encontramos diferentes formulários.
O primeiro arquivo 192.168.000.004.51548-040.112.187.188.05228 abriga os dados transferidos do host no qual foi executado por meio da porta selecionada para o host remoto por meio da porta indicada.
2. Como verificar os detalhes de navegação capturados pelo TCPflow Linux
Passo 1
Para verificar isso, podemos abrir outro terminal e executar um ping ou navegar na Internet, os detalhes de navegação que o TCPflow está capturando serão refletidos lá, executamos o seguinte:
sudo tcpflow -c
PROLONGAR
Passo 2
O TCPflow nos permite capturar todo o tráfego em uma única porta, como a porta 80 (HTTP), neste caso, você pode ver os cabeçalhos HTTP seguidos do conteúdo, executamos o seguinte:
sudo tcpflow porta 80
PROLONGAR
etapa 3
Podemos capturar pacotes de uma interface de rede específica, com o parâmetro -i para especificar o nome da interface como este:
sudo tcpflow -i enp0s3 porta 80Também é possível indicar um host de destino tomando seu endereço IP ou URL:
sudo tcpflow -c host www.solvetic.com
PROLONGAR
Passo 4
Será possível habilitar todos os processos dos scanners com o parâmetro -a:
sudo tcpflow -aEtapa 5
Podemos especificar um scanner especial a ser ativado, os scanners disponíveis incluem md5, http, netviz, tcpdemux e wifiviz, as opções a serem usadas são:
sudo tcpflow -e http sudo tcpflow -e md5 sudo tcpflow -e netviz sudo tcpflow -e tcpdemux sudo tcpflow -e wifivizEtapa 5
Se quisermos ativar o modo de verbo, podemos executar qualquer uma das seguintes opções:
sudo tcpflow -d 10 sudo tcpflow -v
PROLONGAR
Finalmente, para acessar a ajuda do utilitário executamos:
man tcpflowAssim, o TCPflow nos permite ter controle sobre todos os processos TCP em ambientes Linux de uma forma abrangente e completa.