2010-03-09 6 views
8

Estoy tratando de automatizar un proceso manual repetitiva para el cual uso WireShark:¿Hay alguna manera de exportar archivos mediante programación utilizando las instalaciones de Wireshark?

1) cargar un archivo dado PCAP

2) Aplicar un filtro simple para un determinado protocolo de

3) Usar la cuadro de diálogo de exportación para exportar los paquetes mostrados al archivo CSV

4) Use el cuadro de diálogo de exportación para exportar los paquetes mostrados en formato XML PDML.

Esto es tedioso y requiere la participación humana en el medio de un proceso que es en su mayoría automatizado (incluido el análisis de los archivos para producir informes).

¿Hay alguna forma de automatizar Wireshark, o acceder de alguna manera a las bibliotecas subyacentes utilizadas para exportar?

ACTUALIZACIÓN: Como varias personas aquí indicadas, TShark resulta ser el camino a seguir. La línea de comandos exacta Terminé usando es:

tshark -r MyDataFile.pcap -T pdml -R MyProtocol > MyOutputFile.xml\ 

Luego utilizo un analizador XML basado en eventos (expat de Python) para analizar el archivo de 2 GB generada

Respuesta

6

Miré en la lista de dependencias de wireshark en mi sistema Debian, y encontré Tshark: es la versión de línea de comandos de wireshark.

Parece interesante, pero no he leído el manual todavía, sin embargo, es más fácil de usar.

También me mantendré atento a este hilo y publicaré más información cuando lo empiece a usar.

+0

Ok, es increíble. Puede extraer el campo que desee y proporcionar tanto el filtrado pcap como el filtro de visualización wireshark. La salida se presiona en la salida estándar, por lo tanto, puede escribirla fácilmente. – Dacav

0

yo no he tratado de automatizar Wireshark antes , aunque he tenido que hacer algo similar a lo que describes. Terminé reduciendo el puñado de pasos humanos (y por lo tanto propensos a errores) a un paso que se automatizó.

Autohotkey es mi solución para muchas tareas repetitivas basadas en GUI. Puede escribir fácilmente una secuencia de comandos de reproducción de teclas que realizará todos los pasos anteriores. Probablemente tendrá que hacer que incremente el nombre de archivo automáticamente. También podría hacer que su otra herramienta automatizada inicie la secuencia de comandos de Autohotkey con una pulsación de tecla.

1

Creo que lo que debes hacer es mirar en tshark. Esa es la versión de línea de comandos de Linux, que permitirá exactamente lo que pide (suponiendo que tenga acceso). Y, por supuesto, esto supone que es aceptable ejecutar tshark y luego revisar las salidas manualmente.

+0

Es curioso que obtuve un voto negativo sobre esto, dado que es casi idéntico a la respuesta aceptada, y se publicó 10 minutos antes de la respuesta aceptada. Extraño. – MJB

Cuestiones relacionadas