Escenario de pruebas de firewall basado en contexto (CBAC)

Fecha: 26 de agosto del 2014 Clase: CCNA Security

 

Escenario

 

 

Este escenario se realizó con equipos reales y luego la configuración se exportó a Packet Tracer para prácticas de los comandos

en clase, se realizaron pruebas de performance para verificar las pérdidas por latencia al inspeccionar los paquetes que ingresan

al router/firewall mientras este está activo, y luego otras pruebas rutinarias de comparación.

 

Cabe destacar que durante las pruebas el procesador del routerllegó al 99% impidiendo en algunos casos el acceso vía consola o telnet.

 

Aula7B#sh proc

CPU utilization for five seconds: 99%/97%; one minute: 52%; five minutes: 15%

 PID QTy            PC Runtime (ms)    Invoked   uSecs          Stacks TTY Process

   1 Cwe 602D5FC0                  12             23     521 5412/6000   0     Chunk Manager  

   2 Csp 606906B8              5820      14152     411 2552/3000    0     Load Meter     

 ---resumido---

 161 Mwe 629EB26C           940     138115       6 5412/6000     0     Inspect process

 ---resumido---

 163 Mwe 62A85450         1172     138114       8 5536/6000    0     FW DP Inspect pr

 ---resumido---

Aula7B#

 

Configuración afectada

 

Aula7B#sh runn

Building configuration...

 

Current configuration : 2146 bytes

!

! Last configuration change at 09:52:23 UTC Tue Aug 26 2014

! NVRAM config last updated at 18:36:58 UTC Mon Aug 25 2014

!

version 12.4

service timestamps debug datetime msec

service timestamps log datetime msec

no service password-encryption

!

hostname Aula7B

!

boot-start-marker

boot-end-marker

!

logging message-counter syslog

logging buffered 4096

enable secret 5 $1$gB9p$YyXIXQL/98.3qus3/5QbD0

!

no aaa new-model

memory-size iomem 20

dot11 syslog

ip source-route

!

ip cef

ip host PC_instructor 192.168.72.101

ip inspect audit-trail

ip inspect name FIREWALL tcp

ip inspect name FIREWALL icmp

ip inspect name FIREWALL udp

no ipv6 cef

!

multilink bundle-name authenticated

!

username ccp privilege 15 secret 5 $1$FmCM$kaXbRpTzIC1PwCXhzx8bS0

archive

 log config

  hidekeys

!

!

interface FastEthernet0/0

 description OUTSIDE

 ip address 192.168.72.101 255.255.255.0

 ip access-group OUTSIDE in

 ip nat outside

 ip inspect FIREWALL in

 ip virtual-reassembly

 duplex auto

 speed auto

!

interface FastEthernet0/1

 ip address 10.0.0.1 255.255.255.0

 ip nat inside

 ip inspect FIREWALL in

 ip virtual-reassembly

 duplex auto

 speed auto

!

ip forward-protocol nd

ip route 0.0.0.0 0.0.0.0 192.168.72.254

ip http server

ip http authentication local

no ip http secure-server

!

!

ip nat inside source list NAT interface FastEthernet0/0 overload

ip nat inside source static 10.0.0.101 192.168.72.101

!

ip access-list standard NAT

 permit 10.0.0.0 0.0.0.255

!

ip access-list extended OUTSIDE

 permit tcp any any eq www

 permit tcp any any eq 5001

 permit tcp any any eq 22

 permit tcp any any eq telnet

 deny   ip any any

!

logging trap debugging

!

control-plane

!

line con 0

line aux 0

line vty 0 4

 password cisco

 login

!

scheduler allocate 20000 1000

end

 

Aula7B#

 

Verificación previa del funcionamiento del firewall (la PC interna tiene un IIS como web server)

 

Aug 26 09:54:12.248: %FW-6-SESS_AUDIT_TRAIL_START: Start tcp session: initiator (10.0.0.101:1320) -- responder (72.163.6.225:443) (tráfico saliente)

Aug 26 09:54:12.496: %FW-6-SESS_AUDIT_TRAIL_START: Start tcp session: initiator (10.0.0.101:1321) -- responder (72.163.6.225:443) (tráfico saliente)

Aug 26 09:54:12.940: %FW-6-SESS_AUDIT_TRAIL_START: Start tcp session: initiator (192.168.72.102:49403) -- responder (10.0.0.101:80) (tráfico entrante)

