PDF de programación - Ataques externos

Imágen de pdf Ataques externos

Ataques externosgráfica de visualizaciones

Actualizado el 23 de Julio del 2017 (Publicado el 17 de Julio del 2017)
771 visualizaciones desde el 17 de Julio del 2017
561,0 KB
15 paginas
Creado hace 19a (10/01/2005)
LinuxFocus article number 282
http://linuxfocus.org

Ataques externos

by Eric Detoisien
<valgasu(at)club−internet.fr>

About the author:

Eric Detoisien es un experto
en seguridad informática.
Muy ducho en todo lo
relativo a la seguridad, es uno
de los expertos del grupo
rstack − www.rstack.org −

Abstract:

Este artículo fue publicado en una revista de Linux en Francia en una entrega
especial sobre seguridad. El editor y los autores permitieron a LinuxFocus
publicar todos los artículos de esta entrega especial. Consecuentemente,
LinuxFocus los irá publicando tan pronto como sean traducidos al inglés.
Gracias a toda la gente envuelta en esta labor. Este fragmento será
reproducido en cada artículo que tenga el mismo origen.

Translated to English by:
Georges Tarbouriech
<gt(at)linuxfocus.org>

Este artículo presenta los diferentes tipos de ataques externos que un cracker
puede usar contra las máquinas en una red. Tomaremos el principal ataque
de red, algunos ataques a través de aplicaciones y ataques de Denegación de
Servicio (DoS).

_________________ _________________ _________________

Ataques de red

Los ataques de red recaen sobre vulnerabilidades directamente relacionadas con los protocolos y sus
implementaciones. Hay muchos. Sin embargo, la mayor parte de ellos son variantes de cinco ataques de red
bien conocidos.

Ataques de fragmentos

Este ataque recae sobre los mecanismos de protección de filtrado IP. Para implementarlo, los crackers usan
dos métodos diferentes: Pequeños fragmentos y Superposición de fragmentos. Estos ataques son algo
antiguos, en consecuencia, los firewalls (cortafuegos) actuales hace bastante tiempo que los resuelven.

1/15

Pequeños fragmentos

De acuerdo con el RFC (Request For Comment) 791 (IP), todos los nodos de Internet (routers) deben estar
capacitados para transferir paquetes de 68 bytes sin fragmentarlos. El tamaño mínimo de la cabecera de un
paquete IP es de 20 bytes sin opciones. Cuando las opciones están presentes, el tamaño máximo de la cabecera
es de 60 bytes. El campo IHL(Internet Header Length) lleva la longitud de cabecera de palabras de 32 bits.
Este campo usa 4 bits, así que el número de posibles valores es de 2^4 − 1 = 15 (no puede tomar el valor
0000). Así, el tamaño máximo de cabecera es realmente 15*4 = 60 bytes. Finalmente, el campo Fragment
Offset indicando el offset del primer byte del fragmento relativo al datagrama completo está escrito en
bloques de 8 bytes. Así que un fragmento de datos lleva al menos 8 bytes. Esto produce realmente 68 bytes.

El ataque consiste en pedir una conexión TCP fragmentada en dos paquetes IP. El primer paquete IP de 68
bytes sólo lleva los 8 primeros bytes de la cabecera TCP (puertos de origen y destino, y número de secuencia).
Los datos del segundo paquete IP llevan la petición TCP (flag SYN a 1 y flag ACK a 0).

Sin embargo, los filtros IP aplican la misma regla a todos los fragmentos en un paquete. El filtro de un
fragmento (Offset del fragmento = 0) define la regla, en consecuencia se aplica a los otros fragmentos (offset
del fragmento = 1) sin ningún otro tipo de control. Así, cuando se defragmenta a nivel IP en la máquina
objetivo, el paquete de petición de conexión es reconstruido y pasado a la capa TCP. La conexión se estabiliza
a pesar del filtro IP activo que debería haberlo previsto.

Figuras 1 y 2 muestran ambos fragmentos y la figura 3 muestra el paquete defragmentado en la máquina
objetivo:

Fig.1: Fragmento 1

Fig.2: Fragmento 2

Fig.3: paquete defrafmentado

2/15

Superposición de fragmentos

De acuerdo al RFC 791 (IP), si dos fragmentos IP se superponen, el segundo sobreescribe al primero. El
ataque consiste en dividir al paquete IP en dos fragmentos. El filtro IP aceptará el primero, que lleva 68 bytes
(ver Pequeños fragmentos) el cual no pide una conexión TCP (flag SYN = 0 y flag ACK = 0). De nuevo esta
regla se aplica a los otros fragmentos del paquete. El segundo (con el offset de fragmento = 1) contiene los
datos de la conexión real, es entonces aceptado por el filtro IP porque no ve que la conexión se abre aquí, así
cuando defragmentamos, los datos del segundo fragmento sobreescriben a los datos del primero, empezando
desde el octavo byte (desde el offset del fragmento = 1). El paquete reensamblado es entonces una conexión
válida para la máquina destino. La conexión se estabiliza a pesar del filtro IP.

Las figuras 1 y 2 muestran ambos fragmentos y la figura 3 muestra el paquete defragmentado en la máquina
objetivo:

Fig.4: Fragmento 1

Fig.5: Fragmento 2

3/15

Fig.6: Paquete defragmentado

IP Spoofing

La clave de este ataque es usurpar la dirección IP de una máquina. Esto permite al cracker ocultar el origen de
su ataque (usado en ataques de Denegación de Servicio) o para beneficiarse de una relación de confianza entre
dos máquinas. Aquí explicaremos el segundo uso del IP Spoofing.

