Software libre

Jordi Herrera Joancomartí (coord.)
Joaquín García Alfaro
Xavier Perramón Tornil
XP04/90789/00892

Aspectos...
Jordi Herrera Joancomartí

Joaquín García Alfaro

Coordinador

Autor

Licenciado en Matemáticas por la
Universidad Autònom...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

3

Aspectos avanzados de seguridad en redes

Agradecimientos

Los autore...
·

XP03/75070/02120
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

3

Introducci´ n
o

En esta asignatura se presenta l...
·

XP03/75070/02120
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

4
3

Objetivos

Globalmente, los objetivos b´ sicos ...
·

XP03/75070/02120
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

5
3

Contenidos

M´ dulo did´ ctico 1
o
a
Ataques co...
·

XP03/75070/02120
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

6
3

M´ dulo did´ ctico 4
o
a
Aplicaciones seguras
1...
·

XP03/75070/02120
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

7
3

Bibliograf´a
ı
1. Cheswick, W.R.; Bellovin, S.M...
Ataques contra redes
TCP/IP
Joaqu´n Garc´a Alfaro
ı
ı
c FUOC· XP04/90789/00892
© FUOC • P03/75070/02121

Ataques contra redes TCP/IP

´
Indice

Introducci´ n . . . . . . . . . ...
© FUOC • XP04/90789/00892
FUOC · P03/75070/02121

3

Introducci´ n
o

Durante los primeros a˜ os de internet, los ataques ...
© FUOC • XP04/90789/00892
FUOC · P03/75070/02121

4

Objectivos

En este m´ dulo did´ ctico el estudiante encontrar´ los r...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

5

1.1. Seguridad en redes TCP/IP
.

Durant...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

6