Aug 26 09:54:12.940: %FW-6-SESS_AUDIT_TRAIL_START: Start tcp session: initiator (192.168.72.102:49404) -- responder (10.0.0.101:80) (tráfico entrante)

Aug 26 09:54:12.940: %FW-6-SESS_AUDIT_TRAIL_START: Start tcp session: initiator (192.168.72.102:49405) -- responder (10.0.0.101:80) (tráfico entrante)

Aug 26 09:54:12.940: %FW-6-SESS_AUDIT_TRAIL_START: Start tcp session: initiator (192.168.72.102:49406) -- responder (10.0.0.101:80) (tráfico entrante)

 

C:\Users\CIT>ipconfig (desde la PC interna, que tiene un IIS como web server)

 

Configuración IP de Windows

 

Adaptador de Ethernet Conexión de área local:

 

   Sufijo DNS específico para la conexión. . :

   Dirección IPv4. . . . . . . . . . . . . . . . . . . . . . : 10.0.0.101

   Máscara de subred . . . . . . . . . . . . . . .. . . : 255.255.255.0

   Puerta de enlace predeterminada . . . . . : 10.0.0.1

 

C:\Users\CIT>ping 192.168.72.254 (prueba hacia el exterior)

 

Haciendo ping a 192.168.72.254 con 32 bytes de datos:

Respuesta desde 192.168.72.254: bytes=32 tiempo=1ms TTL=63

Respuesta desde 192.168.72.254: bytes=32 tiempo<1m TTL=63

Respuesta desde 192.168.72.254: bytes=32 tiempo<1m TTL=63

Respuesta desde 192.168.72.254: bytes=32 tiempo<1m TTL=63

 

Estadísticas de ping para 192.168.72.254:

    Paquetes: enviados = 4, recibidos = 4, perdidos = 0

    (0% perdidos),

Tiempos aproximados de ida y vuelta en milisegundos:

    Mínimo = 0ms, Máximo = 1ms, Media = 0ms

 

C:\Users\CIT>

 

Verificación del tráfico ICMP hacia el exterior

 

Aug 26 10:05:24.752: %FW-6-SESS_AUDIT_TRAIL_START: Start icmp session: initiator (10.0.0.101:8) -- responder (192.168.72.254:0)

---resumido---

Aug 26 10:05:37.820: %FW-6-SESS_AUDIT_TRAIL: Stop icmp session: initiator (10.0.0.101:8) sent 128 bytes -- responder (192.168.72.254:0) sent 128 bytes

 

Aula7B>sh ip inspect sessions

Established Sessions

 Session 666D8558 (192.168.72.102:49491)=>(10.0.0.101:80) tcp SIS_OPEN (tráfico entrante)

 Session 666DA6B8 (192.168.72.102:49495)=>(10.0.0.101:80) tcp SIS_OPEN (tráfico entrante)

 Session 666DBA30 (192.168.72.102:49494)=>(10.0.0.101:80) tcp SIS_OPEN (tráfico entrante)

 Session 666D8820 (10.0.0.101:1318)=>(77.234.45.64:80) tcp SIS_OPEN (tráfico saliente)

 Session 666DA128 (192.168.72.102:49492)=>(10.0.0.101:80) tcp SIS_OPEN (tráfico entrante)

 Session 666DBCF8 (10.0.0.101:8)=>(192.168.72.254:0) icmp SIS_OPEN (tráfico saliente, prueba de pings)

 Session 666D9608 (10.0.0.101:1383)=>(72.163.6.225:443) tcp SIS_OPEN (tráfico saliente)

Aula7B>

 

Pruebas de performance

 

PCs sin router entre medio de ambos

 

Esta prueba se realiza para verificar la tasa de transferencia previa, ambas PC de pruebas tienen placas de 1Gbps y están

conectadas a interfaces de 1 Gbps. Las placas de 1 Gbps permiten que ambas PCs estén por encima de la performance

máxima del router y que éste solo sea el limitante de velocidad de las pruebas.

 

 

 

 

 

bin/iperf.exe -s -P 0 -i 1 -p 5001 -f m

------------------------------------------------------------

Server listening on TCP port 5001

TCP window size: 0.01 MByte (default)

------------------------------------------------------------

[260] local 192.168.72.101 port 5001 connected with 192.168.72.150 port 1553

