Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/07/2003, 01:49
Avatar de Alfon
Alfon
Colaborador
 
Fecha de Ingreso: octubre-2000
Mensajes: 1.976
Antigüedad: 24 años, 2 meses
Puntos: 14
Analizando la red con TCPDump ( Parte V )

Retomo esta seríe sobre análisis de sistemas usando TCPDump/windump, que ya va siendo hora.

CAPÍTULO V: FILTROS AVANZADOS II

INTRODUCCIÓN

Vimos en los capítulos II / III los filtros avanzados de Windump / TCPDump y el uso del formato: proto[x:y] = valor para leer datos en cabeceras de protocolos a monitorizar. Por ejemplo:

C:\scan>windump icmp[0] = 8

En este capítulo vamos a seguir avanzando en ello.


FORMATO DE FILTROS

El formato genérico de los filtros es:

expresión relación expresión

relación puede ser >,<, >= <=, = y !=

expresión puede ser el protocolo, una expresión aritmética, operadores binarios, etc,

De esta manera, si estudiamos el filtro del ejemplo de arriba:

C:\scan>windump icmp[0] = 8

* vemos que la expresión es la palabra reservada icmp (protocolo) junto a un valor 0

*la relación que es = y otra expresión cuyo valor es 8


Veamos otro ejemplo:

udp[0:2] < 1024

* expresión udp[0:2]
* relación <
* expresión 1024

En la expresión udp[0:2], vemos el protocolo udp y unos valores, dentro de la misma expresión , [0:2]. Esto significa que se sitúe en el comienzo del octeto 0 o primer octeto de la cabecera udp y a partir de ahí se lea 2 octeos, es decir, que se lea el campo de "Puerto de origen".

Estos dos octetos serían, según el gráfico de más abajo, los bits 0 al 15.



Filtros para protocolo UDP

Paquetes udp cuyo puerto de origen sean menor de 1024

Código:
C:\scan>windump "udp[0:2] < 1024"

windump: listening on \Device\NPF_{604C8AE3-5FAC-45A5-BFAA-81175A8C32BF}

11:02:51.453841 IP CCZ.137 > ABANCE-2.137: udp 68

11:02:51.928483 IP INFOGRAFIA3.137 > ABANCE-2.137: udp 50

11:02:51.928770 IP ABANCE-2.137 > INFOGRAFIA3.137: udp 337

11:02:51.931468 IP INFOGRAFIA3.137 > CCZ.137: udp 50

11:02:51.931630 IP INFOGRAFIA3.137 > CCZ.137: udp 50

11:02:51.931987 IP CCZ.137 > INFOGRAFIA3.137: udp 229

11:02:51.932133 IP CCZ.137 > INFOGRAFIA3.137: udp 229

11:02:52.956160 IP CCZ.137 > ABANCE-2.137: udp 68

11:02:54.458536 IP CCZ.137 > ABANCE-2.137: udp 68

11:02:59.421242 IP 192.168.5.6.137 > 192.168.5.255.137: udp 68

11:02:59.940882 IP INFOGRAFIA3.137 > 192.168.5.6.137: udp 50

11:03:00.168203 IP 192.168.5.6.137 > 192.168.5.255.137: udp 68

11:03:00.919331 IP 192.168.5.6.137 > 192.168.5.255.137: udp 68

11:03:01.440681 IP INFOGRAFIA3.137 > 192.168.5.6.137: udp 50

11:03:01.495085 IP SERVIMP.137 > 192.168.1.20.137: udp 68

11:03:01.670454 IP 192.168.5.6.137 > 192.168.5.255.137: udp 68

Paquetes udp cuyo puerto de destino sea mayor de 4000

[code]C:\scan>windump "udp[2:2] > 4000"

windump: listening on \Device\NPF_{604C8AE3-5FAC-45A5-BFAA-81175A8C32BF}

11:08:49.417548 IP INFOGRAFIA5.1035 > 213.54.231.54.4665: udp 18

11:08:50.424627 IP INFOGRAFIA5.1035 > 213.54.231.54.4665: udp 18

11:08:51.417438 IP INFOGRAFIA5.1035 > 213.54.231.54.4665: udp 18

11:08:52.422087 IP INFOGRAFIA5.1035 > 213.54.231.54.4665: udp 18

11:08:53.423175 IP INFOGRAFIA5.1035 > 213.54.231.54.4665: udp 18

11:08:54.429816 IP INFOGRAFIA5.1035 > 213.54.231.54.4665: udp 18

