Em um dispositivo localizado entre a minha rede local e um roteador, (todo o tráfego passa) eu preciso ler o nome comum do pacote Hello Server Certificate.
Então, estou tentando descobrir como obter o filtro adequado com o tcpdump.
Encontrei ajuda com este artigo: link Explica como usar o filtro avançado nos campos IP e TCP.
Eu experimento esse tipo de filtro:
tcpdump -i any 'tcp and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)' -A -s 0 -v | grep 'Host\|id-at-commonName='
Como explicado no artigo, "Estamos combinando com qualquer pacote que contenha dados".
Funciona para o campo Host e para muitos outros dados, mas não consigo corresponder ao campo id-at-commonName=
que está no campo SSL (portanto, no campo Dados TCP?).
Para ter certeza de que capturei um arquivo pcap com exatamente o mesmo filtro (sem o grep) e quando abri-lo com o Wireshark, posso ler todos os nomes do Certificado Comum.
Eu devo usar um filtro tcpdump porque eu preciso obter os dados "on the fly".
Alguém pode me dizer por que não consigo ver esses dados por meio do tcpdump?
Tags tcpdump