Thark es una herramienta para realizar análisis de protocolos. Se utiliza a través de línea de comandos. Todo el manejo tiene que realizarse a través de comandos.
Como herramienta similar encontramos Tcpdump. Esta también es muy utilizada en entornos Linux que no disponen de entorno gráfico para trabajar.
Tshark puede realizar análisis en tiempo real o investigar una captura guardada. Estos son los conocidos ficheros pcap o pcapng. La ventaja que nos ofrece Tshark frente a otras herramientas en línea de comandos es su funcionamiento. Podríamos decir sin equivocarnos que es Wireshark, pero en línea de comandos. Esto quiere decir que las personas que estén acostumbradas a trabajar con Wireshark van a poder realizar las mismas tareas, pero sin tener que hacerlo a través de ventanas y botones. Lo que permite incluso utilizarlo o incorporarlo en scripts automatizados.
tshark -i tun0 -Y "http" 2>/dev/null
tshark -i tun0 -w Captura.cap 2>/dev/null
-i: Especifica la interfaz. En este caso tun0.-w: Especifica que queremos guardar la información. Los datos se guardarán en el archivo Captura.cap./dev/null: Es el dispositivo nulo, toma cualquier entrada que desee y la tira. Se puede usar para suprimir cualquier salida.
/dev/null –> LinkAhora, los resultados han quedado guardados en el archivo Captura.cap, para poder representar los archivos sustituimos la opción -i por -r:
tshark -r Captura.cap 2>/dev/null
Para filtrar y representar por pantalla los resultados guardados de un análisis con Tshark, utilizaremos la opción -Y:
tshark -r Captura.cap -Y “[Palabra Filtrada]” 2>/dev/null
Ejemplo:
tshark -r Captura.cap -Y "http" 2>/dev/null
En este ejemplo, Tshark representará la información que contenga la palabra http.
Empleando la opción -Tjson podremos ver por cada paquete filtrado pro la palabra http todos sus atributos en json.
tshark -r Captura.cap -Y “http” -Tjson 2>/dev/null
En el siguiente ejemplo vamos a ver como extraer toda la data en hexadecimal de un campo específico. En este caso Tshark mediante la opción
-Tfields especifica que queremos exportar un campo y data.data es el campo que queremos exportar.
tshark -r Captura.cap -Y “http” -Tfields -e “data.data” 2>/dev/null