Ya vimos en la primera parte de esta serie dedicada a Herramientas para la interpretación de capturas de red, el uso de Windump y TCPDump y la primera parte de la creación y establecimiento de filtros .pcap.
En la segunda hemos avanzado bastante en los filtros e interpretadas algunas capturas. Seguimos ahora con la herramienta de captura Tshark. Los comandos, aplicación de filtros y formateo de datos, preferencias de columnas, etc.
Introducción a Tshark.
Tshark no es otra cosa que la herramienta de captura de tráfico de red Wirehsark pero en línea de comandos. Se sitúa en un nivel intermedio entre capturadores como Windump o TCPDump y Wireshark que vermos más adelante.
Sin más dilación comenzamos a usar Tshark.
Listamos las interfaces:
root@bt:~# tshark -D 1. eth0 2. usbmon1 (USB bus number 1) 3. usbmon2 (USB bus number 2) 4. any (Pseudo-device that captures on all interfaces) 5. lo
Ejecutamos Tshark usando la interface eth0:
root@bt:~# tshark -i1 Running as user "root" and group "root". This could be dangerous. Capturing on eth0 0.000000 192.168.1.5 -> 82.159.204.86 TCP 6895 > http [FIN, ACK] Seq=1 Ack=1 Win=64167 Len=0 0.000752 82.159.204.86 -> 192.168.1.5 TCP http > 6895 [ACK] Seq=1 Ack=2 Win=64581 Len=0 0.462409 Dell_89:85:5b -> Broadcast ARP Who has 192.168.1.29? Tell 192.168.1.239 2.261727 3Com_dd:e9:07 -> Broadcast ARP Who has 192.168.1.1? Tell 192.168.1.56 6.260476 3Com_dd:e9:07 -> Broadcast ARP Who has 192.168.1.1? Tell 192.168.1.56 6.913459 Dell_d3:4f:0c -> Broadcast ARP Who has 192.168.1.28? Tell 192.168.1.237 7.211227 MS-NLB-PhysServer-01_00:00:00:00 -> Broadcast MS NLB MS NLB heartbeat ^C7 packets captured
Condicionando las capturas:
Podemos condicionar las capturas atendiendo, por ejemplo, a criterios de tiempo o de cantidad de paquetes capturados, haciendo que Tshark finalice la captura cuando deseemos:
- -c termina la captura hasta n paquetes
- -aduration n termina la captura hasta n segundos
- –afilesize n termina la captura hasta n Kb. (cuando salvemos a fichero la captura).
- -afiles n termina la captura hasta n ficheros (en caso de múltiples capturas)
Ejemplos:
- La captura termina después de 10 segundos: tshark -i1 -aduration:10
- La captura termina despues de salvar 200 Kb. en el fichero: tshark -i1 -afilesize:200 -w fichero.pcap
- La captura termina después de 10 paquetes capturados: tshark -i1 -c 10
Lectura y escritura de archivos pcap.
Con -r leemos un fichero previamente guardado y con -w lo salvamos.
Ejemplo:
tshark -i1 -f «dst port 80» -r captura1.pcap
(-f es para aplicar un filtro de captura)
Salida Tshark en formato hexadecimal y ascii.
Usamos el comando -x
La opción -R es para aplicar filtros, lo vemos ahora.
tshark -i2 -R "tcp.port == 23" -x Capturing on 3Com EtherLink PCI 2.198516 192.168.1.30 3Com_ed:89:c3 192.168.108.254 TCP 4510 > telnet [SYN] Seq=0 Win=64512 Len=0 MSS=1460 0000 00 14 22 5f a9 25 00 04 75 ed 89 c3 08 00 45 00 .."_.%..u.....E. 0010 00 30 fd ad 40 00 80 06 14 ad c0 a8 01 1e c0 a8 .0..@........... 0020 65 fe 11 9e 00 17 59 2e b1 e9 00 00 00 00 70 02 e.....Y.......p. 0030 fc 00 81 e4 00 00 02 04 05 b4 01 01 04 02 .............. 2.201146 192.168.108.254 Dell_5f:a9:25 192.168.1.30 TCP telnet > 4510 [SYN, ACK] Seq=0 Ack=1 Win=1024 Len=0 MSS=512 0000 00 04 75 ed 89 c3 00 14 22 5f a9 25 08 00 45 00 ..u....."_.%..E. 0010 00 2c fb e4 00 00 fd 06 d9 79 c0 a8 65 fe c0 a8 .,.......y..e... 0020 01 1e 00 17 11 9e 1b 05 d0 00 59 2e b1 ea 60 12 ..........Y...`. 0030 04 00 a7 89 00 00 02 04 02 00 00 00 ............ 2.201187 192.168.1.30 3Com_ed:89:c3 192.168.108.254 TCP 4510 > telnet [ACK] Seq=1 Ack=1 Win=64512 Len=0 0000 00 14 22 5f a9 25 00 04 75 ed 89 c3 08 00 45 00 .."_.%..u.....E. 0010 00 28 fd ae 40 00 80 06 14 b4 c0 a8 01 1e c0 a8 .(..@........... 0020 65 fe 11 9e 00 17 59 2e b1 ea 1b 05 d0 01 50 10 e.....Y.......P. 0030 fc 00 c3 91 00 00 ...... 2.203228 192.168.108.254 Dell_5f:a9:25 192.168.1.30 TELNET Telnet Data ... 0000 00 04 75 ed 89 c3 00 14 22 5f a9 25 08 00 45 00 ..u....."_.%..E. 0010 00 3a fb e5 00 00 fd 06 d9 6a c0 a8 65 fe c0 a8 .:.......j..e... 0020 01 1e 00 17 11 9e 1b 05 d0 01 59 2e b1 ea 50 18 ..........Y...P. 0030 04 00 c7 a8 00 00 ff fb 03 ff fb 01 0d 0a 50 61 ..............Pa 0040 73 73 77 6f 72 64 3a 20 ssword:
Indicadores de resolución de nombres (-N). No resolución (-n).
Con la opción -n indicamos que no se resuelvan los nombres de hosts:
tshark -i2 -n Capturing on 3Com EtherLink PCI 0.000000 192.168.1.201 00:1b:78:1e:88:c8 224.0.0.251 IGMP V1 Membership Report 5.745429 192.168.1.1 00:13:49:56:32:c7 224.0.0.1 IGMP V2 Membership Query 5.975411 192.168.1.201 00:1b:78:1e:88:c8 224.0.0.251 IGMP V1 Membership Report
Con la opción -N establecemos que indicadores de resulución queremos.
- -N m resolver dirección MAC
- -N n resolver nombres a nivel de red.
- -N t resolver nombres capa trasporte.
Modo promíscuo (-p)
No ponemos la tarjeta en modo promíscuo.
Aplicando filtros.
Tshark contempla dos tipos de Filtros; Filtros de capura y Filtros de visualización. Para los filtros de captura podemos hacer uso de lo ya aprendido en los filtros TCPDump / Windump, ya que usa la misma libreria pcap.
Los filtros de captura son los que se establecen para mostrar solo los paquetes que cumplan los requisitos indicados en el filtro. Si no establecemos ninguno, Tshark capturará todo el tráfico y lo presentará en pantalla.
Los filtros de visualización (Display Filer) establecen un criterio de filtro sobre las paquetes capturados o que se están capturando. Lo que hacemos es filtrar el tráfico. Estos filtros son más flexibles y pontentes.
Para aplicar estos filtros de captura usaremos el comando -f :
root@bt:~# tshark -i1 -f "dst port 80" Running as user "root" and group "root". This could be dangerous. Capturing on eth0 0.000000 192.168.1.100 -> 72.14.235.100 TCP 40015 > http [SYN] Seq=0 Win=5840 Len=0 MSS=1460 SACK_PERM=1 T SV=4285455 TSER=0 WS=6 0.131784 192.168.1.100 -> 72.14.235.100 TCP 40015 > http [ACK] Seq=1 Ack=1 Win=5888 Len=0 TSV=4285494 TSER=0 0.133639 192.168.1.100 -> 72.14.235.100 HTTP POST /safebrowsing/downloads?client=Firefox&appver=3.0.15&pver=2.2&wrkey= AKEgNiuTqlb61WEmMY6U6YKRbbN9ZVv853mj7cGrCW5udnr6MbJZmlvvh8tWhfMRgrvJPThzWWKOv0mu3blrYTMmx81XsJUWqg== HTTP/1.1 (text/plain) 0.426775 192.168.1.100 -> 72.14.235.100 TCP 40015 > http [ACK] Seq=830 Ack=201 Win=6912 Len=0 TSV=4285583 TSER=48173939 0.427045 192.168.1.100 -> 72.14.235.100 TCP 40015 > http [ACK] Seq=830 Ack=1649 Win=9856 Len=0 TSV=4285583 TSER=48173939 0.427455 192.168.1.100 -> 72.14.235.100 TCP 40015 > http [ACK] Seq=830 Ack=2048 Win=12736 Len=0 TSV=4285583 TSER=48173939
Aquí complicamos un poco más el filtro y condicionamos la captura para que termine a los 10 segundos:
root@bt:~# tshark -i2 -f "tcp[13] = 2 and port 25" -aduration:10 Capturing on 3Com EtherLink PCI 0.000000 192.168.1.30 3Com_ed:89:c3 192.168.103.240 TCP 4409 > smtp [SYN] Seq=0 Win=64512 Len=0 MSS=1460 1 packets captured
Aplicando los Dispaly Filters o Filtros de Visualización:
Usaremos para ello el comando -R.
tshark -i2 -R "tcp.port == 23" Capturing on 3Com EtherLink PCI 29.264737 192.168.1.30 3Com_ed:89:c3 192.168.108.254 TCP 4462 > telnet [SYN] Seq=0 Win=64512 Len=0 MSS=1460 29.267380 192.168.108.254 Dell_5f:a9:25 192.168.1.30 TCP telnet > 4462 [SYN, ACK] Seq=0 Ack=1 Win=1024 Len=0 MSS=512 29.267423 192.168.1.30 3Com_ed:89:c3 192.168.108.254 TCP 4462 > telnet [ACK] Seq=1 Ack=1 Win=64512 Len=0 29.269452 192.168.108.254 Dell_5f:a9:25 192.168.1.30 TELNET Telnet Data ... 29.270779 192.168.1.30 3Com_ed:89:c3 192.168.108.254 TELNET Telnet Data ...
Combinando filtros de captura y visualización ó display filters.
Podemos combinar ambos filtros en línea de comandos con Tshark usando los comandos -f (filtros de captura) que lo vimos en la primera parte y -R (filtros de visualización):
tshark -i 2 -f "port 25" -R "smtp.req.parameter contains "midominio"" Could not open file: 'Ericsson.xml', error: No such file or directory Capturing on 3Com EtherLink PCI 0.193559 192.168.1.30 3Com_ed:89:c3 192.168.100.241 SMTP Command: MAIL FROM: 0.196750 192.168.1.30 3Com_ed:89:c3 192.168.100.241 SMTP Command: RCPT TO:
Formateo de salida de datos.
Formateando los datos de Salida en Tshark.
Formateo de tiempo.
Con la opción -t podemos formatear la impresión de tiempo en nuestras capturas de diferentes formas:
- -t ad formato absoluto fecha y tiempo.
- -t a formato absoluto sin dato de fecha.
- -t r relativo en segundos entre primer paquete y el actual.
- -t d tiempo respecto al paquete anterior.
Ejemplos:
-t ad
2008-05-02 10:00:11.133511 192.168.1.1 00:13:49:56:32:c7 224.0.0.1 IGMP V2 Membership Query
-t a
10:02:26.148340 192.168.1.1 00:13:49:56:32:c7 224.0.0.1 IGMP V2 Membership Query
-t r
0.000000 192.168.1.201 00:1b:78:1e:88:c8 224.0.0.251 IGMP V1 Membership Report
2.987708 192.168.1.201 00:1b:78:1e:88:c8 224.0.1.60 IGMP V1 Membership Report
Seguimos con otras formas de formatear datos.
Podemos formatear la salida de los datos de paquetes capturados para su mejor decodificación o tratamiento externo. Lo haremos con la opción -T en combinación con -e y -E.
Con -T especificamos el formato de los datos, es decir, si lo queremos en formato XML, texto, postscript o por campos. Con la opción -e especificamos que campos mostramos cuando usemos la opción -T fields. Con la opción -E mostramos la información de los campos especificados con -e.
Vamos a ver todo esto por partes y de forma más detallada:
Formateo de tipo de datos (-T)
- -T psml / -T pdml formato XML psml ó pdml
- -T ps formato postscript
- -T text formato texto. Por defecto
- -T fields formato campos seleccionados. Los campos a mostrar en la capturas lo indicaremos con la opción -e. Por ejemplo. Si queremos mostrar el campo IP lo haremos de la forma -e ip.addr. Lo vemos ahora con unos ejemplo.
Formateo de especificacion de campos a mostrar (-e).
Indicaremos con -e los campos a mostrar de nuestras capturas. Si solo queremos mostrar el campo IP y el puerto UDP haremos lo siguiente:
-e ip.addr -e udp.port
El comando -e necesariamente debe ir acompañado de -T fields.
Formateo de información de campos mostrados (-E)
Nos muestra los campos especificados con -e. además podemos, para mostroar mejor los datos capturados, establecer separadores, cabeceras, etc.
- -E headers=y/n establece si imprimimos o no la cabecera de los campos indicados en -e
- -E separators=/t | /s [caracter] establecemos un separador para los campos mostrados en -e ó un separador tipo caracter.
- -E quote=d|s|n delimitamos, los campos mostrados con comillas, comillas simples o sin delimitar.
Ejemplos de combinación de comandos formateo de salida de datos.
A continuación, unos ejemplos de lo explicado para formateo:
Volcado de la información en formato ps:
root@bt:~# tshark -i1 -n t- ad -T ps %! %!PS-Adobe-2.0 % % Wireshark - Network traffic analyzer % By Gerald Combs <[email protected]> % Copyright 1998 Gerald Combs % %%Creator: Wireshark %%Title: Wireshark output %%DocumentFonts: Helvetica Courier %%EndComments %! % % Ghostscript http://ghostscript.com/ can convert postscript to pdf files. % % To convert this postscript file to pdf, type (for US letter format): % ps2pdf filename.ps % % or (for A4 format): % ps2pdf -sPAPERSIZE=a4 filename.ps % % ... and of course replace filename.ps by your current filename. % % The pdfmark's below will help converting to a pdf file, and have no % effect when printing the postscript directly. % % This line is necessary if the file should be printable, and not just used % for distilling into PDF: % /pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse % % This tells PDF viewers to display bookmarks when the document is opened: % [/PageMode /UseOutlines /DOCVIEW pdfmark % Get the Imagable Area of the page clippath pathbbox % Set vmax to the vertical size of the page, % hmax to the horizontal size of the page. /vmax exch def /hmax exch def pop pop % junk % 1/2-inch margins /lmargin 36 def % left margin /tmargin vmax 56 sub def % top margin /bmargin 36 def % bottom margin /pagenumtab hmax 36 sub def % right margin % Counters /thispagenum 1 def % Strings /pagenostr 7 string def /formfeed { printpagedecorations showpage % we need a new current point after showpage is done lmargin % X vpos % Y moveto /vpos tmargin def
….
….
Formateamos por tipo de campos seleccionados (-T fields). Seleccionamos los campos número de frame, dirección IP y cabecera TCP (-e frame.number -e ip.addr -e tcp). Además, no resolvemos nombres de hosts (-n).
root@bt:~# tshark -i1 -n -T fields -e frame.number -e ip.addr -e tcp Running as user "root" and group "root". This could be dangerous. Capturing on eth0 1 192.168.1.255 2 3 4 5 192.168.1.245 6 192.168.1.100 7 208.88.120.8 Transmission Control Protocol, Src Port: 57601 (57601), Dst Port: 80 (80), Seq: 0, Len: 0 8 9 192.168.1.100 Transmission Control Protocol, Src Port: 80 (80), Dst Port: 57601 (57601), Seq: 0, Ack: 1, Len: 0 10 208.88.120.8 Transmission Control Protocol, Src Port: 57601 (57601), Dst Port: 80 (80), Seq: 1, Ack: 1, Len: 0 11 208.88.120.8 Transmission Control Protocol, Src Port: 57601 (57601), Dst Port: 80 (80), Seq: 1, Ack: 1, Len: 492 12 192.168.1.100 Transmission Control Protocol, Src Port: 80 (80), Dst Port: 57601 (57601), Seq: 1, Ack: 493, Len: 0 13 192.168.1.100 Transmission Control Protocol, Src Port: 80 (80), Dst Port: 57601 (57601), Seq: 1, Ack: 493, Len: 266 14 208.88.120.8 Transmission Control Protocol, Src Port: 57601 (57601), Dst Port: 80 (80), Seq: 493, Ack: 267, Len: 0 15 192.168.1.100 Transmission Control Protocol, Src Port: 80 (80), Dst Port: 57601 (57601), Seq: 267, Ack: 493, Len: 0
Ahora queremos capturas solo lo referente al protocolo HTTP. Además queremos que se nos muestre información de:
– http.host información de host al que se realiza la petición
– http.request.uri petición de URI que se realiza (la información viene después de /)
– http.response.code información de código de respuesta http.
Más información de filtros HTTP: http://seguridadyredes.nireblog.com/post/2010/06/24/wireshark-tshark-filtros-http
root@bt:~# tshark -i1 -n -R http -T fields -e http.host -e http.request.uri -e http.response.code http.host http.request.uri http.response.code Running as user "root" and group "root". This could be dangerous. Capturing on eth0 www.backtrack-linux.org /development/ 200 www.backtrack-linux.org /wp-includes/images/rss.png 200 www.backtrack-linux.org /forums 301 www.backtrack-linux.org /forums/ 200 aircrack-ng.org / 200 aircrack-ng.org /resources/public.css 200 aircrack-ng.org /resources/favicon.ico aircrack-ng.org /resources/download.png aircrack-ng.org /resources/aircrack-ng-new-logo.jpg 200 200 200 www.daboweb.com / www.daboweb.com /wp-content/themes/big-city/favicon.ico www.daboweb.com /wp-content/themes/big-city/style.css www.daboweb.com /wp-content/plugins/add-to-any/addtoany.min.css?ver=1.0 www.daboweb.com /wp-content/plugins/contact-form-7/styles.css?ver=2.3 www.daboweb.com /index.php?ak_action=aktt_css 200 www.daboweb.com /wp-content/themes/big-city/images/header.gif 200 www.daboweb.com /icono-foro.png 200 www.daboweb.com /images/news/seguridad.jpg 200 www.daboweb.com /wp-content/uploads/2008/11/comenta.jpg 200 www.daboweb.com /images/news/hardware.jpg 200 www.daboweb.com /gifs/breves.gif 200 www.daboweb.com /images/news/sistemas-operativos.jpg 200 www.daboweb.com /images/news/webmaster.jpg 200 www.daboweb.com /Windows/Temp/moz-screenshot.png 200 www.daboweb.com /Windows/Temp/moz-screenshot-1.png 200 www.daboweb.com /Windows/Temp/moz-screenshot-2.png 200 www.daboweb.com /gifs/rss_dabo.gif www.daboblog.com /wp-content/uploads/2010/01/twitter-logo.jpg www.daboblog.com /gifs/interdominios.gif 200 www.daboweb.com /cc2.jpg feeds.feedburner.com /~fc/DabowebRSS?bg=99CCFF&fg=444444&anim=0 200 200 www.daboweb.com /wp-content/themes/big-city/images/cubes.gif 200 200 200 200 www.daboweb.com /wp-content/themes/big-city/images/bg.gif www.daboweb.com /wp-content/plugins/add-to-any/favicon.png 200 200 404 404 www.daboweb.com /wp-content/themes/big-city/favicon.ico 404 404 404
Ahora vamos capturar todas los paquetes referentes al host 192.168.1.100 y que nos muestre los campos:
– ip.scr IP origen
– ip.dst IP destino
– ip.proto campo protocolo de la cabecera IP
– ip.id campo ID de la cabecera IP.
Má información sobre cabecera datagrama IP y sus campos: http://seguridadyredes.nireblog.com/post/2009/11/05/wireshark-windump-analisis-capturas-trafico-red-interpretacian-datagrama-ip-actualizacian
root@bt:~# tshark -i1 -T fields -e ip.src -e ip.dst -e ip.proto -e ip.id -R src host 192.168.1.100 Running as user "root" and group "root". This could be dangerous. Capturing on eth0 192.168.1.100 192.168.1.245 17 0x8d80 192.168.1.100 82.159.204.86 6 0xf489 192.168.1.100 82.159.204.86 6 0xf48a 192.168.1.100 82.159.204.86 6 0xf48b 192.168.1.100 82.159.204.86 6 0xf48c 192.168.1.100 82.159.204.86 6 0xf48d 192.168.1.100 82.159.204.86 6 0xf48e 192.168.1.100 82.159.204.86 6 0xf48f 192.168.1.100 82.159.204.86 6 0xf490 192.168.1.100 82.159.204.86 6 0x3e05 192.168.1.100 82.159.204.86 6 0xf491 192.168.1.100 82.159.204.86 6 0xf492 192.168.1.100 82.159.204.86 6 0xf493 192.168.1.100 82.159.204.86 6 0xf494 192.168.1.100 82.159.204.86 6 0xf495 192.168.1.100 82.159.204.86 6 0xf496 192.168.1.100 82.159.204.86 6 0xf497 192.168.1.100 82.159.204.86 6 0xf498 192.168.1.100 82.159.204.86 6 0xf499 192.168.1.100 82.159.204.86 6 0xf49a 192.168.1.100 82.159.204.86 6 0x3e06 192.168.1.100 82.159.204.86 6 0xf49b 192.168.1.100 82.159.204.86 6 0xf49c 192.168.1.100 82.159.204.86 6 0xf49d 192.168.1.100 82.159.204.86 6 0x3e07 192.168.1.100 82.159.204.86 6 0xf49e 192.168.1.100 82.159.204.86 6 0x7792
Realizamos ahora una captura precida. Filtramos por protocolo IP. mostramos campos IP:
– ip.addr
– ip.ttl
– ip.flags
Además:
– usamos como separador de columnas la «,». (-E separator=,)
– usamos las comillas para delimitar los campos (-E quote=d)
root@bt:~# tshark -i1 -R ip -T fields -e ip.addr -e ip.ttl -e ip.flags -E quote=d -E separator=, ip.addr,ip.ttl,ip.flags Running as user "root" and group "root". This could be dangerous. Capturing on eth0 "192.168.1.245","64","0x02" "192.168.1.100","128","0x00" "82.159.204.86","64","0x02" "192.168.1.100","128","0x00" "82.159.204.86","64","0x02" "82.159.204.86","64","0x02" "192.168.1.100","128","0x00" "192.168.1.100","128","0x00" "82.159.204.86","64","0x02" "192.168.1.100","128","0x00" "82.159.204.86","64","0x02" "192.168.1.100","128","0x00" "82.159.204.86","64","0x02" "192.168.1.100","128","0x00" "82.159.204.86","64","0x02" "192.168.1.100","128","0x00" "82.159.204.86","64","0x02" "192.168.1.100","128","0x00"
Capturamos ahora todas las peticiones al puerto destino 53 y mostramos la IP origen y el DNS Query Name:
root@bt:~# tshark -i1 -n -e ip.src -e dns.qry.name -E separator=";" -T Fields port 53 Running as user "root" and group "root". This could be dangerous. Capturing on eth0 192.168.1.100;www.gerix.it 192.168.1.444;www.gerix.it 192.168.1.100;www.backtrack-linux.org 192.168.1.444;www.backtrack-linux.org 192.168.1.100;www.adobe.com 192.168.1.444;www.adobe.com 192.168.1.100;www.daboweb.com 192.168.1.444;www.daboweb.com
Personalización de columnas de información de salida.
Por defecto Tshark nos muestra una línea por paquete y estos, a su vez, contienen información de:
- marca de tiempo
- dirección origen
- dirección destino
- protocolo
- puerto origen
- puerto destino
- información del contenido del paquete
tshark -i2 -n tcp Capturing on 3Com EtherLink PCI (Microsoft's Packet Scheduler) 0.000000 192.168.1.5 -> 81.202.252.169 TCP 1043 > 24168 [PSH, ACK] Seq=1 Ack=1 Win=64079 Len=2 0.221039 81.202.252.169 -> 192.168.1.5 TCP 24168 > 1043 [ACK] Seq=1 Ack=3 Win=64246 Len=0 0.429225 81.202.252.169 -> 192.168.1.5 TCP 24168 > 1043 [PSH, ACK] Seq=1 Ack=3 Win=64246 Len=2 0.640058 192.168.1.5 -> 81.202.252.169 TCP 1043 > 24168 [ACK] Seq=3 Ack=3 Win=64077 Len=0
Pues bien, esta forma de mostrar la información puede ser personalizada mediante el comando -o column.format.
La sintáxias sería: -o column.format:»»nombrecolumna«, «%formato«»
Por ejemplo:
Queremos mostrar solo la información de origen y destino de los paquetes.
NOTA: Ahora estamos con Tshark en Windows y usamos la doble comilla.
tshark -i2 -o column.format:""Source", "%s","Destination", "%d"" Capturing on 3Com EtherLink PCI (Microsoft's Packet Scheduler) 192.168.1.5 -> 80.47.206.98 80.47.206.98 -> 192.168.1.5 192.168.1.5 -> 72.14.235.104 192.168.1.5 -> 72.14.235.190 72.14.235.104 -> 192.168.1.5 72.14.235.104 -> 192.168.1.5 192.168.1.5 -> 72.14.235.104 192.168.1.5 -> 72.14.235.104 192.168.1.5 -> 72.14.235.104 72.14.235.190 -> 192.168.1.5 72.14.235.190 -> 192.168.1.5 192.168.1.5 -> 72.14.235.190
Ahora queremos añadir información del protcolo:
tshark -i2 -o column.format:""Source", "%s","Destination", "%d","Protocol", "%p"" Capturing on 3Com EtherLink PCI (Microsoft's Packet Scheduler) Giga-wyl_cf:fa:17 -> Broadcast ARP 192.168.1.61 -> 192.168.1.255 BROWSER 192.168.1.5 -> 192.168.1.xxx DNS 192.168.1.xxx -> 192.168.1.5 DNS 192.168.1.5 -> 66.249.92.104 TCP 66.249.92.104 -> 192.168.1.5 TCP 192.168.1.5 -> 66.249.92.104 TCP 192.168.1.5 -> 66.249.92.104 HTTP 66.249.92.104 -> 192.168.1.5 TCP 66.249.92.104 -> 192.168.1.5 TCP 192.168.1.5 -> 66.249.92.104 TCP 66.249.92.104 -> 192.168.1.5 TCP 66.249.92.104 -> 192.168.1.5 TCP 66.249.92.104 -> 192.168.1.5 TCP 192.168.1.5 -> 66.249.92.104 TCP 66.249.92.104 -> 192.168.1.5 TCP 66.249.92.104 -> 192.168.1.5 TCP 192.168.1.5 -> 66.249.92.104 TCP 66.249.92.104 -> 192.168.1.5 HTTP 192.168.1.5 -> 66.249.92.104 HTTP 192.168.1.5 -> 192.168.1.xxx DNS 66.249.92.104 -> 192.168.1.5 TCP 192.168.1.5 -> 192.168.1.xxx DNS 192.168.1.5 -> 192.168.1.245 DNS
Con la opción -o, además de modificar las columnas podemos modificar otros aspectos de las preferencias. Lo veremos en el próximo capítulo. Veremos también las estadísticas con Tshark y otros aspectos avanzados de la aplicación de filtros.