11:08:56.427773 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

11:08:57.434055 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

11:08:58.462111 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

11:08:59.458277 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

11:09:00.469781 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

11:09:01.476682 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

11:09:02.463961 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

11:09:03.472875 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

11:09:04.465988 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

11:09:05.470583 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

11:09:06.477664 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

11:09:07.472918 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

11:09:08.474136 IP INFOGRAFIA5.1035 > 213.23.141.69.4665: udp 18

1161 packets received by filter

0 packets dropped by kernel[/b]

Otros filtros para udp:

udp[0:2] puerto origen

udp[2:2] puerto destino

udp[4:2] longitud datagrama

udp[6:2] Suma de comprobación


Filtros para IP

Para especificar una dirección IP tcpdump / windump trabaja mejor con el formato hexadecimal.

Para una dirección 192.168.4.15, su equivalente en hexadecimal sería:

192 > C0

168 > A8

4 > 04


15 > 0F

es decir:

C0A8040F

Para windump añadimos el indicativo de que se trata de formato hexadecimal:

0x

y nos quedaría:

0xC0A8040F



Apliquemos esto a nuestros ejemplos de filtros:

Datagramas IP cuyo IP de origen sea 0xC0A8040F o 192.168.4.15

Código:
C:\scan>windump "ip[12:4] = 0xC0A8040F"

windump: listening on \Device\NPF_{604C8AE3-5FAC-45A5-BFAA-81175A8C32BF}

11:58:18.330623 IP 192.168.4.15.1080 > INFOGRAFIA5.4288: P 1718835398:1718836858(1460)

   ack 110490685 win 63972

11:58:18.470208 IP 192.168.4.15.1080 > INFOGRAFIA5.4288: P 1460:2600(1140) ack 1 win 63972

11:58:18.614849 IP 192.168.4.15.1080 > INFOGRAFIA5.2376: . ack 3733417890 win 64240

11:58:18.614857 IP 192.168.4.15.1080 > INFOGRAFIA5.4233: . ack 80965400 win 64240

11:58:19.415469 IP 192.168.4.15.1080 > INFOGRAFIA5.4288: P 2600:3900(1300) ack 1 win 63972

11:58:19.419619 IP 192.168.4.15.1080 > INFOGRAFIA5.2376: . ack 1301 win 62940

11:58:19.520221 IP 192.168.4.15.1080 > INFOGRAFIA5.4233: . ack 1301 win 62940

11:58:19.632523 IP 192.168.4.15.1080 > INFOGRAFIA5.4288: P 3900:5360(1460) ack 1 win 63972

11:58:19.774521 IP 192.168.4.15.1080 > INFOGRAFIA5.4288: P 5360:6500(1140) ack 1 win 63972

11:58:19.942664 IP 192.168.4.15.1080 > INFOGRAFIA5.4288: P 6500:7960(1460) ack 1 win 63972

11:58:19.966413 IP 192.168.4.15.8080 > INFOGRAFIA5.4509: S 1794965924:1794965924(0)

   ack 169718740 win 64240 <m

ss 1460,nop,nop,sackOK>

Datagramas IP cuyo IP de origen sea mayor que 192.168.4.15

Código:
C:\scan>windump -n "ip[12:4] > 0xC0A8040F"

windump: listening on \Device\NPF_{604C8AE3-5FAC-45A5-BFAA-81175A8C32BF}

12:02:18.737917 IP 192.168.5.241.3584 > 192.168.5.240.445: P 1920852500:1920852553(53)

   ack 3198424692 win 6328

2 (DF)

12:02:18.738023 IP 192.168.5.240.445 > 192.168.5.241.3584: P 1:54(53) ack 53 win 63364 (DF)

12:02:18.874284 IP 192.168.5.241.3584 > 192.168.5.240.445: . ack 54 win 63229 (DF)

12:02:20.820682 IP 192.168.4.20.139 > 192.168.4.3.1030: P 9249826:9249869(43)

   ack 3736451662 win 8083 (DF)

12:02:20.821064 IP 192.168.4.20.139 > 192.168.4.3.1030: P 43:166(123) ack 64 win 8020 (DF)

12:02:20.821274 IP 192.168.4.20.139 > 192.168.4.3.1030: P 166:238(72) ack 127 win 7957 (DF)

12:02:20.821482 IP 192.168.4.20.139 > 192.168.4.3.1030: P 238:326(88) ack 190 win 7894 (DF)