2) Capa de internet (o capa de internetw...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

7

Protocolos y capas de Internet

Capa

Ap...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

8

En esta capa, la autenticaci´ n de los paquetes se realiza a nivel de...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

9

Ataques contra redes TCP/IP

En el fondo, un servidor de DNS es una b...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

10

Ataques contra redes TCP/IP

1.2. Actividades previas a la realizaci...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

11

Ataques contra redes TCP/IP

As´, mediante traceroute se puede llega...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

12

Informaci´ n de dominio
o

Durante esta primera etapa de recogida de...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

13

Ataques contra redes TCP/IP

[root@atacante /]$ telnet www.victima.c...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

14

´
1.2.2. Busqueda de huellas identificat...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

15

Identificaci´ n de respuestas ICMP
o

Au...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

16

Ataques contra redes TCP/IP

.
La decisi´ n de responder o no a esto...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

17

Exploraci´ n de puertos TCP
o

Aparte de ser de utilidad para obtene...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

18

Exploraci´ n de puertos UDP
o

.
Mediante la exploraci´ n de puertos...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

•

19

Exploraci´ n de puertos TCP activos:
o
.
nmap -sT IP ADDRESS/NETM...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

20

Ataques contra redes TCP/IP

´
Este es el caso de la utilidad Nessus...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

21

Ataques contra redes TCP/IP

1.3. Escuchas de red
.

Uno de los prim...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

22

Ataques contra redes TCP/IP

1.3.1. Desactivaci´ n de filtro MAC
o

U...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

23

1.3.2. Suplantaci´ n de ARP
o

El proto...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

24

En la siguiente figura se puede ver c´ m...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

25

Si la m´ quina C responde al arp-request antes que el servidor princ...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

26

Ataques contra redes TCP/IP

1.4. Fragmentaci´ n IP
o
.

El protocol...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

27

1.4.1. Fragmentaci´ n en redes Ethernet
o

La MTU por defecto de un ...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

28

´
Tras la cabecera IP, se encapsulan lo...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

29

Observando la siguiente figura podemos ver con atenci´ n el fragmento...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

30

El identificador de fragmento con un valor de 21223 es el enlace com´...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

31

La figura anterior muestra el datagrama ...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

32

Ataques contra redes TCP/IP

Detr´ s de los 20 bytes de la cabecera ...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

33

contiene la MTU de la red que requiere la fragmentaci´ n.
o

De esta...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

34

Ataques contra redes TCP/IP

1.5. Ataques de denegaci´ n de servicio...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

35

1.5.1. IP Flooding

.
El ataque de IP Flooding se basa en una inunda...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

36

Los datagramas IP utilizados podr´an co...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

37

1.5.2. Smurf

Este tipo de ataque de de...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

38

Ataques contra redes TCP/IP

.
El ataque de TCP/SYN Flooding se apro...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

39

.
El ataque Teardrop intentar´ realizar...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

40

1.5.5. Snork

.
El ataque Snork se basa...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

41

Este ataque se puede realizar con distintos pares de equipos de la r...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

42

Ataques contra redes TCP/IP

1.5.7. Ataques distribuidos

Un ataque ...
FUOC · P03/75070/02121
© FUOC • XP04/90789/00892

Ataques contra redes TCP/IP

43

Desde el primer equipo infectado por TR...
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
012.1 aspectos avanzados-en_seguridad_en_redes_modulos
Upcoming SlideShare
Loading in...5
×

012.1 aspectos avanzados-en_seguridad_en_redes_modulos

281

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
281
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

012.1 aspectos avanzados-en_seguridad_en_redes_modulos

  1. 1. Software libre Jordi Herrera Joancomartí (coord.) Joaquín García Alfaro Xavier Perramón Tornil XP04/90789/00892 Aspectos avanzados de seguridad en redes U Formación de Posgrado
  2. 2. Jordi Herrera Joancomartí Joaquín García Alfaro Coordinador Autor Licenciado en Matemáticas por la Universidad Autònoma de Barcelona Ingeniero técnico en Informètica de Gestión e ingeniero en Informática por la y doctor por la Universitat Politècnica de Catalunya. Su ámbito de investigación es la seguridad de la información y, más Universitat Autònoma de Barcelona (UAB). Su ámbito de investigación es la seguridad en redes de computadores y, más concretamente, la protección del copyright electrónico y la seguridad en entornos inalámbricos. Es autor de varios artículos concretamente, la criptografia y la detección de ataques e intrusiones en redes TCP/IP. Actualmente está realizando nacionales e internacionales e investigador principal de proyectos de investigación nacionales e internacionales estudios de doctorado en el grupo CCD de la UAB, donde también colabora como personal de apoyo a la investigación y en el ámbito de la seguridad. Actualmente es profesor de los Estudis d’Informàtica y Multimèdia de la Universitat Oberta de como docente de la asignatura de Redes de computadores I de la Ingeniería Informática. Catalunya. Xavier Perramón Tornil Autor Doctor ingeniero de Telecomunicaciones por la Universitat Politècnica de Catalunya. Actualmente trabaja en el diseño y estandarización de sistemas de documentación multimedia. Es profesor del Departamento de Arquitectura de Computadores adscrito a la Escola Universitària Politècnica del Baix Llobregat. Primera edición: julio 2004 © Fundació per a la Universitat Oberta de Catalunya Av. Tibidabo, 39-43, 08035 Barcelona Material realizado por Eureca Media, SL © Autores: Jordi Herrera Joancomartí, Joaquín García Alfaro, Xavier Perramón Tornil Depósito legal: B-37.669-2004 ISBN: 84-9788-212-1 Se garantiza permiso para copiar, distribuir y modificar este documento según los términos de la GNU Free Documentation License, Version 1.2 o cualquiera posterior publicada por la Free Software Foundation, sin secciones invariantes ni textos de cubierta delantera o trasera. Se dispone de una copia de la licencia en el apartado “GNU Free Documentation License” de este documento.
  3. 3. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 3 Aspectos avanzados de seguridad en redes Agradecimientos Los autores agradecen a la Fundación para la Universitat Oberta de Catalunya (http://www.uoc.edu) la financiación de la primera edición de esta obra, enmarcada en el Máster Internacional en Software Libre ofre- ANOTACIONES cido por la citada institución.
  4. 4. · XP03/75070/02120 FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 3 Introducci´ n o En esta asignatura se presenta la problem´ tica de la seguridad en las redes de a computadores y, m´ s concretamente, en las redes TCP/IP. a La estructuraci´ n sigue el siguiente modelo. En primer lugar, se presenta la o problem´ tica de la seguridad en las redes TCP/IP. Cabe destacar que esta asiga natura se centra en la problem´ tica de la seguridad en las redes y, por lo tanto a algunos temas de seguridad que hacen referencia a procesos m´ s espec´ficos a ı de los propios sistemas inform´ ticos s´ lo los estudiaremos sumariamente coa o mo consecuencia de la problem´ tica de la seguridad en las redes. a Una vez hayamos visto cu´ les son los eventuales problemas de seguridad en a este tipo de redes, nos centraremos en los mecanismos de prevenci´ n que o existen para a intentar minimizar la realizaci´ n de los ataques descritos en el o primer m´ dulo. Veremos que, fundamentalmente, las t´ cnicas de prevenci´ n o e o se basan en el filtraje de informaci´ n. o ´ Posteriormente pondremos enfasis en las t´ cnicas espec´ficas de protecci´ n e ı o existentes. En particular, introduciremos las nociones b´ sicas de criptograf´a a ı que nos permitir´ n entender el funcionamiento de distintos mecanismos y aplia caciones que permiten protegerse frente los ataques. En concreto nos centraremos en los mecanismos de autentificaci´ n y en la fiabilidad que nos proo porcionan los diferentes tipos, veremos qu´ mecanismos de protecci´ n existen e o a nivel de red y a nivel de transporte y veremos c´ mo podemos crear redes prio vadas virtuales. Por otro lado, tambi´ n veremos c´ mo funcionan algunas aplie o caciones seguras, como el protocolo SSH o est´ ndares de correo electr´ nico a o seguro. Finalmente, y partiendo de la base que no todos los sistemas de prevenci´ n o y protecci´ n de las redes TCP/IP son infalibles, estudiaremos los diferentes o mecanismos de detecci´ n de intrusos que existen y cu´ les son sus arquitecturas o a y funcionalidades. Seguridad en redes de computadores Aspectos avanzados de seguridad en redes
  5. 5. · XP03/75070/02120 FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 4 3 Objetivos Globalmente, los objetivos b´ sicos que se deben alcanzar son los siguientes: a 1. Entender los distintos tipos de vulnerabilidades que presentan las redes TCP/IP. 2. Ver qu´ t´ cnicas de prevenci´ n existen contra los ataques m´ s frecuentes. e e o a 3. Alcanzar unos conocimientos b´ sicos del funcionamiento de las herramiena tas criptogr´ ficas m´ s utilizadas. a a 4. Conocer los sistemas de autentificaci´ n m´ s importantes, identificando sus o a caracter´sticas. ı 5. Ver diferentes propuestas existentes para ofrecer seguridad tanto a nivel de red, de transporte o de aplicaci´ n. o 6. Conocer los diferentes sistemas de detecci´ n de intrusos. o Seguridad en redes de computadores Aspectos avanzados de seguridad en redes
  6. 6. · XP03/75070/02120 FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 5 3 Contenidos M´ dulo did´ ctico 1 o a Ataques contra les redes TCP/IP 1. Seguridad en redes TCP/IP 2. Actividades previas a la realizaci´ n de un ataque o 3. Escuchas de red 4. Fragmentaci´ n IP o 5. Ataques de denegaci´ n de servicio o 6. Deficiencias de programaci´ n o M´ dulo did´ ctico 2 o a Mecanismos de prevenci´ n o 1. Sistemas cortafuegos 2. Construcci´ n de sistemas cortafuegos o 3. Zones desmilitarizadas 4. Caracter´sticas adicionales de los sistemas cortafuegos ı M´ dulo did´ ctico 3 o a Mecanismos de protecci´ n o 1. Conceptos b´ sicos de criptograf´a a ı 2. Sistemas de autentificaci´ n o 3. Protecci´ n a nivel de red: IPsec o 4. Protecci´ n a nivel de transporte: SSL/TLS/WTLS o 5. Redes privadas virtuales (VPN) Seguridad en redes de computadores Aspectos avanzados de seguridad en redes
  7. 7. · XP03/75070/02120 FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 6 3 M´ dulo did´ ctico 4 o a Aplicaciones seguras 1. El protocolo SSH 2. Correo electr´ nico seguro o M´ dulo did´ ctico 5 o a Mecanismos para la detecci´ n de ataques e intrusiones o 1. Necessidad de mecanismos adicionales en la prevenci´ n y protecci´ n o o 2. Sistemas de detecci´ n de intrusos o 3. Esc´ ners de vulnerabilidades a 4. Sistemas de decepci´ n o 5. Prevenci´ n de intrusos o 6. Detecci´ n de ataques distribuidos o Apéndice GNU Free Documentation License Seguridad en redes de computadores Aspectos avanzados de seguridad en redes
  8. 8. · XP03/75070/02120 FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 7 3 Bibliograf´a ı 1. Cheswick, W.R.; Bellovin, S.M.; Rubin, A.D. . (2003). Firewalls and Internet Security: Repelling the Wily Hacker. (5a ed.): Addison-Wesley Professional Computing. 2. Oppliger, R. (2000). Security technologies for the Word Wide Web. 1a ed.: Artech House. 3. Menezes, J.; van Oorschot, P.C.; Vanstone, S.A. (2001). Handbook of Applied Cryptography. (5a ed.): CRC Press. Seguridad en redes de computadores Aspectos avanzados de seguridad en redes
  9. 9. Ataques contra redes TCP/IP Joaqu´n Garc´a Alfaro ı ı
  10. 10. c FUOC· XP04/90789/00892 © FUOC • P03/75070/02121 Ataques contra redes TCP/IP ´ Indice Introducci´ n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 3 Objectivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.1. Seguridad en redes TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.2. Actividades previas a la realizaci´ n de un ataque . . . . . . . . . . . . . . . . . . . . . . . . . . . o 10 1.2.1. Utilizaci´ n de herramientas de administraci´ n . . . . . . . . . . . . . . . . . . . . . . . . . . . o o 10 1.2.2. B´ squeda de huellas identificativas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . u 14 1.2.3. Exploraci´ n de puertos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 16 1.3. Escuchas de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 1.3.1. Desactivaci´ n de filtro MAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 22 1.3.2. Suplantaci´ n de ARP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 23 1.3.3. Herramientas disponibles para realizar sniffing . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.4. Fragmentaci´ n IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 26 1.4.1. Fragmentaci´ n en redes Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 27 1.4.2. Fragmentaci´ n para emmascaramiento de datagramas IP . . . . . . . . . . . . . . . . . o 32 1.5. Ataques de denegaci´ n de servicio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 34 1.5.1. IP Flooding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 1.5.2. Smurf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 1.5.3. TCP/SYN Flooding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 1.5.4. Teardrop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 1.5.5. Snork . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 1.5.6. Ping of death . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 1.5.7. Ataques distribuidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 1.6. Deficiencias de programaci´ n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 47 1.6.1. Desbordamiento de buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 1.6.2. Cadenas de formato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Bibliograf´a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ı 62
  11. 11. © FUOC • XP04/90789/00892 FUOC · P03/75070/02121 3 Introducci´ n o Durante los primeros a˜ os de internet, los ataques a sistemas inform´ ticos requer´an pocos n a ı conocimientos t´ cnicos. Por un lado, los ataques realizados desde el interior de la red se e basaban en la alteraci´ n de permisos para modificar la informaci´ n del sistema. Por el o o contrario, los ataques externos se produc´an gracias al conocimiento de las contrase˜ as ı n necesarias para acceder a los equipos de la red. Con el paso de los a˜ os se han ido desarrollando nuevos ataques cada vez m´ s sofisticados n a para explotar vulnerabilidades tanto en el dise˜ o de las redes TCP/IP como en la confin guraci´ n y operaci´ n de los sistemas inform´ ticos que conforman las redes conectadas a o o a internet. Estos nuevos m´ todos de ataque se han ido automatizando, por lo que en muchos e casos s´ lo se necesita un conocimiento t´ cnico muy b´ sico para realizarlos. Cualquier o e a usuario con una conexi´ n a internet tiene acceso hoy en d´a a numerosas aplicaciones para o ı realizar estos ataques y las instrucciones necesarias para ejecutarlos. En la mayor parte de la bibliograf´a relacionada con la seguridad en redes inform´ ticas ı a podemos encontrar clasificadas las tres generaciones de ataques siguientes: Primera generaci´ n: ataques f´sicos. Encontramos aqu´ ataques que se centran en como ı ı ponentes electr´ nicos, como podr´an ser los propios ordenadores, los cables o los disposio ı tivos de red. Actualmente se conocen soluciones para estos ataques, utilizando protocolos distribuidos y de redundancia para conseguir una tolerancia a fallos aceptable. Segunda generaci´ n: ataques sint´ cticos.Se trata de ataques contra la l´ gica operativa o a o de los ordenadores y las redes, que quieren explotar vulnerabilidades existentes en el software, algoritmos de cifrado y en protocolos. Aunque no existen soluciones globales para contrarrestar de forma eficiente estos ataques, podemos encontrar soluciones cada vez m´ s eficaces. a Tercera generaci´ n: ataques sem´ nticos.Finalmente, podemos hablar de aquellos atao a ques que se aprovechan de la confianza de los usuarios en la informaci´ n. Este tipo de o ataques pueden ir desde la colocaci´ n de informaci´ n falsa en boletines informativos y o o correos electr´ nicos hasta la modificaci´ n del contenido de los datos en servicios de cono o fianza, como, por ejemplo, la manipulaci´ n de bases de datos con informaci´ n p´ blica, o o u sistemas de informaci´ n burs´ til, sistemas de control de tr´ fico a´ reo, etc. o a a e Antes de pasar a hablar detalladamente de como evitar estos ataques desde un punto de vista m´ s t´ cnico, introduciremos en este m´ dulo algunas de las deficiencias t´picas de a e o ı los protocolos TCP/IP y analizaremos algunos de los ataques m´ s conocidos contra esta a arquitectura. Ataques contra redes TCP/IP
  12. 12. © FUOC • XP04/90789/00892 FUOC · P03/75070/02121 4 Objectivos En este m´ dulo did´ ctico el estudiante encontrar´ los recursos necesarios para alcanzar los o a a siguientes objetivos: 1) Exponer los problemas de seguridad en las redes TCP/IP a partir de algunos ejemplos de vulnerabilidades en sus protocolos b´ sicos. a 2) Analizar algunas de las actividades previas realizadas por los atacantes de redes TCP/IP para conseguir sus objetivos. 3) Aprender c´ mo funcionan las t´ cnicas de sniffing en redes TCP/IP para comprender el o e peligro que comportan en la seguridad de una red local. 4) Estudiar con m´ s detalle algunos ataques concretos contra redes TCP/IP, como pueden a ser los ataques de denegaci´ n de servicio y las deficiencias de programaci´ n. o o Ataques contra redes TCP/IP
  13. 13. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 5 1.1. Seguridad en redes TCP/IP . Durante la d´ cada de los 60, dentro del marco de la guerra fr´a, la Agencia de Proyectos e ı de Investigaci´ n Avanzada del Departamento de Defensa de los Estados Unidos (DARPA) o se plante´ la posibilidad de que un ataque afectara a su red de comunicaciones y financi´ o o equipos de investigaci´ n en distintas universidades con el objetivo de desarrollar una red o de ordenadores con una administraci´ n totalmente distribuida. o Como resultado de la aplicaci´ n de sus estudios en redes de conmutaci´ n de paquetes, se o o cre´ la denominada red ARPANET, de car´ cter experimental y altamente tolerable a fallos. o a M´ s adelante, a mediados de los 70, la agencia empez´ a investigar en la interconexi´ n de a o o distintas redes, y en 1974 estableci´ las bases de desarrollo de la familia de protocolos que o se utilizan en las redes que conocemos hoy en d´a como redes TCP/IP. ı Modelo TCP/IP Aplicación Aplicación Transporte Transporte Internet Internet Red Red Red La familia de protocolos TCP/IP se divide en las cuatro capas siguientes: 1) Capa de red. Normalmente est´ formada por una red LAN* o WAN** (de conexi´ n a o punto a punto) homog´ nea. Todos los equipos conectados a internet implementan esta e capa. Todo lo que se encuentra por debajo de la IP es la capa de red f´sica o, simplemente, ı capa de red. ´ -* En ingles, Local Area Network. ´ -** En ingles, Wide Area Network.
  14. 14. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 6 2) Capa de internet (o capa de internetworking) . Da unidad a todos los miembros de la red y, por lo tanto, es la capa que permite que todos se puedan interconectar, independientemente de si se conectan mediante l´nea telef´ nica o mediante una red local Ethernet. La ı o direcci´ n y el encaminamiento son sus principales funciones. Todos los equipos conectao dos a internet implementan esta capa. 3) Capa de transporte. Da fiabilidad a la red. El control de flujo y de errores se lleva a cabo principalmente dentro esta capa, que s´ lo es implementada por equipos usuarios de o internet o por terminales de internet. Los dispositivos de encaminamiento* (encaminadores) no la necesitan. ´ * En ingles, routers. 4) Capa de aplicaci´ n. Engloba todo lo que hay por encima de la capa de transporte. Es o la capa en la que encontramos las aplicaciones que utilizan internet: clientes y servidores de web, correo electr´ nico, FTP, etc. S´ lo es implementada por los equipos usuarios de o o internet o por terminales de internet. Los dispositivos de encaminamiento no la utilizan. Como ya hemos comentado, s´ lo los equipos terminales implementan todas las capas. Los o ´ equipos intermedios unicamente implementan el nivel de red y el nivel IP: Situación de las capas de la red Internet Red Internet Aplicación Aplicación Transporte Transporte Internet Red Estación Internet Internet X X X Encaminador X Encaminador Internet Red Estación En cada una de las capas expuestas encontramos protocolos distintos. La situaci´ n relativa o de cada protocolo en las diferentes capas se muestra en la siguiente figura: Para profundizar en los protocolos TCP/IP, mirad los apartados 1.4, 1.10 y 29.3 de la obra: D.E. Comer (1995). internetworking *with TCP/IP (Volumen I: Principies, Protocolos and Architecture). Prentice Hall.
  15. 15. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 7 Protocolos y capas de Internet Capa Aplicación Protocolos HTTP SMTP Telnet UDP TCP Transporte DNS ICMP Internet Red IP ARP Driver de red Tarjeta de red Como ya se ha adelantado, en cada capa del modelo TCP/IP pueden existir distintas vulnerabilidades y un atacante puede explotar los protocolos asociados a cada una de ellas. Cada d´a se descubren nuevas deficiencias, la mayor´a de las cuales se hacen p´ blicas por ı ı u organismos internacionales, tratando de documentar, si es posible, la forma de solucionar y contrarestar los problemas. A continuaci´ n presentamos algunas de las vulnerabilidades m´ s comunes de las distintas o a capas que veremos con m´ s detalle a lo largo de este m´ dulo: a o 1) Vulnerabilidades de la capa de red. Las vulnerabilidades de la capa de red est´ n a estrechamente ligadas al medio sobre el que se realiza la conexi´ n. Esta capa presenta o problemas de control de acceso y de confidencialidad. Son ejemplos de vulnerabilidades a este nivel los ataques a las l´neas punto a punto: desv´o ı ı de los cables de conexi´ n hacia otros sistemas, interceptaci´ n intrusiva de las comunicacio o ones (pinchar la l´nea), escuchas no intrusivas en medios de transmisi´ n sin cables, etc. ı o 2) Vulnerabilidades de la capa internet. En esta capa se puede realizar cualquier ataque que afecte un datagrama IP. Se incluyen como ataques contra esta capa las t´ cnicas e de sniffing, la suplantaci´ n de mensajes, la modificaci´ n de datos, los retrasos de mensajes o o y la denegaci´ n de mensajes. o Cualquier atacante puede suplantar un paquete si indica que proviene de otro sistema. La suplantaci´ n de un mensaje se puede realizar, por ejemplo, dando una respuesta a otro o mensaje antes de que lo haga el suplantado. Ataques f´sicos ı Este tipo de ataques pueden llegar a ser muy dif´ciles de ı realizar, ya que generalmente requieren un acceso f´sico a ı los equipos que se quieren atacar. De ah´ que no los ı ´ trataremos en este modulo ´ didactico. Escuchas de red ... ´ ... (en ingles, sniffing). Pueden realizarse mediante aplicaciones que se conocen con el nombre de sniffers. Ved el apartado Escuchas de ´ red de este mismo modulo ´ ´ para mas informacion.
  16. 16. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 8 En esta capa, la autenticaci´ n de los paquetes se realiza a nivel de m´ quina (por direcci´ n o a o IP) y no a nivel de usuario. Si un sistema suministra una direcci´ n de m´ quina err´ nea, o a o el receptor no detectar´ la suplantaci´ n. Para conseguir su objetivo, este tipo de ataques a o suele utilizar otras t´ cnicas, como la predicci´ n de n´ meros de secuencia TCP, el envenee o u namiento de tablas cach´ , etc. e Ataques contra redes TCP/IP Ataques de suplantaci´ n ... o ´ ... (en ingles Spoofing ´ attacks). Mirad la seccion ´ Suplantacion de ARP del apartado Escuchas de red de ´ este mismo modulo para ver un ejemplo de ataque de ´ suplantacion. Por otro lado, los paquetes se pueden manipular si se modifican sus datos y se reconstruyen de forma adecuada los controles de las cabeceras. Si esto es posible, el receptor ser´ incaa paz de detectar el cambio. 3) Vulnerabilidades de la capa de transporte. La capa de transporte transmite infor- maci´ n TCP o UDP sobre datagramas IP. En esta capa podamos encontrar problemas de o autenticaci´ n, de integridad y de confidencialidad. Algunos de los ataques m´ s conocidos o a en esta capa son las denegaciones de servicio debidas a protocolos de transporte. En cuanto a los mecanismos de seguridad incorporados en el dise˜ o del protocolo de TCP n Ataques de denegaci´ n de o servicio ... ´ ... (en ingles Denial of Service attacks o DoS). Mirar el apartado sobre Ataques de ´ denegacion de servicio de ´ ´ este mismo modulo para mas ´ informacion. (como las negociaciones involucradas en el establecimiento de una sesi´ n TCP), existe una o serie de ataques que aprovechan ciertas deficiencias en su dise˜ o. Una de las vulnerabilin dades m´ s graves contra estos mecanismos de control puede comportar la posibilidad de a interceptaci´ n de sesiones TCP establecidas, con el objetivo de secuestrarlas y dirigirlas a o otros equipos con fines deshonestos. Estos ataques de secuestro se aprovechan de la poca exigencia en el protocolo de intercambio de TCP respecto a la autenticaci´ n de los equipos involucrados en una sesi´ n. As´, o o ı si un usuario hostil puede observar los intercambios de informaci´ n utilizados durante el o ´ inicio de la sesi´ n y es capaz de interceptar con exito una conexi´ n en marcha con todos o o los par´ metros de autenticaci´ n configurados adecuadamente, podr´ secuestrar la sesi´ n. a o a o 4) Vulnerabilidades de la capa de aplicaci´ n. Como en el resto de niveles, la capa de o aplicaci´ n presenta varias deficiencias de seguridad asociadas a sus protocolos. Debido o al gran n´ mero de protocolos definidos en esta capa, la cantidad de deficiencias presentes u tambi´ n ser´ superior al resto de capas. Algunos ejemplos de deficiencias de seguridad a e a este nivel podr´an ser los siguientes: ı • Servicio de nombres de dominio. Normalmente, cuando un sistema solicita cone- xi´ n a un servicio, pide la direcci´ n IP de un nombre de dominio y env´a un paquete o o ı ´ UDP a un servidor DNS; entonces, este responde con la direcci´ n IP del dominio soo licitado o una referencia que apunta a otro DNS que pueda suministrar la direcci´ n IP o solicitada. Un servidor DNS debe entregar la direcci´ n IP correcta pero, adem´ s, tambi´ n puede o a e entregar un nombre de dominio dada una direcci´ n IP u otro tipo de informaci´ n. o o * Estos ataques de ´ suplantacion de DNS se conocen con el nombre de spoofing de DNS.
  17. 17. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 9 Ataques contra redes TCP/IP En el fondo, un servidor de DNS es una base de datos accesible desde internet. Por ´ lo tanto, un atacante puede modificar la informaci´ n que suministra esta base de datos o o acceder a informaci´ n sensible almacenada en la base de datos por error, pudiendo o obtener informaci´ n relativa a la topolog´a de la red de una organizaci´ n concreta (por o ı o ejemplo, la lista de los sistemas que tiene la organizaci´ n). o • Telnet. Normalmente, el servicio Telnet autentica al usuario mediante la solicitud del identificador de usuario y su contrase˜ a, que se transmiten en claro por la red. n As´, al igual que el resto de servicios de internet que no protegen los datos mediante ı mecanismos de protecci´ n**, el protocolo de aplicaci´ n Telnet hace posible la captura o o de aplicaci´ n sensible mediante el uso de t´ cnicas de sniffing. o e Actualmente existen otros protocolos a nivel de aplicaci´ n (como, por ejemplo, SSH) o para acceder a un servicio equivalente a Telnet pero de manera segura (mediante auten- ´ ** Mirad el modulo ´ Mecanismos de proteccion de este mismo material para ´ ´ mas informacion. ticaci´ n fuerte). Aun as´, el hecho de cifrar el identificador del usuario y la contrase˜ a o ı n no impide que un atacante que las conozca acceda al servicio. • File Transfer Protocol. Al igual que Telnet, FTP es un protocolo que env´a la inforı maci´ n en claro (tanto por el canal de datos como por el canal de comandos). As´ pues, o ı al env´ar el identificador de usuario y la contrase˜ a en claro por una red potencialmente ı n hostil, presenta las mismas deficiencias de seguridad que ve´amos anteriormente con ı el protocolo Telnet. Aparte de pensar en mecanismos de protecci´ n de informaci´ n para solucionar el proo o blema, FTP permite la conexi´ n an´ nima a una zona restringida en la cual s´ lo se o o o permite la descarga de archivos. De este modo, se restringen considerablemente los posibles problemas de seguridad relacionados con la captura de contrase˜ as, sin limin tar una de las funcionalidades m´ s interesantes del servicio. a • Hypertext Transfer Protocol. El protocolo HTTP es el responsable del servicio World Wide Web. Una de sus vulnerabilidades m´ s conocidas procede de la posibilidad de ena trega de informaci´ n por parte de los usuarios del servicio. Esta entrega de informaci´ n o o desde el cliente de HTTP es posible mediante la ejecuci´ n remota de c´ digo en la parte o o del servidor. La ejecuci´ n de este c´ digo por parte del servidor suele utilizarse para dar el formato o o adecuado tanto a la informaci´ n entregada por el usuario como a los resultados deo vueltos (para que el navegador del cliente la pueda visualizar correctamente). Si este c´ digo que se ejecuta presenta deficiencias de programaci´ n, la seguridad del equipo o o en el que est´ funcionando el servidor se podr´ poner en peligro*. e a * Mirad el cap´tulo ı ´ Deficiencias de programacion ´ de este mismo modulo ´ ´ didactico para mas ´ informacion.
  18. 18. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 10 Ataques contra redes TCP/IP 1.2. Actividades previas a la realizaci´ n de un ataque o . Previamente a la planificaci´ n de un posible ataque contra uno o m´ s equipos de una red o a TCP/IP, es necesario conocer el objetivo que hay que atacar. Para realizar esta primera fase, es decir, para obtener toda la informaci´ n posible de la v´ctima, ser´ necesario utilizar una o ı a serie de t´ cnicas de obtenci´ n y recolecci´ n de informaci´ n. e o o o A continuaci´ n veremos, con algunos ejemplos sencillos, algunas de las t´ cnicas existentes o e que tanto los administradores de una red como los posibles atacantes, pueden utilizar para realizar la fase de recogida y obtenci´ n de informaci´ n previa a un ataque. o o 1.2.1. Utilizaci´ n de herramientas de administraci´ n o o La fase de recogida de informaci´ n podr´a empezar con la utilizaci´ n de todas aquellas o ı o aplicaciones de administraci´ n que permitan la obtenci´ n de informaci´ n de un sistema o o o como, por ejemplo, ping, traceroute, whois, finger, rusers, nslookup, rcpinfo, telnet, dig, etc. La simple ejecuci´ n del comando ping contra la direcci´ n IP asociada a un nombre de o o dominio podr´a ofrecer al atacante informaci´ n de gran utilidad. Para empezar, esta inforı o maci´ n le permitir´ determinar la existencia de uno o m´ s equipos conectados a la red de o a a este dominio. Evitar la extracci´ n de o informaci´ n o ´ Una posible solucion para proteger los sistemas de nuestra red contra esta ´ ´ extraccion de informacion mediante herramientas de ´ administracion es la ´ utilizacion de sistemas cortafuegos. Consultad el ´ ´ siguiente modulo didactico ´ ´ para mas informacion sobre filtrado de paquetes y sistemas cortafuegos. Una vez descubierta la existencia de, como m´nimo, uno de los equipos del dominio, el ı atacante podr´a obtener informaci´ n relacionada con la topolog´a o la distribuci´ n f´sica y ı o ı o ı l´ gica de la red, mediante alguna aplicaci´ n de administraci´ n como, por ejemplo, traceo o o route. Aunque traceroute es una herramienta de administraci´ n pensada para solucionar probleo mas de red, tambi´ n se puede utilizar con objetivos deshonestos. Por ejemplo, traceroute e se puede emplear para tratar de averiguar qu´ sistemas existen entre distintos equipos (en e este caso, entre el ordenador del atacante y el equipo que se quiere atacar). ´ * En ingles, router. El funcionamiento de traceroute se basa en la manipulaci´ n del campo TTL de la cabecera o IP de un paquete, de forma que es capaz de determinar uno a uno los saltos por los que un determinado paquete avanza por la red TCP/IP. El campo TTL act´ a como un contau dor de saltos, vi´ ndose reducido en una unidad al ser reenviado por cada dispositivo de e encaminamiento.
  19. 19. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 11 Ataques contra redes TCP/IP As´, mediante traceroute se puede llegar a obtener una lista de los elementos de la red ı recorridos desde una ubicaci´ n de origen hasta el sistema de destino, como muestra el o siguiente ejemplo: [root@atacante /]$ traceroute -n www.vitima.com traceroute to www.vitima.com (218.73.40.217), 30 hops max, 38 byte packets ´ Existen herramientas graficas con una funcionalidad similar a traceroute, que permiten visualizar las correspondientes asociaciones de cada elemento IP y con su ´ ´ ubicacion geografica. 1 80.12.14.92 1.091 ms 1.203 ms 2.140 ms 1 80.12.14.1 2.175 ms 2.319 ms 2.155 ms 2 80.12.56.13 12.063 ms 14.105 ms 13.305 ms .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 10 218.73.40.217 30.025 ms 28.205 ms 28.202 ms Como veremos m´ s adelante, el uso del protocolo ICMP (que utilizan tanto ping como a traceroute) tambi´ n puede permitir obtener informaci´ n adicional, como la franja horaria e o del sistema de destino o la m´ scara de red empleada. a Descubrimiento de usuarios Otra informaci´ n relevante de un sistema es el nombre de los usuarios que tienen acceso o a estos equipos. Una utilidad que puede ayudar al atacante a obtener estos datos es la herramienta finger: [root@atacante /]$ finger -l @ www.victima.com [www.victima.com] Login name: root (messages off) Directory: /root Shell: /bin/bash On since Mar 11 12:04:32 on pts/1 from dummy.victima.com New mail received Mon Mar 8 13:12:05 2001; No Plan. Mediante finger, el atacante podr´a realizar varias pruebas para tratar de descubrir la exisı tencia de usuarios v´ lidos. M´ s adelante, y con la informaci´ n obtenida, podr´a probar a a o ı distintas contrase˜ as de usuario con la finalidad de obtener un acceso remoto al sistema n utilizando, por ejemplo, un cliente de Telnet o de SSH. El servicio finger ´ Dada la informacion que proporciona este servicio, muchos sistemas no lo tienen activado.
  20. 20. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 12 Informaci´ n de dominio o Durante esta primera etapa de recogida de informaci´ n, el atacante tambi´ n tratar´ de obo e a tener toda aquella informaci´ n general relacionada con la organizaci´ n que hay detr´ s de o o a la red que se quiere atacar. La recogida de esta informaci´ n puede empezar extrayendo la o informaci´ n relativa a los dominios asociados a la organizaci´ n, as´ como las subredes coro o ı respondientes. Esto puede obtenerse f´ cilmente mediante consultas al servicio de nombre a de dominios (DNS). Si el servidor que ofrece la informaci´ n de este dominio no se ha configurado adecuadao mente, es posible realizar una consulta de transferencia de zona completa, lo cual permitir´ a obtener toda la informaci´ n de traducci´ n de direcciones IP a nombres de m´ quina. Este o o a tipo de consulta puede realizarse con las utilidades host, dig y nslookup, entre otras: [root@atacante /]$ host -l victima.com www.victima.com has address 218.73.40.217 www.victima.com host information "Pentium ftp.victima.com has address 218.73.40.81 ftp.victima.com host information "Pentium .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. III" "Linux" II" "FreeBSD" .. .. .. .. .. .. .. .. .. .. .. .. [root@atacante /]$ host -l victima.com > victima.com.txt Entre la informaci´ n encontrada, el atacante podr´a encontrar informaci´ n sensible como, o ı o por ejemplo, relaciones entre sistemas de la red o subredes, el objetivo para el que se utilizan los mismos, el sistema operativo instalado en cada equipo, etc. Cadenas identificativas A medida que vaya encontrando nuevos sistemas, el atacante ir´ complementando la ina formaci´ n recogida con toda aquella informaci´ n que pueda serle de utilidad para explotar o o posibles deficiencias en la seguridad de la red. Una primera fuente de informaci´ n podr´a o ı ser, por ejemplo, la informaci´ n que ofrecen las cadenas de texto que generalmente apareo ce al conectarse a un determinado servicio. Estas cadenas, aparte de identificar cada uno de los servicios ofrecidos por estos equipos, podr´an indicar el nombre y la versi´ n de la ı o aplicaci´ n que se est´ ejecutando detr´ s de dicho servicio: o a a [root@atacante /]$ ftp ftp.victima.com Connected to ftp.victima.com (218.73.40.81). 220 ProFTPD 1.2.4 Server (VICTIMA FTP Server) Name (ftp.victima.com:root): .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. Ataques contra redes TCP/IP
  21. 21. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 13 Ataques contra redes TCP/IP [root@atacante /]$ telnet www.victima.com 80 Trying 218.73.40.217... Connected to www.victima.com. Escape character is '^]'. GET / HTTP1.1 HTTP/1.1 200 OK Date: Wed, 12 Mar 2003 15:07:53 GMT Server: Apache/1.3.23 (Unix) mod_ssl/2.8.6 OpenSSL/0.9.6c .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ´ Como vemos en estos dos ejemplos, utilizando unicamente un cliente de FTP y un cliente de Telnet, el atacante puede hacerse una idea de las aplicaciones (y de sus respectivas versiones) que la red del dominio victima.com est´ utilizando para ofrecer sus servicios. a En el ejemplo mostrado, el atacante habr´a descubierto que detr´ s de los servicios FTP ı a y HTTP que ofrece la red existe un servidor de FTP llamado ProFTPD Server (en su versi´ n 1.2.4) y un servidor de HTTP llamado Apache (en su versi´ n 1.3.23) compilado o o para funcionar en un sistema Unix. La informaci´ n del servidor de HTTP tambi´ n le o e muestra que el servidor Apache est´ utilizando la librer´a criptogr´ fica OpenSSL (en su a ı a versi´ n 0.9.6c) para poder ofrecer la versi´ n segura de HTTP por medio del protocolo o o criptogr´ fico SSL (HTTPS) mediante la utilizaci´ n del m´ dulo mod ssl (en su versi´ n a o o o 2.8.6). Grupos de noticias y buscadores de internet Finalmente, esta primera fase de recogida de informaci´ n mediante herramientas de admio nistraci´ n suele finalizar realizando una serie de consultas en grupos de noticias, buscadoo res de p´ ginas web o meta buscadores. Mediante esta consultas, el atacante puede obtener a informaci´ n emitida por los usuarios de la organizaci´ n asociada a la red que desea atao o car. Una simple b´ squeda de la cadena @victima.com en http://groups.goou gle.com o http://www.google.com puede ofrecer al atacante detalles de inter´ s, e como podr´an ser los sistemas operativos existentes en la red, tecnolog´as y servidores utiı ı lizados, el conocimiento en cuanto a temas de seguridad por parte de los administradores, etc. Perfil humano de la organizaci´ n o Muchas veces los propios administradores de la red pueden divulgar, sin darse ´ cuenta, informacion sensible de sus sistemas cuando utilizan listas de correo o grupos de noticias publicos. ´ Al hacer preguntas, o al contestar otras, pueden poner en peligro los equipos de su red al dar publicamente ´ ejemplos a partir de la ´ informacion de sus sistemas.
  22. 22. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 14 ´ 1.2.2. Busqueda de huellas identificativas Aparte de la utilizaci´ n de herramientas de administraci´ n y servicios de internet, existen o o t´ cnicas m´ s avanzadas que permiten extraer informaci´ n m´ s precisa de un sistema o de e a o a una red en concreto. . La utilizaci´ n de estas t´ cnicas se conoce con el nombre de fingerprinting, es decir, o e obtenci´ n de la huella identificativa de un sistema o equipo conectado a la red. o Identificaci´ n de mecanismos de control TCP o La huella identificativa que un atacante querr´a obtener de los sistemas de una red hace ı referencia a toda aquella informaci´ n de la implementaci´ n de pila TCP/IP de los mismos. o o En primer lugar, esta informaci´ n le permitir´ descubrir de forma muy fiable el sistema o a operativo que se ejecuta en la m´ quina analizada. Por otro lado, estos datos, junto con a la versi´ n del servicio y del servidor obtenidos anteriormente, facilitar´ n al atacante la o a b´ squeda de herramientas necesarias para realizar, por ejemplo, una explotaci´ n de un u o servicio contra algunos de estos sistemas. ´ * En ingles, TCP three-way handshake. La mayor parte de las t´ cnicas para obtener esta huella identificativa se basan en la infore maci´ n de la pila TCP/IP que puede obtenerse a partir de los mecanismos de control del o intercambio de tres pasos propio del protocolo TCP/IP. El protocolo TCP es un protocolo de la capa de transporte que asegura que los datos sean enviados correctamente. Esto significa que se garantiza que la informaci´ n recibida se o corresponda con la informaci´ n enviada y que los paquetes sean ensamblados en el mismo o orden en que fueron enviados. Generalmente, las caracter´sticas de implementaci´ n de los mecanismos de control inı o corporados en el dise˜ o de TCP en pila TCP/IP de un sistema operativo se basa en la n interpretaci´ n que los desarrolladores realizan de los RFC. o . La interpretaci´ n de los RFC (y por lo tanto, las caracter´sticas propias de impleo ı mentaci´ n) puede ser muy distinta en cada sistema operativo (incluso en diferentes o versiones de un mismo sistema operativo). As´ pues, la probabilidad de acierto del ı sistema operativo remoto mediante esta informaci´ n es muy elevada. o Los RFC ... ´ ... (en ingles, Requests for Comments ) son un conjunto ´ de documentos tecnicos y notas organizativas sobre internet (originalmente sobre ARPANET). Mirad http://www.ietf.org ´ ´ para mas informacion.
  23. 23. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 15 Identificaci´ n de respuestas ICMP o Aunque el objetivo original del protocolo ICMP es el de notificar errores y condiciones inusuales (que requieren una especial atenci´ n respecto al protocolo IP), es posible poder o realizar un uso indebido de este protocolo para obtener huellas identificativas de un sistema remoto. Comentaremos a continuaci´ n algunos ejemplos de c´ mo obtener estas huellas a partir de o o las distintas respuestas ofrecidas mediante el tr´ fico ICMP: a • ICMP echo. Como hemos visto anteriormente, el uso de tr´ fico ICMP de tipo echo a permite la exploraci´ n de sistemas activos. As´, con esta exploraci´ n se pretende ideno ı o tificar los equipos existentes dentro de la red que se quiere explorar, normalmente accesibles desde internet. . El comando ping puede informar, mediante paquetes ICMP de tipos echo-request y echo-reply, sobre si una determinada direcci´ n IP est´ o o a no activa. El campo TTL, utilizado en este intercambio de paquetes echo de ICMP, suele ser inicializado de forma distinta seg´ n el sistema operativo que haya detr´ s del equipo. u a Por otra parte, cuando se env´a un paquete ICMP echo-request hacia la direcı ´ ci´ n de difusi´ n (broadcast), se consigue que con un unico paquete enviado todos los o o equipos respondan con un paquete ICMP de tipo echo-reply. . Esta caracter´stica no es propia de todos los sistemas operativos. As´, por ejemplo, ı ı puede estar presente en algunas variantes de sistemas operativos Unix, mientras que los sistemas operativos de Microsoft no responden a este tipo de paquetes. Estas dos informaciones, el n´ mero de TTL inicial y la respuesta a un ping enviado por u difusi´ n, podr´a ser de utilizado como una primera huella identificativa de los sistemas o ı de la red. • ICMP timestamp. Mediante la transmisi´ n de un paquete ICMP de tipo timestampo request, si un sistema est´ activo, se recibir´ un paquete de tipo timestamp-reply, a a indicando si es posible conocer la referencia de tiempo en el sistema de destino. ICMP El protocolo ICMP es el encargado de realizar el control de flujo de los datagramas IP que circulan por una red TCP/IP. Este protocolo consta de varias funcionalidades que permiten realizar desde la ´ comunicacion de situaciones con anomal´as (por ejemplo, ı para indicar que no se ha podido realizar el entrega de un datagrama IP) hasta la ´ comprobacion del estado de ´ una maquina en la red.
  24. 24. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 16 Ataques contra redes TCP/IP . La decisi´ n de responder o no a estos paquetes depende de la implementaci´ n. Alo o gunos sistemas operativos Windows s´ responden, mientras que otros no lo hacen. ı No obstante, la mayor´a de los sistemas operativos Unix s´ que suelen implemenı ı tarlo. Seg´ n si los sistemas de la red responden o no ante esta petici´ n, su huella identificativa u o apuntar´ a un posible sistema o a otro. a • ICMP information. La finalidad de los paquetes ICMP de tipo informationrequest y su respuesta asociada, information-reply, consiste en permitir que ciertos equipos que no disponen de disco puedan extraer su propia configuraci´ n, auo toconfigurarse en el momento de inicio, obtener su direcci´ n IP, etc. o . Aunque las recomendaciones de seguridad indican que los sistemas operativos no deber´an generar este tipo de paquetes ni responder a ellos, la realidad de las imı plementaciones existentes es otra. La respuesta, en lugar de indicar la direcci´ n IP de la red en el campo de origen, o indica la direcci´ n IP del equipo. Algunos sistemas operativos responder´ n unicamente o a ´ cuando la direcci´ n IP de destino del paquete tenga el valor de una direcci´ n IP de o o confianza. Otros sistemas, as´ como muchos dispositivos de red, implementan distintos ı m´ todos de respuesta ante este tipo de paquetes. Todas estas diferencias se pueden e utilizar en el momento de confeccionar la huella identificativa. 1.2.3. Exploraci´ n de puertos o La exploraci´ n de puertos* es una t´ cnica ampliamente utilizada para identificar los o e ´ servicios que ofrecen los sistemas de destino. Suele ser la ultima de las actividades previas ´ * En ingles, Port Scanning. a la realizaci´ n de un ataque. o . La exploraci´ n de puertos puede permitir el reconocimiento de los servicios ofreo cidos por cada uno de los equipos encontrados en la red escogida. Con esta informaci´ n, el atacante podr´a realizar posteriormente una b´ squeda de exploits que le o ı u permitiera un ataque de intrusi´ n en el sistema analizado**. o ** Mirad el cap´tulo ı ´ Deficiencias de programacion ´ de este mismo modulo ´ ´ didactico para mas ´ informacion.
  25. 25. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 17 Exploraci´ n de puertos TCP o Aparte de ser de utilidad para obtener la huella identificativa de un sistema conectado a la red, la exploraci´ n de puertos TCP se puede utilizar para descubrir si dicho sistema ofrece o o no un determinado servicio. Existe un grande n´ mero de t´ cnicas para realizar esta exploraci´ n de puertos TCP. Entre u e o las m´ s conocidas, podemos destacar las siguientes: a • TCP connect scan. Mediante el establecimiento de una conexi´ n TCP completa (como pletando los tres pasos del establecimiento de la conexi´ n) la exploraci´ n puede ir anao o lizando todos los puertos posibles. Si la conexi´ n se realiza correctamente, se anotar´ o a el puerto como abierto (realizando una suposici´ n de su servicio asociado seg´ n el o u n´ mero de puerto). u • ´ TCP SYN scan. Enviando unicamente paquetes de inicio de conexi´ n (SYN) por cada o ´ uno de los puertos que se quieren analizar se puede determinar si estos est´ n abiertos a o no. Recibir como respuesta un paquete RST-ACK significa que no existe ning´ n u servicio que escuche por este puerto. Por el contrario, si se recibe un paquete SYN-ACK, podemos afirmar la existencia de un servicio asociado a dicho puerto TCP. En este caso, se enviar´ un paquete RST-ACK a para no establecer conexi´ n y no ser registrados por el sistema objetivo, a diferencia o del caso anterior (TCP connect scan). • TCP FIN scan.Al enviar un paquete FIN a un puerto, deber´amos recibir un paquete ı de reset (RST) s´ dicho puerto est´ cerrado. Esta t´ cnica se aplica principalmente sobre ı a e implementaciones de pilas TCP/IP de sistemas Unix. • TCP Xmas Tree scan. Esta t´ cnica es muy similar a la anterior, y tambi´ n se obtiene e e como resultado un paquete de reset si el puerto est´ cerrado. En este caso se env´an a ı paquetes FIN, URG y PUSH. • TCP Null scan. En el caso de poner a cero todos los indicadores de la cabecera TCP, la exploraci´ n deber´a recibir como resultado un paquete de reset en los puertos no o ı activos. . La mayor parte de aplicaciones para realizar exploraci´ n de puertos TCP suelen o ser ruidosas, es decir, no intentan esconder lo que se est´ analizando la red. Esto a suele ser as´ porque se presume que o bien nadie est´ revisando la actividad de ı a exploraci´ n o que, utilizando un equipo comprometido, nadie podr´ descubrir el o a equipo desde el que realmente se realiza la exploraci´ n de puertos. o Ataques contra redes TCP/IP
  26. 26. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 18 Exploraci´ n de puertos UDP o . Mediante la exploraci´ n de puertos UDP es posible determinar si un sistema est´ o a o no disponible, as´ como encontrar los servicios asociados a los puertos UDP que ı encontramos abiertos. Para realizar esta exploraci´ n se env´an datagramas UDP sin ninguna informaci´ n al camo ı o po de datos. En el caso de que el puerto est´ cerrado, se recibir´ un mensaje ICMP de e a puerto no alcanzable (port unreachable). Si el puerto est´ abierto, no se recibir´ ninguna a a respuesta. Dado que UDP es un protocolo no orientado a conexi´ n, la fiabilidad de este m´ todo o e depende de numerosos factores (m´ s todav´a en internet), como son la utilizaci´ n de la red a ı o y sus recursos, la carga existente, la existencia de filtros de paquetes en sistemas finales o en sistemas cortafuegos, etc. Asimismo, y a diferencia de las exploraciones TCP, se trata de un proceso mucho m´ s lena to, puesto que la recepci´ n de los paquetes enviados se consigue mediante el vencimiento o de temporizadores (timeouts). En el caso de detectar un elevado n´ mero de puertos UDP abiertos, el atacante podr´a u ı concluir que existe un sistema cortafuegos entre su equipo y el objetivo. Para confirmar ´ esta ultima posibilidad, se puede enviar un datagrama UDP al puerto cero. Esto tendr´a que ı generar una respuesta ICMP de puerto no alcanzable. No recibir esta respuesta significa que existe un dispositivo que filtra el tr´ fico. a Herramientas para realizar la exploraci´ n de puertos o La aplicaci´ n por excelencia para realizar exploraci´ n de puertos es Nmap (Network Mapo o per). Esta herramienta implementa la gran mayor´a de t´ cnicas conocidas para exploraci´ n ı e o de puertos y permite descubrir informaci´ n de los servicios y sistemas encontrados. Nmap o tambi´ n implementa un gran n´ mero de t´ cnicas de reconocimiento de huellas identificae u e tivas, como las que hemos visto anteriormente. Mediante Nmap pueden realizarse, por ejemplo, las siguientes acciones de exploraci´ n: o • Descubrimiento de direcciones IP activas mediante una exploraci´ n de la red: o . nmap -sP IP ADDRESS/NETMASK Ataques contra redes TCP/IP
  27. 27. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 • 19 Exploraci´ n de puertos TCP activos: o . nmap -sT IP ADDRESS/NETMASK • Exploraci´ n de puertos UDP activos: o . nmap -sU IP ADDRESS/NETMASK • Exploraci´ n del tipo de sistema operativo de un equipo en red: o . nmap -O IP ADDRESS/NETMASK La siguiente imagen muestra un ejemplo de exploraci´ n de puertos mediante la herramieno ta Nmap: Generalmente, Nmap es utilizado internamente por otras aplicaciones como, por ejemplo, esc´ ners de vulnerabilidades, herramientas de detecci´ n de sistemas activos, servicios web a o que ofrecen exploraci´ n de puertos, etc. o Ataques contra redes TCP/IP A tener en cuenta La mayor parte de ´ herramientas de exploracion de puertos pueden ser muy “ruidosas” y no son bien vistas por los administradores de red. Es altamente recomendable no utilizar estas herramientas sin el consentimiento expl´cito de ı los responsables de la red.
  28. 28. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 20 Ataques contra redes TCP/IP ´ Este es el caso de la utilidad Nessus. Se trata de una utilidad que permite comprobar si un sistema es vulnerable a un conjunto muy amplio de problemas de seguridad almacenados en su base de datos. Si encuentra alguna de estas debilidades en el sistema analizado, se encargar´ de informar sobre su existencia y sobre posibles soluciones. a . Nmap, junto con Nessus, son dos de las herramientas m´ s frecuentemente utilia zadas tanto por administradores de redes como por posibles atacantes, puesto que ofrecen la mayor parte de los datos necesarios para estudiar el comportamiento de un sistema o red que se quiere atacar*. ´ * Mirad el cap´tulo Escaners ı de vulnerabilidades del ´ ´ modulo didactico ´ Mecanismos de deteccion de ataques e intrusiones para ´ ´ mas informacion.
  29. 29. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 21 Ataques contra redes TCP/IP 1.3. Escuchas de red . Uno de los primeros ataques contra las dos primeras capas del modelo TCP/IP son las escuchas de red. Se trata de un ataque realmente efectivo, puesto que permite la obtenci´ n o de una gran cantidad de informaci´ n sensible. o Mediante aplicaciones que se encargan de capturar e interpretar tramas y datagramas en entornos de red basados en difusi´ n, conocidos como escuchas de red o sniffers, es posible o realizar el an´ lisis de la informaci´ n contenida en los paquetes TCP/IP que interceptan a o para poder extraer todo tipo de informaci´ n. o Redes Ethernet Las redes Ethernet son un ejemplo de redes basadas en ´ difusion. . Un sniffer no es m´ s que un sencillo programa que intercepta toda la informaci´ n a o que pase por la interfaz de red a la que est´ asociado. Una vez capturada, se podr´ e a almacenar para su an´ lisis posterior. a De esta forma, sin necesidad de acceso a ning´ n sistema de la red, un atacante podr´ u a obtener informaci´ n sobre cuentas de usuario, claves de acceso o incluso mensajes de o correo electr´ nico en el que se env´an estas claves. Este tipo de t´ cnica se conoce como o ı e sniffing. Las t´ cnicas de niffing tambi´ n se conocen como t´ cnicas de eavesdropping y t´ cnicas e e e e de snooping. La primera, eavesdropping, es una variante del sniffing, caracterizada por realizar la adquisici´ n o intercepci´ n del tr´ fico que circula por la red de forma pasiva, es o o a decir, sin modificar el contenido de la informaci´ n. o Por otra parte, las t´ cnicas de snooping se caracterizan por el almacenamiento de la infore maci´ n capturada en el ordenador del atacante, mediante una conexi´ n remota establecida o o durante toda la sesi´ n de captura. En este caso, tampoco se modifica la informaci´ n ino o cluida en la transmisi´ n. o La forma m´ s habitual de realizar t´ cnicas de sniffing en una red, probablemente porque a e est´ al alcance de todo el mundo, es la que podr´amos denominar sniffing software, utilia ı zando las aplicaciones que ya mencionadas. Sniffing hardware ´ Es posible analizar el trafico de una red pinchando en un cable de red de un dispositivo por el que circula todo el ´ ´ trafico. Tambien se pueden utilizar receptores situados en medios de comunicaciones sin cables.
  30. 30. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 22 Ataques contra redes TCP/IP 1.3.1. Desactivaci´ n de filtro MAC o Una de las t´ cnicas m´ s utilizadas por la mayor´a de los sniffers de redes Ethernet se e a ı basa en la posibilidad de configurar la interfaz de red para que desactive su filtro MAC (poniendo la tarjeta de red en modo promiscuo). Las redes basadas en dispositivos Ethernet fueron concebidas en torno a una idea principal: todas las m´ quinas de una misma red local comparten el mismo medio, de manera que a todos los equipos son capaces de ver el tr´ fico de la red de forma global. a Cuando se env´an datos es necesario especificar claramente a qui´ n van dirigidos, indicanı e do la direcci´ n MAC. De los 48 bits que componen la direcci´ n MAC, los 24 primeros bits o o identifican al fabricante del hardware, y los 24 bits restantes corresponden al n´ mero de u serie asignado por el fabricante. Esto garantiza que dos tarjetas no puedan tener la misma direcci´ n MAC. o Para evitar que cualquier m´ quina se pueda apropiar de informaci´ n fraudulenta, las tarjea o tas Ethernet incorporan un filtro que ignora todo el tr´ fico que no les pertenece, descartando a aquellos paquetes con una direcci´ n MAC que no coincide con la suya. La desactivaci´ n o o de este filtro se conoce con el nombre de modo promiscuo. Con el uso adecuado de expresiones regulares y otros filtros de texto, se podr´ visualizar a ´ o almacenar unicamente la informaci´ n que m´ s interese; en especial, aquella informaci´ n o a o sensible, como nombres de usuario y contrase˜ as. n ´ El entorno en el que suele ser m´ s efectivo este tipo de escuchas son las redes de area a local configuradas con una topolog´a en bus. En este tipo de redes, todos los equipos est´ n ı a conectado a un mismo cable. Esto implica que todo el tr´ fico transmitido y recibido por a los equipos de la red pasa por este medio com´ n. u . Una soluci´ n para evitar esta t´ cnica consiste en la segmentaci´ n de la red y de o e o los equipos mediante el uso de conmutadores (switches). Al segmentar la red y los ´ equipos, el unico tr´ fico que tendr´an que ver las m´ quinas ser´a el que les pertenea ı a ı ´ ce, puesto que el conmutador se encarga de encaminar hacia el equipo unicamente aquellos paquetes destinados a su direcci´ n MAC. Aun as´, existen t´ cnicas para o ı e poder continuar realizando sniffing aunque se haya segmentado la red mediante switches. Una de estas t´ cnicas es la suplantaci´ n de ARP, que describiremos a e o continuaci´ n. o Modo promiscuo Si es posible poner la tarjeta de red en modo promiscuo, la ´ ´ aplicacion podra empezar a capturar tanto los paquetes ´ destinados a esta maquina ´ como el resto de trafico de la misma red.
  31. 31. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 23 1.3.2. Suplantaci´ n de ARP o El protocolo ARP es el encargado de traducir direcciones IP de 32 bits, a las correspondientes direcciones hardware, generalmente de 48 bits en dispositivos Ethernet. Cuando un ordenador necesita resolver una direcci´ n IP en una direcci´ n MAC, lo que hace es o o efectuar una petici´ n ARP (arp-request) a la direcci´ n de difusi´ n de dicho segmento o o o de red, FF:FF:FF:FF:FF:FF, solicitando que el equipo que tiene esta IP responda con su direcci´ n MAC. o 192.168.0.1 0A:0A:0A:0A:0A:0A Broadcast FF:FF:FF:FF:FF:FF 192.168.0.2 0B:0B:0B:0B:0B:0B ARP-REQUEST Who has 192.168.0.2? Tell 192.168.0.1 ARP-REPLY 192.168.0.2 is at 0B:0B:0B:0B:0B:0B Datagrama IP La figura anterior refleja c´ mo una m´ quina A, con IP 192.168.0.1 y MAC 0A:0Ao a :0A:0A:0A:0A solicita por difusi´ n qu´ direcci´ n MAC est´ asociada a la IP 192.o e o a 168.0.2. La m´ quina B, con IP 192.168.0.2 y MAC 0B:0B:0B:0B:0B:0B dea ´ ber´a ser la unica que respondiera a la petici´ n. ı o Con el objetivo de reducir el tr´ fico en la red, cada respuesta de ARP (arp-reply) que a llega a la tarjeta de red es almacenada en una tabla cach´ , aunque la m´ quina no haya e a realizado la correspondiente petici´ n. As´ pues, toda respuesta de ARP que llega a la o ı m´ quina es almacenada en la tabla de ARP de esta m´ quina. Este factor es el que se a a utilizar´ para realizar el ataque de suplantaci´ n de ARP*. a o ˜ * Este engano se conoce con el nombre de ”envenenamiento de ARP”(ARP poisoning). . El objetivo de un ataque de suplantaci´ n de ARP es poder capturar tr´ fico ajeno sin o a necesidad de poner en modo promiscuo la interfaz de red. Envenenando la tabla de ARP de los equipos involucrados en la comunicaci´ n que se quiere capturar se o puede conseguir que el conmutador les haga llegar los paquetes. Si el enga˜ o es n posible, cuando las dos m´ quinas empiecen la comunicaci´ n enviar´ n sus paquea o a ´ tes hacia la m´ quina donde est´ el sniffer. Este, para no descubrir el enga˜ o, se a a n encargar´ de encaminar el tr´ fico que ha interceptado. a a
  32. 32. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 24 En la siguiente figura se puede ver c´ mo la m´ quina C se coloca entre dos m´ quinas (A y o a a B) y les env´a paquetes de tipo arp-reply: ı Conexión real Conexión lógica 192.168.0.1 0A:0A:0A:0A:0A:0A 192.168.0.2 0B:0B:0B:0B:0B:0B 192.168.0.3 0C:0C:0C:0C:0C:0C ARP-REPLY 192.168.0.2 is at 0C:0C:0C:0C:0C:0C ARP-REPLY ARP-REPLY 192.168.0.1 is at 0C:0C:0C:0C:0C:0C 192.168.0.2 is at 0C:0C:0C:0C:0C:0C ARP-REPLY ARP-REPLY 192.168.0.1 is at 0C:0C:0C:0C:0C:0C 192.168.0.2 is at 0C:0C:0C:0C:0C:0C ARP-REPLY 192.168.0.1 is at 0C:0C:0C:0C:0C:0C De esta forma, toda comunicaci´ n entre las m´ quinas A y B pasar´ por la m´ quina C (ya o a a a que tanto A como B dirigen sus paquetes a la direcci´ n MAC 0C:0C:0C:0C:0C:0C). El o flujo de arp-reply ser´ constante, para evitar que la tabla de ARP de las m´ quinas A y a a B se refresque con la informaci´ n correcta. Este proceso corresponde al envenenamiento o de ARP comentado. A partir del momento en que el envenenamiento se haga efectivo, los paquetes enviados entre A y B ir´ n encaminados a C. a Como vemos en la siguiente figura, al intentar realizar el envenenamiento de ARP podr´a ı producirse una condici´ n de carrera (race condition). o 192.168.0.1 0A:0A:0A:0A:0A:0A A) Broadcast FF:FF:FF:FF:FF:FF ARP-REQUEST Who has 192.168.0.2? Tell 192.168.0.1 ARP-REPLY 192.168.0.2 is at 0C:0C:0C:0C:0C:0C ARP-REPLY 192.168.0.2 is at 0B:0B:0B:0B:0B:0B B) ARP-REQUEST Who has 192.168.0.2? Tell 192.168.0.1 ARP-REPLY 192.168.0.2 is at 0B:0B:0B:0B:0B:0B ARP-REPLY 192.168.0.2 is at 0C:0C:0C:0C:0C:0C 192.168.0.3 0C:0C:0C:0C:0C:0C 192.168.0.2 0B:0B:0B:0B:0B:0B
  33. 33. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 25 Si la m´ quina C responde al arp-request antes que el servidor principal, su arpa replay ser´ sobreescrito por el de la m´ quina verdadera. Por otra parte, si fuera al a a contrario (figura b), ser´a el arp-reply verdadero el que ser´a eliminado por el de la ı ı m´ quina C (produci´ ndose en este caso el envenenamiento de ARP). a e . Una posible soluci´ n para evitar ataques de suplantaci´ n de ARP es la utilizaci´ n o o o de direcciones MAC est´ ticas, de manera que no puedan ser actualizadas. En esa te caso, los arp-reply enviados por el atacante ser´ n ignorados. El principal a inconveniente de esta soluci´ n es la necesidad de almacenar en la tabla ARP la o asociaci´ n entre la direcci´ n IP (con sus correspondientes direcciones MAC) de o o cada equipo de la red y la necesidad de actualizaci´ n manual en el caso de cambios o de tarjetas Ethernet en los equipos involucrados. 1.3.3. Herramientas disponibles para realizar sniffing Una de las aplicaciones m´ s conocidas, en especial en sistemas Unix, es Tcpdump. Este a programa, una vez ejecutado, captura todos los paquetes que llegan a nuestra m´ quina y a muestra por consola toda la informaci´ n relativa a los mismos. Se trata de una herramienta o que se ejecuta desde la l´nea de comandos y que cuenta con una gran cantidad de opciones ı para mostrar la informaci´ n capturada de formas muy diversas. Tcpdump es una herramio enta muy potente y es la base para muchos otros sniffers que han aparecido posteriormente. Otra herramienta muy conocida es Ettercap. Esta aplicaci´ n, que tambi´ n funciona desde o e consola, ofrece un modo de ejecuci´ n interactivo en el que se muestran las conexiones o accesibles desde la m´ quina donde se encuentra instalado y que permite seleccionar cuala quiera de ellas para la captura de paquetes. Ettercap es una aplicaci´ n muy potente que o permite utilizar la mayor parte de las t´ cnicas existentes para realizar tanto sniffing como e eavesdropping y snooping. La siguiente imagen muestra una sesi´ n de Telnet capturada o mediante Ettercap: Ataques contra redes TCP/IP
  34. 34. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 26 Ataques contra redes TCP/IP 1.4. Fragmentaci´ n IP o . El protocolo IP es el encargado de seleccionar la trayectoria que deben seguir los datagramas IP. No es un protocolo fiable ni orientado a conexi´ n, es decir, no garantiza el control o de flujo, la recuperaci´ n de errores ni que los datos lleguen a su destino. o A la hora de pasar a la capa inferior, los datagramas IP se encapsulan en tramas que, dependiendo de la red f´sica utilizada, tienen una longitud determinada. Cuando los datagramas ı IP viajan de unos equipos a otros, pueden pasar por distintos tipos de redes. El tama˜ o n ´ * En ingles, Maxim Transfer Unit. exacto de estos paquetes, denominado MTU*, puede variar de una red a otra dependiendo del medio f´sico empleado para su transmisi´ n. ı o As´, el protocolo IP debe tener en cuenta que ning´ n dispositivo puede transmitir paquetes ı u de una longitud superior al MTU establecido por la red por la que hay que pasar. A causa de este problema, es necesaria la reconversi´ n de datagramas IP al formato adecuado. o . La fragmentaci´ n divide los datagramas IP en fragmentos de menor longitud y se o realiza en el nivel inferior de la arquitectura para que sea posible recomponer los datagramas IP de forma transparente en el resto de niveles. El reensamblado realiza la operaci´ n contraria. o El proceso de fragmentaci´ n y reensamblado se ir´ repitiendo a medida que los o a datagramas vayan viajando por diferentes redes. Aunque la fragmentaci´ n es, por lo general, una consecuencia natural del tr´ fico que viaja o a a trav´ s de redes con MTU de distintos tama˜ os, es posible que un atacante pueda realizar e n un mal uso de esta propiedad del protocolo IP para provocar ataques de denegaci´ n de o servicio (a causa de una mala implementaci´ n de la pila TCP/IP), as´ como para esconder o ı y facilitar la fase de recogida de informaci´ n (b´ squeda de huellas identificativas, exploo u raci´ n de puertos, . . . ) o incluso para hacer pasar desapercibidos e introducir en la red o ´ paquetes para la explotaci´ n de servicios. Esto ultimo es posible porque muchos de los o mecanismos de prevenci´ n y de detecci´ n que veremos en m´ dulos posteriores no impleo o o mentan el reensamblado de paquetes, y por ello no detectar´ n ni prevendr´ n este tipo de a a actividad a causa del enmascaramiento que la fragmentaci´ n les ofrece. o As´ pues, es importante comprender c´ mo funciona esta faceta del protocolo IP para enı o tender este mal uso del tr´ fico fragmentado que podr´a realizar un posible atacante para a ı conseguir su objetivo. Fragmentaci´ n ... o ´ ... y ataques de denegacion de servicio. Ved la ´ informacion sobre los ataques teardrop y ping de la ´ muerte en la seccion sobre denegaciones de servicio de ´ ´ este mismo modulo didactico ´ ´ para mas informacion.
  35. 35. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 27 1.4.1. Fragmentaci´ n en redes Ethernet o La MTU por defecto de un datagrama IP para una red de tipo Ethernet es de 1500 bytes. As´ pues, si un datagrama IP es mayor a este tama˜ o y necesita circular por este tipo de red, ı n ser´ necesario fragmentarlo por medio del encaminador que dirige la red. Los fragmentos a pueden incluso fragmentarse m´ s si pasan por una red con una MTU m´ s peque˜ a que su a a n tama˜ o. n ´ Para que el equipo de destino pueda reconstruir los fragmentos, estos deben contener la siguiente informaci´ n: o • Cada fragmento tiene que estar asociado a otro utilizando un identificador de fragmento com´ n. Este se clonar´ desde un campo de la cabecera IP, conocido como identificador u ´ a IP (tambi´ n llamado ID de fragmento). e • Informaci´ n sobre su posici´ n en el paquete inicial (paquete no fragmentado). o o • Informaci´ n sobre la longitud de los datos transportados al fragmento. o • Cada fragmento tiene que saber si existen m´ s fragmentos a continuaci´ n. Esto se a o indica en la cabecera, dejando o no activado el indicador de m´ s fragmentos (more a fragments, MF) del datagrama IP. Toda esta informaci´ n ir´ en la cabecera IP, colocada en el datagrama IP. Esto afectar´ o a a a todo el tr´ fico TCP/IP puesto que IP es el protocolo responsable de la entrega de los a paquetes. En la siguiente figura vemos la configuraci´ n de un datagrama IP no fragmentado: o Cabecera IP de 20 bytes 1480 bytes de datos encapsulados Ethernet (MTU=1500) En la cabecera IP, que normalmente ser´ de 20 bytes, estar´ contenida la informaci´ n a a o necesaria para poder dirigir el datagrama IP hacia su destino (direcci´ n IP de origen y o destino, direcci´ n del encaminamiento de origen, . . . ). o Ataques contra redes TCP/IP
  36. 36. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 28 ´ Tras la cabecera IP, se encapsulan los datos. Estos pueden ser tanto de un protocolo IP como TCP, UDP o ICMP. Por ejemplo, si estos datos fueran TCP, incluir´an una cabecera ı TCP y datos TCP. 20 8 4000 bytes de datos ICMP Datos ICMP 4028 bytes en total en el datagrama IP Cabecera IP Cabecera ICMP (petición eco ICMP) Ethernet MTU = 1500 1500 bytes 1500 bytes 1068 bytes En la figura anterior podemos observar una petici´ n ICMP de tipo echo que pasa por una o red Ethernet (MTU de 1500). Esta petici´ n ICMP es anormalmente grande, no representao tiva del tr´ fico normal, pero ser´ utilizada para mostrar c´ mo se produce la fragmentaci´ n. a a o o Por lo tanto, el datagrama de 4028 bytes deber´ dividirse en fragmentos de 1500 bytes o a menos. Estos paquetes fragmentados de 1500 bytes tendr´ n una cabecera IP de 20 bytes como a fragmento inicial, quedando un m´ ximo de 1480 bytes para los datos en cada fragmena to. Las siguientes secciones examinan el contenido de cada uno de los tres fragmentos individuales. Fragmento inicial La cabecera IP original se clonar´ para que contenga un identificador de fragmentos id´ ntico a e tanto para el primer como para el resto de fragmentos. ´ ´ El primer fragmento es el unico que contendr´ la cabecera del mensaje ICMP. Esta no ser´ a a clonada en los fragmentos posteriores. Como veremos m´ s adelante, este hecho identifica a la naturaleza del fragmento original.
  37. 37. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 29 Observando la siguiente figura podemos ver con atenci´ n el fragmento inicial: o 20 8 1472 Datos ICMP Cabecera IP Cabecera ICMP (petición eco ICMP) 20 Cabecera IP Offset = 0 Longitud = 1480 Más fragmentos = 1 8 1472 Datos ICMP 1500 bytes en total Adem´ s, este primer fragmento tiene un valor de desplazamiento igual a 0, una longitud a de 1480 bytes, 1472 bytes de datos, 8 bytes de cabecera ICMP y un indicador de m´ s a fragmentos. A continuaci´ n podemos observar con m´ s detalle la configuraci´ n de este o a o primer fragmento: 1500 bytes en total en un datagrama IP 20 8 Cabecera IP 1472 bytes de datos ICMP Cabecera ICMP Tipo = petición eco ICMP Protocolo = ICMP ID de fragmento = 21223 Indicador de más fragmentos = 1 Offset del fragmento = 0 Longitud de los datos = 1480 Los primeros 20 bytes de los 1500 son la cabecera IP, y los 8 bytes siguientes son la cabecera ICMP. Recordemos que este paquete fragmentado es una petici´ n ICMP de tipo o echo que tiene una cabecera de 8 bytes en su paquete original. Los 1472 bytes restantes son para los datos de ICMP. Adem´ s de los campos normales a de la cabecera IP, como origen, destino y protocolo (en este caso ICMP), hay campos espec´ficos para la fragmentaci´ n. ı o Ataques contra redes TCP/IP
  38. 38. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 30 El identificador de fragmento con un valor de 21223 es el enlace com´ n para el resto de u los fragmentos. El indicador de m´ s fragmentos avisar´ de que el otro fragmento sigue a a al actual. As´ pues, en este primer fragmento el indicador se establece en 1 para indicar ı que hay m´ s fragmentos a continuaci´ n. Vemos tambi´ n que se almacena el valor de los a o e datos de este fragmento en relaci´ n con los datos del datagrama completo. Para el primer o registro, el valor de desplazamiento es 0. Finalmente, se almacena la longitud de los datos contenidos en este fragmento como la longitud del mismo; en este caso, la longitud es 1480, es decir, la cabecera ICMP de 8 bytes seguida por los primeros 1472 bytes de los datos ICMP. Fragmento siguiente Podemos ver en la siguiente figura c´ mo en el fragmento siguiente la cabecera IP de la o cabecera original es clonada con un identificador de fragmento id´ ntico: e 1480 Datos ICMP 20 Offset = 1480 Longitud = 1480 Más fragmentos = 1 Cabecera IP 1480 Datos ICMP 1500 bytes en total Vemos tambi´ n c´ mo se reproduce la mayor parte del resto de datos de la cabecera IP e o ´ (como el origen y destino) en la nueva cabecera. Detr´ s de esta van los 1480 bytes de a datos ICMP. Este segundo fragmento tiene un valor de 1480 y una longitud de 1480 bytes. Adem´ s, como todav´a le sigue un fragmento m´ s, se activa nuevamente el indicador de a ı a m´ s fragmentos. a 1500 bytes en total del datagrama IP 20 1480 bytes de datos ICMP Cabecera IP Protocolo = ICMP ID de fragmento = 21223 Indicador de más fragmentos = 1 Offset del fragmento = 1480 Longitud de los datos = 1480 Ataques contra redes TCP/IP
  39. 39. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 31 La figura anterior muestra el datagrama IP que lleva el segundo fragmento que, como el resto de fragmentos, necesita una cabecera IP de 20 bytes. De nuevo, el protocolo de la cabecera indica ICMP. El n´ mero de identificaci´ n de fragmento contin´ a siendo 21223. Y tiene el indicador de u o u m´ s fragmentos activado, porque hay otro fragmento a continuaci´ n. a o Es importante tener presente que la cabecera ICMP del primer fragmento no ha sido clonada juntamente con los datos ICMP. Esto significa que si se examinara tan solo este ´ fragmento, no se podr´a saber el tipo de mensaje ICMP que hay almacenado. Este hecho ı puede suponer problemas importantes a la hora de utilizar dispositivos de filtrado. ´ Ultimo fragmento 1048 Datos ICMP 20 Offset = 2960 Longitud = 1048 Más fragmentos = 0 1048 Cabecera IP Datos ICMP 1068 bytes en total En la figura anterior podemos ver c´ mo, una vez m´ s, ha sido clonada la cabecera IP de o a ´ la cabecera original (con un identificador de fragmento id´ ntico). Los ultimos 1048 bytes e de datos ICMP se insertan en este nuevo datagrama IP. Este fragmento tiene un desplazamiento de 2960 y una longitud de 1048 bytes; y como no le siguen m´ s fragmentos, el a indicador de m´ s fragmentos est´ desactivado. En la siguiente figura podemos observar a a ´ con m´ s detenimiento este ultimo fragmento: a 1068 bytes en total del datagrama IP 20 1048 bytes de datos ICMP Cabecera IP Protocolo = ICMP ID de fragmento = 21223 Indicador de más fragmentos = 0 Offset del fragmento = 2960 Longitud de los datos = 1048
  40. 40. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 32 Ataques contra redes TCP/IP Detr´ s de los 20 bytes de la cabecera IP encontramos en el fragmento el resto de bytes de a los datos ICMP originales. El identificador de fragmento es 21223, y no se establece el ´ ´ indicador de m´ s fragmentos porque este es el ultimo. a El valor de desplazamiento es 2960 (la suma de los dos fragmentos anteriores de 1480 bytes). S´ lo hay 1048 bytes de datos, es decir, el resto de bytes del mensaje ICMP. Tanto o este fragmento como el segundo no tiene cabecera ICMP ni, por lo tanto, tipo de mensaje ICMP que nos indique que nos encontramos ante una petici´ n echo de ICMP. o 1.4.2. Fragmentaci´ n para emmascaramiento de datagramas IP o Como ya hemos introducido al principio de esta secci´ n, la fragmentaci´ n IP puede plano o tear una serie de problem´ ticas relacionadas con la seguridad de nuestra red. a Aparte de los problemas de denegaci´ n que veremos con m´ s detenimiento en la siguiente o a secci´ n, una de las problem´ ticas m´ s destacadas es la utilizaci´ n de fragmentaci´ n IP o a a o o malintencionada para burlar las t´ cnicas b´ sicas de inspecci´ n de datagramas IP. e a o En este caso, un atacante tratar´ de provocar intencionadamente una fragmentaci´ n en los a o datagramas que env´a a nuestra red con el objetivo de que pasen desapercibidos por difeı rentes dispositivos de prevenci´ n y de detecci´ n de ataques que no tienen implementado o o el proceso de fragmentaci´ n y reensamblado de datagramas IP. o En el caso de los dispositivos de prevenci´ n m´ s b´ sicos (como, por ejemplo, encaminadoo a a res con filtrado de paquetes), las decisiones para bloquear paquetes se basan generalmente en la informaci´ n de cabecera de los paquetes (como, por ejemplo, puertos TCP o UDP o de destino, banderas de TCP, . . . ). Esto significa que los paquetes TCP y UDP fragmentados son susceptibles de burlar aquellos mecanismos de prevenci´ n que no implementen o el proceso de reensamblado para poder tener una visi´ n global del paquete que hay que o bloquear. Por otro lado, en el caso de dispositivos de prevenci´ n m´ s avanzados (como, por ejemo a plo, pasarelas a nivel de aplicaci´ n), as´ como en la mayor parte de los mecanismos de o ı detecci´ n, las decisiones para detectar paquetes potencialmente peligrosos acostumbran a o basarse nuevamente en la inspecci´ n de la cabecera del datagrama IP, as´ como en la parte o ı de datos del paquete. Esto significa que la fragmentaci´ n se puede utilizar nuevamente o para burlar este proceso de detecci´ n y conseguir que estos paquetes entren o salgan de la o red de forma desapercibida. Con el objetivo de descubrir la MTU de la red e intentar as´ realizar fragmentaci´ n, el ı o atacante puede utilizar el indicador de no fragmentaci´ n del datagrama IP. Cuando el indio cador de no fragmentaci´ n est´ activado, como indica su nombre, no se realizar´ ninguna o a a fragmentaci´ n en el datagrama. Por lo tanto, si un datagrama con este indicador cruza o una red en la que se exija la fragmentaci´ n, el encaminador lo descubrir´ , descartar´ el o a a datagrama y devolver´ el mensaje de error al equipo emisor. Este mensaje de error ICMP a Dispositivos de prevenci´ n y o de detecci´ n. o ´ ´ Mirad los modulos didacticos ´ Mecanismos de prevencion y ´ Mecanismos de deteccion ´ ´ para mas informacion.
  41. 41. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 33 contiene la MTU de la red que requiere la fragmentaci´ n. o De esta forma, el atacante solo deber´ construir datagramas con diferentes longitudes, con a el indicador de fragmentaci´ n establecido, a la espera de recibir estos mensajes de error. o . Para solucionar el uso de la fragmentaci´ n fraudulenta y garantizar una correcta o inspecci´ n de paquetes, es necesaria la implementaci´ n del proceso de fragmentao o ci´ n y el reensamblado de datagramas en dispositivos de prevenci´ n y detecci´ n. o o o Esta soluci´ n puede suponer un coste adicional, ya que significa tener que examio nar y almacenar cada fragmento. Aunque puede resultar muy costoso en cuanto ´ a recursos (tiempo, proceso y memoria), ser´ la unica forma de asegurar que la a inspecci´ n del paquete se ha realizado de forma correcta. o Ataques contra redes TCP/IP
  42. 42. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 34 Ataques contra redes TCP/IP 1.5. Ataques de denegaci´ n de servicio o . Un ataque de denegaci´ n de servicio* es un incidente en el cual un usuario o una orgao nizaci´ n es privada de los servicios de un recurso que esperaba obtener. Normalmente, la o p´ rdida de servicio se corresponde con la imposibilidad de obtener un determinado servie cio de red como, por ejemplo, el acceso a una p´ gina web. a . Definimos denegaci´ n de servicio como la imposibilidad de acceder a un recurso o o servicio por parte de un usuario leg´timo. Es decir, la apropiaci´ n exclusiva de ı o un recurso o servicio con la intenci´ n de evitar cualquier acceso a terceras partes. o De forma m´ s restrictiva, se pueden definir los ataques de denegaci´ n de servicio en redes a o IP como la consecuci´ n total o parcial (temporal o total) del cese de la prestaci´ n de o o servicio de un equipo conectado a la red. Los ataques de denegaci´ n de servicio pueden ser provocados tanto por usuarios internos o en el sistema como por usuarios externos. Dentro del primer grupo podr´amos pensar en ı usuarios con pocos conocimientos que pueden colapsar el sistema o servicio inconscientemente. Por ejemplo, usuarios que abusan de los recursos del sistema, ocupando mucho ancho de banda en la b´ squeda de archivos de m´ sica o de pel´culas, usuarios malintenciou u ı nados que aprovechan su acceso al sistema para causar problemas de forma premeditada, etc. En el segundo grupo se encuentran aquellos usuarios que han conseguido un acceso al sistema de forma ileg´tima, falseando adem´ s la direcci´ n de origen con el prop´ sito de ı a o o evitar la detecci´ n del origen real del ataque (mediante ataques de suplantaci´ n). o o El peligro de los ataques de denegaci´ n de servicio viene dado por su independencia de o plataforma. Como sabemos, el protocolo IP permite una comunicaci´ n homog´ nea (ino e dependiente del tipo de ordenador o fabricante) a trav´ s de espacios heterog´ neos (redes e e Ethernet, ATM, . . . ). De esta forma, un ataque exitoso contra el protocolo IP se convierte inmediatamente en una amenaza real para todos los equipos conectados a la red, independientemente de la plataforma que utilicen. A continuaci´ n realizaremos una exposici´ n sobre algunos de los ataques de denegaci´ n o o o de servicio m´ s representativos. a ´ * En ingles, Deny of Service Attack (DoS).
  43. 43. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 35 1.5.1. IP Flooding . El ataque de IP Flooding se basa en una inundaci´ n masiva de la red mediante o datagramas IP. Este ataque se realiza habitualmente en redes locales o en conexiones con un gran ancho de banda. Consiste en la generaci´ n de tr´ fico basura con el objetivo de conseguir la degrao a daci´ n del servicio. De esta forma, se resume el ancho de banda disponible, ralentizando o las comunicaciones existentes de toda la red. Podemos pensar en la utilizaci´ n de este ataque principalmente en redes locales cuyo cono trol de acceso al medio es nulo y cualquier m´ quina puede ponerse a enviar y recibir paa quetes sin que se establezca ning´ n tipo de limitaci´ n en el ancho de banda que consume. u o Ataque IP Flooding Atacante El tr´ fico generado en este tipo de ataque puede ser: a • Aleatorio. Cuando la direcci´ n de origen o destino del paquete IP es ficticia o falsa. o Este tipo de ataque es el m´ s b´ sico y simplemente busca degradar el servicio de coa a municaci´ n del segmento de red al que est´ conectado el ordenador responsable del o a ataque. • Definido o dirigido. Cuando la direcci´ n de origen, destino, o incluso ambas, es la de o la m´ quina que recibe el ataque. El objetivo de este ataque es doble, ya que adem´ s a a de dejar fuera de servicio la red donde el atacante genera los datagramas IP, tambi´ n e tratar´ de colapsar al equipo de destino, sea reduciendo el ancho de banda disponible, a o bien saturando su servicio ante una gran cantidad de peticiones que el servidor ser´ a incapaz de procesar. Ataques contra redes TCP/IP
  44. 44. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 36 Los datagramas IP utilizados podr´an corresponder a: ı • UDP. Con el objetivo de generar peticiones sin conexi´ n a ninguno de los puertos o disponibles. Seg´ n la implementaci´ n de la pila TCP/IP de las m´ quinas involucradas, u o a las peticiones masivas a puertos espec´ficos UDP pueden llegar a causar el colapso del ı sistema. • ICMP. Generando mensajes de error o de control de flujo. • TCP. Para generar peticiones de conexi´ n con el objetivo de saturar los recursos de red o de la m´ quina atacada. a Una variante del IP Flooding tradicional consiste en la utilizaci´ n de la direcci´ n de difuo o si´ n de la red como direcci´ n de destino de los datagramas IP. De esta forma, el encamio o nador de la red se ver´ obligado a enviar el paquete a todos los ordenadores de la misma, a consumiendo ancho de banda y degradando el rendimiento del servicio. Tambi´ n existen otras variantes en las que se env´an peticiones ICMP de tipo echo-request e ı a varios ordenadores suplantando la direcci´ n IP de origen, sustituida por la direcci´ n de o o difusi´ n (broadcast) de la red que se quiere atacar. De esta forma, todas las respuestas o individuales se ven amplificadas y propagadas a todos los ordenadores conectados a la red. La siguiente figura representa este tipo de escenario: Ataque Broadcast IP Flooding pong (IP src=10.0.0.1) pong (IP src=10.0.0.2) pong (IP src=10.0.0.1) pong (IP src=10.0.0.2) 10.0.0.1 ping 10.0.0.1 (IP src=10.0.0.255) ping 10.0.0.2 (IP src=10.0.0.255) 10.0.0.3 Atacante pong (IP src=10.0.0.1) pong (IP src=10.0.0.2) 10.0.0.2 pong (IP src=10.0.0.1) pong (IP src=10.0.0.2) 10.0.0.254
  45. 45. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 37 1.5.2. Smurf Este tipo de ataque de denegaci´ n de servicio es una variante del ataque anterior (IP Floo oding), pero realizando una suplantaci´ n de las direcciones de origen y destino de una o petici´ n ICMP del tipo echo-request: o Ataque Smurf ping from 10.0.0.254 ping from 10.0.0.254 10.0.0.1 ping 10.0.0.255 (IP src=10.0.0.254) 10.0.0.3 Atacant ping from 10.0.0.254 ping from 10.0.0.254 pong (IP src=10.0.0.1) pong (IP src=10.0.0.2) …. pong (IP src=10.0.0.254) 10.0.0.2 10.0.0.254 Como direcci´ n de origen se pone la direcci´ n IP de la m´ quina que debe ser atacada. En o o a el campo de la direcci´ n IP de destino se pone la direcci´ n de difusi´ n de la red local o red o o o que se utilizar´ como trampol´n para colapsar a la v´ctima. a ı ı Con esta petici´ n fraudulenta, se consigue que todas las m´ quinas de la red respondan a la o a vez a una misma m´ quina, consumiendo todo el ancho de banda disponible y saturando el a ordenador atacado. 1.5.3. TCP/SYN Flooding Como ya hemos visto anteriormente, algunos de los ataques y t´ cnicas de exploraci´ n que e o se utilizan en la actualidad se basan en no complementar intencionadamente el protocolo de intercambio del TCP. Esta debilidad del protocolo TCP proviene de las primeras implementaciones de las pilas TCP. Cada vez que se procesa una conexi´ n, deben crearse datagramas IP para almacenar la o informaci´ n necesaria para el funcionamiento del protocolo. Esto puede llegar a ocupar o mucha memoria. Como la memoria del equipo es finita, es necesario imponer restricciones sobre el n´ mero de conexiones que un equipo podr´ aceptar antes de quedarse sin recursos. u a
  46. 46. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 38 Ataques contra redes TCP/IP . El ataque de TCP/SYN Flooding se aprovecha del n´ mero de conexiones que est´ n u a esperando para establecer un servicio en particular para conseguir la denegaci´ n del o servicio. Cuando un atacante configura una inundaci´ n de paquetes SYN de TCP, no tiene ninguna o intenci´ n de complementar el protocolo de intercambio, ni de establecer la conexi´ n. Su o o objetivo es exceder los l´mites establecidos para el n´ mero de conexiones que est´ n a la ı u a espera de establecerse para un servicio dado. Esto puede hacer que el sistema que es v´ctima del ataque sea incapaz de establecer cualı quier conexi´ n adicional para este servicio hasta que las conexiones que est´ n a la espera o e bajen el umbral. Hasta que se llegue a este l´mite, cada paquete SYN genera un SYN/ACK que permanecer´ ı a en la cola a la espera de establecerse. Es decir, cada conexi´ n tiene un temporizador (un o l´mite para el tiempo que el sistema espera, el establecimiento de la conexi´ n) que tiende ı o a configurarse en un minuto. Cuando se excede el l´mite de tiempo, se libera la memoria que mantiene el estado de ı esta conexi´ n y la cuenta de la cola de servicios disminuye en una unidad. Despu´ s de o e alcanzar el l´mite, puede mantenerse completa la cola de servicios, evitando que el sistema ı establezca nuevas conexiones en este puerto con nuevos paquetes SYN. ´ Dado que el unico prop´ sito de la t´ cnica es inundar la cola, no tiene ning´ n sentido o e u utilizar la direcci´ n IP real del atacante, ni tampoco devolver los SYN/ACK, puesto que o ´ de esta forma facilitar´a que alguien pudiera llegar hasta el siguiendo la conexi´ n. Por lo ı o tanto, normalmente se falsea la direcci´ n de origen del paquete, modificando para ello la o cabecera IP de los paquetes que intervendr´ n en el ataque de una inundaci´ n SYN. a o 1.5.4. Teardrop Como hemos visto en este mismo m´ dulo*, el protocolo IP especifica unos campos en o la cabecera encargados de se˜ alar si el datagrama IP est´ fragmentado (forma parte de un n a paquete mayor) y la posici´ n que ocupa dentro del datagrama original. o En el campo de indicadores de TCP** encontramos el indicador de m´ s fragmentos que a Fragmentaci´ n IP o * Para tratar el siguiente ataque, haremos uso de la ´ teor´a sobre la fragmentacion ı IP que hemos visto en este ´ ´ mismo modulo didactico. indica si el paquete recibido es un fragmento de un datagrama mayor. Por otra parte, el campo de identificaci´ n del datagrama especifica la posici´ n del fragmento en el datagrama o o original. ´ ** En ingles, TCP flags.
  47. 47. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 39 . El ataque Teardrop intentar´ realizar una utilizaci´ n fraudulenta de la fragmentaa o ci´ n IP para poder confundir al sistema operativo en la reconstrucci´ n del datagrao o ma original y colapsar as´ el sistema. ı Supongamos que deseamos enviar un fichero de 1024 bytes a una red con un MTU (Maxim Transfer Unit) de 512 bytes. Ser´ suficiente enviar dos fragmentos de 512 bytes: a Posición Longitud Fragmento 1 0 512 Fragmento 2 512 512 Fragmentación correcta El objetivo de Teardrop ser´ realizar las modificaciones necesarias en los campos de poa sici´ n y longitud para introducir incoherencias cuando se produzca la reconstrucci´ n del o o datagrama original: Posición Longitud Fragmento 1 0 512 Fragmento 2 500 512 ………….. ………….. ………….. Fragmento N 10 100 Fragmentación incorrecta De esta forma, Teardrop y sus variantes directas conseguir´ n que el datagrama se sobresa criba y produzca un error de buffer-overrun al ser reensamblado. Otra posibilidad consiste en enviar centenares de fragmentos modificados malintencionadamente, con el objetivo de saturar la pila de protocolo IP del equipo atacado (a causa de una superposici´ n de distintos datagramas IP). o Error de buffer-overrun Se puede producir a causa de la existencia de desplazamientos negativos.
  48. 48. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 40 1.5.5. Snork . El ataque Snork se basa en una utilizaci´ n malintencionada de dos servicios t´picos o ı en sistemas Unix: el servicio CHARGEN (CHARacter GENerator, generador de caracteres) y el servicio ECHO. El primer servicio se limita a responder con una secuencia aleatoria de caracteres a las peticiones que recibe. El segundo servicio, ECHO, se utiliza como sistema de pruebas para verificar el funcionamiento del protocolo IP. As´, esta denegaci´ n de servicio se basa en el env´o de un datagrama especial al ordenador ı o ı de destino, que una vez reconocido, enviar´ una respuesta al equipo de origen. a Atacante 10.0.0.1 Víctima 10.0.0.3 Echo 10.0.0.3 (IP src= 10.0.0.3) Chargen/Echo (lazo infinito) Chargen/Echo (lazo infinito) Ataque Snork Echo 10.0.0.2 (IP src= 10.0.0.3) Trampolín 10.0.0.2 . El ataque Snork consiste en el cruce de los servicios ECHO y CHARGEN, mediante el env´o de una petici´ n falsa al servicio CHARGEN, habiendo colocado ı o previamente como direcci´ n de origen la direcci´ n IP de la m´ quina que hay que o o a atacar (con el puerto del servicio ECHO como puerto de respuesta). De esta forma, se inicia un juego de ping-pong infinito.
  49. 49. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 41 Este ataque se puede realizar con distintos pares de equipos de la red obteniendo un consumo masivo de ancho de banda hasta degradar el rendimiento de la misma. Tambi´ n se e puede realizar contra una misma m´ quina (ella misma se env´a una petici´ n y su respuesta) a ı o consiguiendo consumir los recursos (especialmente CPU y memoria) de este equipo. 1.5.6. Ping of death El ataque de denegaci´ n de servicio ”ping de la muerte”(ping of death) es uno de los o ataques m´ s conocidos y que m´ s art´culos de prensa ha generado. Al igual que otros a a ı ataques de denegaci´ n existentes, utiliza una definici´ n de longitud m´ xima de datagrama o o a IP fraudulenta. . La longitud m´ xima de un datagrama IP es de 65535 bytes, incluyendo la cabecera a del paquete (20 bytes) y partiendo de la base de que no hay opciones especiales especificadas. Por otra parte, recordemos que el protocolo ICMP tiene una cabecera de 8 bytes. De esta forma, si queremos construir un mensaje ICMP tenemos disponibles 65535 - 20 - 8 = 65507 bytes. Debido a la posibilidad de fragmentaci´ n de IP, si es necesario enviar m´ s de 65535 bytes, o a el datagrama IP se fragmentar´ y se reensamblar´ en el destino con los mecanismos que a a comentados anteriormente. El ataque ping de la muerte se basa en la posibilidad de construir, mediante el comando ping, un datagrama IP superior a los 65535 bytes, fragmentado en N trozos, con el objetivo de provocar incoherencias en el proceso de reensamblado. Si, por ejemplo, construimos un mensaje ICMP de tipo echo-request de 65510 bytes mediante el comando ping -s 65510, los datos ICMP podr´ n ser enviados en un a ´ unico paquete fragmentado en N trozos (seg´ n la MTU de la red), pero pertenecientes al u mismo datagrama IP. Si hacemos la suma de los distintos campos del datagrama, veremos que los 20 bytes de cabecera IP m´ s los 8 bytes de cabecera ICMP, junto con los datos a ICMP (65510 bytes) ocupar´ n 65538 bytes. De esta forma, el ataque consigue provocar a un desbordamiento de 3 bytes. Este hecho provocar´ que al reconstruir el paquete original a en el destino, se producir´ n errores que, si existen deficiencias en la implementaci´ n de la a o pila TCP/IP del sistema, podr´an causar la degradaci´ n total del sistema atacado. ı o Ataques contra redes TCP/IP
  50. 50. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 42 Ataques contra redes TCP/IP 1.5.7. Ataques distribuidos Un ataque de denegaci´ n de servicio distribuido* es aqu´ l en el que una multitud de o e sistemas (que previamente han sido comprometidos) cooperan entre ellos para atacar a un equipo objetivo, caus´ ndole una denegaci´ n de servicio. El flujo de mensajes de entrada a o ´ * En ingles, Distributed Denial of Service (DDoS). que padece el equipo atacado le dejar´ sin recursos y ser´ incapaz de ofrecer sus servicios a a a usuarios leg´timos. ı . As´ pues, podemos definir los ataques de denegaci´ n de servicio distribuidos como ı o un ataque de denegaci´ n de servicio en el que existen m´ ltiples equipos sincronio u zados de forma distribuida que se unen para atacar un mismo objetivo. A continuaci´ n veremos algunos de los ataques de denegaci´ n de servicio distribuidos o o m´ s representativos, prestando especial atenci´ n tanto a su evoluci´ n hist´ rica, como al a o o o modelo distribuido de las fuentes que realizan el ataque, su sincronizaci´ n y la forma en la o que realizan la denegaci´ n de servicio. o TRIN00 TRIN00 es un conjunto de herramientas master-slave utilizadas para sincronizar distintos equipos que cooperar´ n, de forma distribuida, en la realizaci´ n de una denegaci´ n de sera o o ´ vicio. Las primeras implementaciones de TRIN00 fueron implementadas unicamente para sistemas Sun Solaris (en los que se produjeron los primeros ataques conocidos). El primer paso para realizar un ataque con TRIN00 consiste en la instalaci´ n de las o herramientas en los equipos desde los que partir´ el ataque. Para ello, el atacante necesitar´ a a obtener privilegios de administrador en estos equipos (que habr´ conseguido mediante a t´ cnicas de sniffing, explotaci´ n de servicios**, . . . ). Estos sistemas deber´an ser equipos e o ı interconectados en grandes redes corporativas con un gran ancho de banda y en los que el origen del ataque pudiera pasar desapercibido entre cientos o millares de sistemas dentro la misma red. El atacante tratar´ de realizar un ataque de intrusi´ n a un primer equipo a o de estas redes, desde donde continuar´ con la b´ squeda de nuevos equipos vulnerables y a u proceder´ a su infecci´ n de igual manera como se realiz´ con el primer equipo. a o o . Para realizar las intrusiones, el atacante llevar´ a cabo una b´ squeda de vulneraa u bilidades en los equipos existentes en la red, generando una lista de equipos potencialmente d´ biles en los que tratar´ de introducirse y ejecutar las herramientas e a necesarias para provocar la escalada de privilegios. ** Mirad el cap´tulo ı ´ Deficiencias de programacion ´ ´ para mas informacion sobre ´ explotacion de servicios.
  51. 51. FUOC · P03/75070/02121 © FUOC • XP04/90789/00892 Ataques contra redes TCP/IP 43 Desde el primer equipo infectado por TRIN00, el atacante tratar´ de distribuir las herramia entas a cada una de las dem´ s m´ quinas infectadas. Tambi´ n se encargar´ de la ejecuci´ n a a e a o de tareas peri´ dicas para tratar de esconder los rastros de la intrusi´ n que puedan delatar o o la entrada en el sistema y la detecci´ n del origen del ataque. o En la siguiente figura podemos observar el diagrama de tres capas que conforma un ataque ´ ejecutado mediante TRIN00. Vemos c´ mo a partir de un unico ordenador, el atacante o podr´ llegar a obtener toda una red de equipos a su disposici´ n para la realizaci´ n del a o o ataque distribuido: Slave Master Slave Atacante Slave Master Slave Ataque TRIN00 La comunicaci´ n entre las distintas capas se realiza mediante conexiones TCP (fiables) o para la parte atacante-master, y conexiones UDP (no fiables) para la parte master-slave y slave-master, en puertos espec´ficos de cada m´ quina. ı a . La comunicaci´ n siempre se inicia con la transmisi´ n de una contrase˜ a. Esto o o n permite que ni el administrador del equipo ni el de otros atacantes puedan acceder al control de la red de ataques de TRIN00. Los demonios de TRIN00 situados en los equipos master y slave permiten la ejecuci´ n o de comandos para iniciar, controlar y detener ataques de denegaci´ n tradicionales como o ICMP Flooding, SYN Flooding, UDP Flooding, Smurf, etc. Para acceder a estos comandos, el atacante realizar´ una conexi´ n Telnet en el puerto especificado en el siguiente a o esquema:

×