El principio básico de este ataque consiste, para el cracker, en crear sus propios paquetes IP (con programas
como hping2 o nemesis) en los cuales cambiaremos, entre otras cosas, la dirección IP de origen. IP
Spoofing es llamado frecuentemente Blind Spoofing. Las respuestas a los falsos paquetes no pueden ir a la
máquina del cracker, ya que el origen ha sido alterado, van hacia la máquina "burlada". Sin embargo hay dos
métodos para hacer que las respuestas regresen:

1.

2.

Source Routing: el protocolo IP tiene una opción llamada Source Routing (ruteo de origen) que
permite definir la ruta que los paquetes IP deben tomar. Esta ruta es una serie de rutas de dirección IP
que los paquetes deben seguir. Suficiente para que el cracker provea una ruta para los paquetes hacia
un router que el controle. Actualmente la mayor parte de las pilas TCP/IP rechazan los paquetes que
usen esta opción.
Re−routing: tablas de enrutado usando el protocolo RIP, pueden ser cambiadas enviándoles paquetes
RIP con nueva información de enrutado. Se hace esto para enrutar los paquetes hacia un router que
controle el cracker.

Estas técnicas son muy usadas: el ataque es llevado a cabo sin saber qué paquetes son los que vienen del
servidor objetivo.

4/15

Blind Spoofing se usa contra servicios como rlogin o rsh. Su mecanismo de autentificación solo recae en la
dirección IP de origen de la máquina cliente. Este relativamente bien conocido ataque (Kevin Mitnick lo usó
contra la máquina de Tsutomu Shimomura's en 1994) requiere varios pasos:









Encontrar la dirección IP que está utilizando la "máquina de confianza", por ejemplo showmount
−e que indica a dónde se exporta el sistema de archivos, o rpcinfo que da más información.
Dejar al host de confianza fuera de servicio usando, por ejemplo, un SYN Flooding (se hablará mas
sobre este ataque más adelante en Denegación de servicios). Esto es primordial para evitar que la
máquina responda a los paquetes enviados por el servidor objetivo/víctima. De otro modo, enviaría
paquetes TCP RST que pararían/cortarían la conexión.
Predicción de los números de secuencia TCP: todo paquete TCP está asociado a un número de
secuencia inicial. La pila TCP/IP del Sistema Operativo lo genera de forma lineal, dependiendo del
tiempo, aleatorio o seudo−aleatorio, según el sistema. El cracker sólo puede atacar a sistemas
generando números de secuencia predecibles (generados linealmente o dependientes del tiempo).
El ataque consiste en abrir una conexión TCP en el puerto deseado (rsh, por ejemplo). Para un mejor
entendimiento vamos a recordar como trabaja el mecanismo de apertura de conexion TCP. Se hace en
tres pasos (TCP Three Way Handshake ):

1.

2.

3.

El emisor manda un paquete que lleva el flag TCP SYN y un número de secuencia X a la máquina
víctima.
La víctima responde con un paquete que lleva los flags TCP SYN y ACK (con un número de
reconocimiento X+1) activos, su número de secuencia es Y.
El emisor envía un paquete que contiene el flag TCP ACK (con un número de reconocimiento Y+1)
hacia la víctima.

Durante el ataque, el cracker no recibe el SYN−ACK enviado por la víctima. Para establecer la conexión,
predecirá el número de secuencia y para poder enviar un paquete con el número ACK correcto (Y+1). La
conexión es entonces estabilizada a través de la autentificación por dirección IP. El cracker puede ahora
enviar un comando al servicio rsh, como un echo ++ >> /.rhosts para mayores permisos de acceso.
Para hacer esto ha de crear un paquete con el flag TCP PSH (Push): los datos recibidos son inmediatamente
enviados a la capa superior (aquí el servicio rsh). Puede conectar a la máquina a través de un servicio como
rlogin o rsh sin IP Spoofing.

La figura 7 muestra los diferentes pasos de IP Spoofing:

Fig.7: IP Spoofing aplicado al servicio rsh

El cracker usa la máquina A, mientras que C representa la máquina de confianza. A(C) significa que el
paquete se envia desde A con la dirección IP de C burlada. Nota: existe un programa llamado mendax que
implementa estos mecanismos de IP Spoofing.

rpcinfo

5/15

Secuestro de sesiones TCP

El secuestro de sesiones TCP permite al cracker redirigir un flujo TCP. Entonces, un cracker puede sobrepasar
la protección por contraseña (como en telnet o ftp). La necesidad de escuchar (sniffing) restringe este ataque
a la red física del atacado. Antes de detallar este ataque, vamos a explicar algunos principios básicos del
protocolo TCP.

No vamos a revelar el misterio del protocolo TCP, pero sí concretaremos los principales puntos requeridos
para entender el ataque. La cabecera TCP contiene varios campos:






El puerto origen y el puerto destino, identificando la conexión entre dos máquinas;
El número de secuencia que identifica cada byte enviado;
El número de reconocimiento que corresponde al último byte recibido;
Los flags interesantes son:

¤
¤
¤

SYN que sincroniza los números de secuencia cuando una conexión esta establecida;
ACK, el flag de reconocimiento de un segmento TCP;
PSH que dice al receptor que envÃ-e los datos a la aplic
  • Links de descarga
http://lwp-l.com/pdf5488

Comentarios de: Ataques externos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad