Arquivos de Tags: Tcpdump

Conhecendo o Tcpdump

O tcpdump é  um analisador de pacotes que roda em modo texto( e também um dos sniffers mais famosos que existe). Sua utilização é simples e sem mistérios, bastando apenas ter os conhecimentos básicos de redes TCP/IP e basta roda-lo com o root que ele começa a fazer o serviço. Segue uma pequena lista com alguns parâmetros.

-D: interfaces vistas pelo tcpdump

-c: captura c pacotes

-e: informação de camada de enlace

-A: imprime os pacotes em ASCII

-n: não resolve nomes (mostra endereços como são)

-v : modo verbose (pode-se aumenta-lo com -vv -vvv)

-x: mostra o PDU em hexadecimal

-S: mostra números de sequência em formato absoluto (por padrão o tcpdump
mostra os números relativos aos valores iniciais estabelecidos na conexão)

-s: tamanho do pacote

-t: retira a informação de timestamp do início da linha

-ttt: mostra a diferença de tempo para uma referência em us (microssegundos)
expressão – indica que pacotes devem ser mostrados (dumped) Ex.:
tcpdump -n icmp
tcpdump src <origem>
tcpdump dst <destino>
tcpdump host <máquina>

Agora vamos a algumas dicas o seu uso. Para armazenar a saída (em modo texto) em um arquivo digite:
tcpdump –c 100 > trace.txt

Com esse comando abaixo ele ira sniffar os pacotes que passam pela interface eth0:
#tcpdump -i eth0

Usando esse comando ele ira capturar todos os pacotes vindos de 192.168.0.2 (que também funciona com URL, que será explicado mais abaixo):
#tcpdump -i eth0 src host 192.168.0.2

É também e possível utiliza-lo com sites, por exemplo:
#tcpdump -i eth0 src host www.google.com

dessa forma ele ira capturar todos os pacotes que vem de www.google.com. Para verificar todo trafego que vem da porta de origem 666:
#tcpdump -i eth0 src port 666

O argumento -n evita name service queries, a resolução de DNS:
#tcpdump -n icmp

Para Scaneiar restritamente TCP ou UDP:
#tcpdump -n -t tcp or udp

Para scaneiar restritamente TCP port 22:
#tcpdump tcp port 22

Para scaneiar os dois IP (comunicação entre dois IP), excelente se o tcpdump estiver no gateway:
#tcpdump host \(10.10.100.100 and 10.10.200.200\)

Para scaneiar a porta 666 mas descarta host IP 192.168.0.1:
#tcpdump port 666 and not host 192.168.0.1

Capturando pacotes com origem em 172.25.50.1 e destino 201.XXX.XXX.XXX, com exceção da porta 666:
#tcpdump -i en1 -n src 172.25.50.1 and dst 201.XXX.XXX.XXX and port not 666.

Agora, um pouco mais chique, usando egrep – isso vai mostrar todos os seus pedidos da Web em tempo real:
#tcpdump-i eth0-Um porta-n 80 | egrep-i (GET. / | POST. / | Host:)

Se você esqueceu sua senha pop3, mas tê-lo guardado no cliente, isto também se aplica às senhas para a web, eu tenho utilizado este um lote, em vez de o “esqueci senha” mecanismo…
#tcpdump-i eth0-n port 110-A | egrep-i (user | pass)

Obtêm somente os segmentos com SYN ligado:
#tcpdump 'tcp[13] & 2==2'

Para filtrar pacotes com cabeçalhos maiores de 20 bytes:
#tcpdump 'ip[0] & 0x0f > 5'

Para filtra o 10º byte ou 9º offset (protocol field) – TCP = port 6 UDP = port 17, por exemplo:
#tcpdump ‘ip[9] = 6’

Capturar o tráfego de pacotes TCP que tenham o flag SYN ligado (ou seja apenas os pacotes de solicitações de conexão). Use o comando abaixo:
#tcpdump -i eth0 'tcp[13] & 2 == 2' –w syn.cap –c 5

Tabela com os valores utilizados para trabalhar com flags do tcp.

O resto depende da criatividade…

Referências e links

[]‘s

Pagina 1 of 11
SEO Powered by Platinum SEO from Techblissonline