12:02:20.821717 IP 192.168.4.20.139 > 192.168.4.3.1030: P 326:377(51) ack 311 win 7773 (DF)

12:02:20.829142 IP 192.168.4.20.139 > 192.168.4.3.1030: P 377:420(43) ack 386 win 7698 (DF)

12:02:20.849320 IP 192.168.4.20.139 > 192.168.4.3.1030: P 420:463(43) ack 461 win 7623 (DF)

12:02:20.869278 IP 192.168.4.20.139 > 192.168.4.3.1030: P 463:586(123) ack 524 win 7560 (DF)

12:02:20.909565 IP 192.168.4.20.139 > 192.168.4.3.1030: P 586:658(72) ack 587 win 7497 (DF)

12:02:20.929615 IP 192.168.4.20.139 > 192.168.4.3.1030: P 658:709(51) ack 679 win 7405 (DF)

12:02:20.989665 IP 192.168.4.20.139 > 192.168.4.3.1030: P 709:760(51) ack 867 win 8760 (DF)

12:02:21.009875 IP 192.168.4.20.139 > 192.168.4.3.1030: P 760:811(51) ack 988 win 8639 (DF)

12:02:21.029763 IP 192.168.4.20.139 > 192.168.4.3.1030: P 811:854(43) ack 1063 win 8564 (DF)

12:02:21.653488 IP 192.168.4.20.139 > 192.168.4.5.1030: P 110179275:110179314(39)

   ack 560248901 win 8450 (DF)

12:02:21.665478 IP 192.168.4.20.139 > 192.168.4.5.1030: P 39:78(39) ack 115 win 8336 (DF)

Datagramas IP cuyo valor TTL sea mayor que 5

Código:
C:\scan>windump -nt "ip[8] > 5"

windump: listening on \Device\NPF_{604C8AE3-5FAC-45A5-BFAA-81175A8C32BF}

IP 192.168.5.241 > 192.168.5.3: icmp 58: echo request seq 37706

IP 192.168.5.3 > 192.168.5.241: icmp 58: echo reply seq 37706

IP 192.168.4.10 > 192.168.4.14: icmp 58: echo request seq 8022

IP 192.168.4.14 > 192.168.4.10: icmp 58: echo reply seq 8022

IP 192.168.5.241 > 192.168.5.5: icmp 58: echo request seq 37962

IP 192.168.5.5 > 192.168.5.241: icmp 58: echo reply seq 37962

IP 192.168.5.241 > 192.168.5.6: icmp 58: echo request seq 38218

IP 192.168.5.6 > 192.168.5.241: icmp 58: echo reply seq 38218

IP 192.168.5.241 > 192.168.5.7: icmp 58: echo request seq 38474

IP 192.168.5.7 > 192.168.5.241: icmp 58: echo reply seq 38474

IP 192.168.2.4.1025 > 192.168.2.1.139: P 5539816:5539880(64) ack 34107477 win 8760 (DF)

IP 192.168.2.1.139 > 192.168.2.4.1025: . 1:1461(1460) ack 64 win 8568 (DF)

IP 192.168.2.1.139 > 192.168.2.4.1025: P 1461:2113(652) ack 64 win 8568 (DF)

IP 192.168.2.4.1025 > 192.168.2.1.139: . ack 2113 win 8760 (DF)

IP 192.168.2.4.1025 > 192.168.2.1.139: P 64:128(64) ack 2113 win 8760 (DF)

IP 192.168.2.1.139 > 192.168.2.4.1025: . 2113:3573(1460) ack 128 win 8504 (DF)

IP 192.168.2.1.139 > 192.168.2.4.1025: P 3573:4225(652) ack 128 win 8504 (DF)

IP 192.168.2.4.1025 > 192.168.2.1.139: . ack 4225 win 8760 (DF)

IP 192.168.5.241 > 192.168.5.12: icmp 58: echo request seq 39754

IP 192.168.5.12 > 192.168.5.241: icmp 58: echo reply seq 39754

IP 192.168.2.2 > 192.168.2.10: icmp 58: echo request seq 17671

IP 192.168.2.10 > 192.168.2.2: icmp 58: echo reply seq 17671

IP 192.168.2.2 > 192.168.2.11: icmp 58: echo request seq 17927

IP 192.168.2.11 > 192.168.2.2: icmp 58: echo reply seq 17927
sigue....

(c) Alfon.
__________________
Un saludo,

Alfon
http://seguridadyredes.nireblog.com