[ ID] Interval       Transfer     Bandwidth

[260]  0.0- 1.0 sec  14.2 MBytes   119 Mbits/sec

[260]  1.0- 2.0 sec  13.8 MBytes   116 Mbits/sec

[260]  2.0- 3.0 sec  13.9 MBytes   116 Mbits/sec

---resumido---

[180] 118.0-119.0 sec  14.1 MBytes   119 Mbits/sec

[180] 119.0-120.0 sec  14.2 MBytes   119 Mbits/sec

[180]  0.0-120.0 sec  1696 MBytes   119 Mbits/sec (esta velocidad máxima, en vez de 1000 Mbps, se debe a limitaciones

                                                                                              de disco y del propio chipset, ver cuellos de botella, pero está por

                                                                                              encima de la velocidad de las placas del router Cisco 1841)

PCs con firewall CBAC en router 1841

 

La sesión de inspección es una sola ya que el tráfico del software de testing es cliente/servidor, o sea, se inicia en

un solo sentido (desde la PC 192.168.72.150 hacia la IP 193.168.72.101).

 

Aula7B#sh ip inspect sessions

Established Sessions

Session 665D4A78 (192.168.72.150:1562)=>(10.0.0.101:5001) tcp SIS_OPEN

Aula7B#

 

 

[276] local 10.0.0.101 port 5001 connected with 192.168.72.150 port 1559

[ ID] Interval       Transfer     Bandwidth

[276]  0.0- 1.0 sec  5.74 MBytes  48.2 Mbits/sec

[276]  1.0- 2.0 sec  5.67 MBytes  47.6 Mbits/sec

[276]  2.0- 3.0 sec  5.77 MBytes  48.4 Mbits/sec

---resumido---

[276] 118.0-119.0 sec  5.68 MBytes  47.6 Mbits/sec

[276] 119.0-120.0 sec  5.72 MBytes  48.0 Mbits/sec

[276]  0.0-120.0 sec   690 MBytes  48.2 Mbits/sec (drásticamente la mitad)

 

PCs con firewall CBAC desactivado en router 1841 y sólo la ACL en router 1841

 

 

Aula7B#conf t

Enter configuration commands, one per line.  End with CNTL/Z.

Aula7B(config)#int fa0/0

Aula7B(config-if)#no  ip inspect FIREWALL in

Aula7B(config-if)#int fa0/1

Aula7B(config-if)#no  ip inspect FIREWALL in

Aula7B(config-if)#^Z

Aula7B#

 

 

[260] local 10.0.0.101 port 5001 connected with 192.168.72.150 port 1563

[ ID] Interval       Transfer     Bandwidth

[260]  0.0- 1.0 sec  10.7 MBytes  89.7 Mbits/sec

[260]  1.0- 2.0 sec  10.7 MBytes  90.1 Mbits/sec

[260]  2.0- 3.0 sec  10.6 MBytes  89.1 Mbits/sec

---resumido---

[260] 118.0-119.0 sec  10.8 MBytes  90.6 Mbits/sec

[260] 119.0-120.0 sec  10.8 MBytes  91.0 Mbits/sec

 [260]  0.0-120.0 sec  1287 MBytes  89.9 Mbits/sec (performance casi normal)

 

PCs con firewall CBAC y ACL desactivados en router 1841

 

 

Aula7B#conf t

Aula7B(config-if)#int fa0/0

Aula7B(config-if)#no ip access-group OUTSIDE in

Aula7B(config-if)#

 

 

[272] local 10.0.0.101 port 5001 connected with 192.168.72.150 port 1565

[ ID] Interval       Transfer     Bandwidth

[272]  0.0- 1.0 sec  11.3 MBytes  94.6 Mbits/sec

[272]  1.0- 2.0 sec  11.3 MBytes  95.0 Mbits/sec

[272]  2.0- 3.0 sec  11.3 MBytes  94.9 Mbits/sec

---resumido---

[272] 118.0-119.0 sec  11.3 MBytes  94.9 Mbits/sec

[272] 119.0-120.0 sec  8.01 MBytes  67.2 Mbits/sec

[ ID] Interval       Transfer     Bandwidth

[272]  0.0-120.0 sec  1351 MBytes  94.4 Mbits/sec (mejor aún, la seguridad implica pérdida de performance)

 

 

 

(2014) Sensei, all discarted packets they go to heaven ?

Rosario, Argentina