sql >> Base de Datos >  >> RDS >> Mysql

Cómo usar wireshark para capturar mysql query sql claramente

Puede usar tshark y guardar en un pcap o simplemente exportar los campos que le interesen.

Para guardar en un pcap (si desea usar wireshark para verlo más tarde):

tshark -i lo -Y "mysql.command==3" -w outputfile.pcap
tshark -i lo -R "mysql.command==3" -w outputfile.pcap
-R is deprecated for single pass filters, but it will depend on your version
-i is interface so replace that with whatever interface you are using (e.g -i eth0)

Para guardar en un archivo de texto:

tshark -i lo -Y "mysql.command==3" -T fields -e mysql.query > output.txt

También puede usar filtros BPF con tcpdump (y filtros precap de wireshark). Son más complejos, pero menos exigentes para su sistema si está capturando una gran cantidad de tráfico.

sudo tcpdump -i lo "dst port 3306 and  tcp[(((tcp[12:1]&0xf0)>>2)+4):1]=0x03" -w outputfile.pcap

NOTA:
*Esto busca 03 (similar a mysql.command==3) dentro de la carga útil de TCP.
**Dado que este es un filtro bastante impreciso, también agregué 3306 para restringir solo el tráfico destinado a ese puerto. *** El filtro se basa en su captura de pantalla. No puedo validarlo en este momento, así que avísame si no funciona.

Salida de ejemplo: