Análisis del filtrado de tráfico para una copia TFTP

 

Se analiza como filtrar una copia TFTP a travez de un router mediante ACL, debido a la naturaleza del tráfico, se complica

la implementación de su filtrado, ya que al igual que FTP abre canales secundarios, pero a diferencia de FTP, es mediante

puertos efimeros generalmente mayores a 5000 (FTP siempre abre el puerto TCP 20).

 

Algunos escenarios con equipos reales, gráficos en Packet Tracer .

 

Aplicable a CCNA 1, módulo 4: Capa de transporte , CCNA 4, módulo 5: ACL, CCNA Security, módulos 4: ACL y FW

 

Mas datos sobre TFTP: RFC 1350 ( http://tools.ietf.org/html/rfc1350 )

 

Resultados:

 

1. Mediante ACL extendidas FALLO

2. Mediante ACL reflexivas  FALLO

3. Mediante ZBF OK

 

Pruebas

 

1. Mediante ACL extendidas (no fue posible la transferencia, debido a la apertura del canal secundario)

 

1.1 Pruebas (en Packet Tracer )

 

Router_1700#copy ru tftp

Address or name of remote host []? 10.0.0.103

Destination filename [Router_1700-confg]?

 

Writing running-config........

%Error opening tftp://10.0.0.103/Router_1700-confg (Timed out)

Router_1700#

 

Router_1800#sh access-lists

Extended IP access list SERVIDOR (tráfico de retorno al router 1700)

    permit udp host 10.0.0.103 eq tftp any (desde puerto 69)

    deny ip any any (24 match(es)) (desde puerto efímero)

Extended IP access list ROUTER_1700

    permit udp any host 10.0.0.103 eq tftp (5 match(es))(tráfico de origen,"pega" al UDP 69)

    deny ip any any

Router_1800#

 

1.2 Configuración router con ACL reflexiva

 

Router_1800#sh runn

!

hostname Router_1800

!

interface FastEthernet0/0

 ip address 10.0.1.1 255.255.255.0

 ip access-group ROUTER_1700 in

!

interface FastEthernet0/1

 ip address 10.0.0.1 255.255.255.0

 ip access-group SERVIDOR in

!

ip access-list extended SERVIDOR

 permit udp host 10.0.0.103 eq tftp any

 deny ip any any

ip access-list extended ROUTER_1700

 permit udp any host 10.0.0.103 eq tftp

 deny ip any any

!

end

 

2. Mediante ACL reflexivas (no fue posible la transferencia, debido a la apertura del canal secundario)

 

Las ACL reflexivas analizan el tráfico saliente y permiten el entrante de retorno, pero no tienen tanta

"inteligencia" como para llevar una auditoría o tracking del tráfico UDP, recordemos que no existen números

de secuencia ni acuses de recibo. Este control sólo se realiza con ventanas de tiempo entre origen y destino.

 

 

       

                 Fuente: Cisco ASA, PIX, and FWSM Firewall Handbook

 

2.1 Pruebas (en equipos reales)

 

Router_1700#copy runn tftp

Address or name of remote host []? 10.0.0.103

Destination filename [router_1700-confg]?

.....

%Error opening tftp://10.0.0.103/router_1700-confg (Undefined error)

 

Router_1700#

 

2.2 Verificación

 

Router_1800#sh access-lists

Reflexive IP access list ACL_TFTP (temporal, cierra tráfico en 2 segundos)

     permit udp host 10.0.0.103 eq tftp host 10.0.1.1 eq 53353 (7 matches) (time left 2)

Extended IP access list ida_ACL

    10 permit udp any any eq tftp reflect ACL_TFTP (7 matches)

Extended IP access list vuelta_ACL

    10 evaluate ACL_TFTP

    20 deny ip any any (30 matches)(puerto efímero de transferencia TFTP)

Router_1800#

 

Router_1800#sh access-lists

Reflexive IP access list ACL_TFTP (sin sesiones abiertas)

Extended IP access list ida_ACL

    10 permit udp any any eq tftp reflect ACL_TFTP (18 matches)

Extended IP access list vuelta_ACL

    10 evaluate ACL_TFTP

    20 deny ip any any (84 matches)(puerto efímero de transferencia TFTP)

Router_1800#

 

2.3 Análisis de las tramas

 

No.     Time        Source                Destination           Protocol Info

      1 0.000000    10.0.1.1              10.0.0.103            TFTP     Write Request, ///

                                                   ///File: router_1700-confg\000, Transfer type: octet\000

 

Ethernet II, Src: 00:18:ba:d1:1f:91 (00:18:ba:d1:1f:91), Dst: 00:1b:38:7e:f1:71 (00:1b:38:7e:f1:71)

Internet Protocol, Src: 10.0.1.1 (10.0.1.1), Dst: 10.0.0.103 (10.0.0.103)

User Datagram Protocol, Src Port: 53353 (53353), Dst Port: 69 (69) (puerto declarado como TFTP)

Trivial File Transfer Protocol

 

No.     Time        Source                Destination           Protocol Info

      2 0.003592    00:1b:38:7e:f1:71     ff:ff:ff:ff:ff:ff     ARP      Who has 10.0.1.1?  Tell 10.0.0.103

No.     Time        Source                Destination           Protocol Info

      3 0.004184    00:18:ba:d1:1f:91     00:1b:38:7e:f1:71     ARP      10.0.1.1 is at 00:18:ba:d1:1f:91

No.     Time        Source                Destination           Protocol Info

      4 0.004194    10.0.0.103            10.0.1.1              TFTP     Acknowledgement, Block: 0

 

Ethernet II, Src: 00:1b:38:7e:f1:71 (00:1b:38:7e:f1:71), Dst: 00:18:ba:d1:1f:91 (00:18:ba:d1:1f:91)

Internet Protocol, Src: 10.0.0.103 (10.0.0.103), Dst: 10.0.1.1 (10.0.1.1)

User Datagram Protocol, Src Port: 1851 (1851), Dst Port: 53353 (53353) (no es origen UDP 69)

Trivial File Transfer Protocol

 

No.     Time        Source                Destination           Protocol Info

      5 0.004774    10.0.0.1              10.0.0.103            ICMP     Destination unreachable

No.     Time        Source                Destination           Protocol Info

      6 1.003247    10.0.0.103            10.0.1.1              TFTP     Acknowledgement, Block: 0 (reintento)

No.     Time        Source                Destination           Protocol Info

      7 1.003899    10.0.0.1              10.0.0.103            ICMP     Destination unreachable (reintento)

 

Ethernet II, Src: 00:18:ba:d1:1f:91 (00:18:ba:d1:1f:91), Dst: 00:1b:38:7e:f1:71 (00:1b:38:7e:f1:71)

Internet Protocol, Src: 10.0.0.1 (10.0.0.1), Dst: 10.0.0.103 (10.0.0.103)

Internet Control Message Protocol

    Type: 3 (Destination unreachable)

    Code: 13 (Communication administratively filtered)

    Checksum: 0x127c [correct]

    Internet Protocol, Src: 10.0.0.103 (10.0.0.103), Dst: 10.0.1.1 (10.0.1.1)

    User Datagram Protocol, Src Port: 1851 (1851), Dst Port: 53353 (53353) (no es origen UDP 69)

 

2.4 Configuración router con ACL reflexiva

 

Router_1800#sh runn

!

hostname Router_1800

!

interface FastEthernet0/0

 ip address 10.0.1.2 255.255.255.0

!

interface FastEthernet0/1

 ip address 10.0.0.1 255.255.255.0

 ip access-group vuelta_ACL in

 ip access-group ida_ACL out

!

!

ip access-list extended ida_ACL

 permit udp any any eq tftp reflect ACL_TFTP timeout 10 (el paquete debe retornar dentro de 10" o menos)

ip access-list extended vuelta_ACL

 evaluate ACL_TFTP

 deny   ip any any

!

 

3. Mediante ZBF (Zone Based Firewall), quien abre conexiones entrantes a demanda, realizando un tracking mas específico

que las ACL reflexivas, aquí ya utilizamos tecnologías de firewall (ver CCNA Security, módulo 4).

 

3.1 Pruebas (en equipos reales)

 

Router_1700#copy ru tftp

Address or name of remote host []? 10.0.0.103

Destination filename [router_1700-confg]?

!!

623 bytes copied in 0.604 secs

Router_1700#copy flash tftp

Source filename []? c1700-k8sv3y-mz.122-6.bin

Address or name of remote host []? 10.0.0.103

Destination filename [c1700-k8sv3y-mz.122-6.bin]? (enter)

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

---resumido---

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!

6569400 bytes copied in 27.136 secs (243311 bytes/sec)

Router_1700#

 

3.2 Verificación

 

Router_1800#sh policy-map type inspect zone-pair ZONE-PAIR

 Zone-pair: ZONE-PAIR

 

  Service-policy inspect : POLICY

 

    Class-map: TRAFICO (match-all)

      Match: protocol tftp (sólo este protocolo declarado)

      Inspect

        Packet inspection statistics [process switch:fast switch]

        udp packets: [11:5133] (total de paquetes UDP: 4+7)

        tftp packets: [4:0] (puerto UDP 69)

        tftp-data packets: [7:5133] (puerto efímero)

 

        Session creations since subsystem startup or last reset 8

        Current session counts (estab/half-open/terminating) [1:1:0]

        Maxever session counts (estab/half-open/terminating) [0:3:0]

        Last session created 00:00:05

        Last statistic reset never

        Last session creation rate 2

        Last half-open session total 1

 

    Class-map: class-default (match-any) (resto del tráfico)

      Match: any

      Drop (default action)

        0 packets, 0 bytes

Router_1800#

 

 

 

3.3 Configuración router con ZBF

 

Router_1800#sh runn

Building configuration...

 

Current configuration : 1051 bytes

!

version 12.4

!

hostname Router_1800

!

class-map type inspect match-all TRAFICO (1)

 match protocol tftp

!

policy-map type inspect POLICY (2)

 class type inspect TRAFICO (1)

  inspect (tracking del tráfico UDP 69)

 class class-default (tracking del tráfico restante)

!

zone security fa00 (3)

zone security fa01 (4)

zone-pair security ZONE-PAIR source fa00 destination fa01 (3)(4)

 service-policy type inspect POLICY (2)

!

interface FastEthernet0/0

 ip address 10.0.1.1 255.255.255.0

 zone-member security fa00 (3) (origen del tráfico)

!

interface FastEthernet0/1

 ip address 10.0.0.1 255.255.255.0

 zone-member security fa01 (4) (destino del tráfico)

!

end

 

Router_1800#

 

 

                (2012) Smoking chala with  uncle Ernest

                Rosario, Argentina