jueves, 20 de noviembre de 2008

Ataque de Negación de servicio / Denial of Service (Dos)

Un ataque de negación de servicio es un ataque hacia las computadoras, los servidores o hacia la red, el cual causa que un recurso (o servicio) sea inaccesible para los usuarios legítimos. En este tipo de ataques, la forma mas común y fácil de llevarlo a cabo es la de consumir completamente el ancho de banda de la red en la que se encuentra el sistema o equipo que contiene el recurso (o servicio).

Estos ataques pueden llevarse a cabo por diversos métodos:
  • Forzar al procesador a realizar cálculos intensivos de una manera repetitiva;
  • Forzar a las aplicaciones a utilizar grandes cantidades de memoria;
  • Forzar a las aplicaciones a utilizar un número excesivo de recursos (conexiones a otros servidores o conexiones a bases de datos) y
  • Llenar la red en la que se encuentra la máquina a atacar de información sin importancia.

Los tres primeros puntos se pueden realizar mediante buffer overflow, que es básicamente el asignar a una variable un valor mucho mas grande del que puede manejar; esto ocasiona que este nuevo valor se escriba completo en memoria, pero ahora puede utilizar espacio reservado para las instrucciones del programa, lo que ocasiona un mal funcionamiento en el sistema.

El último punto es el que mas se utiliza y se puede llevar a cabo de distintas formas:

a través de enviar información innecesaria al servidor; para realizar esto, el atacante debe tener un mayor ancho de banda que el sistema atacado, debido a que el atacante consume todo el ancho de banda, el sistema atacado queda imposibilitado para atender a otros clientes.

Otro método que han utilizado los atacantes es el de inundar de peticiones de conexión al servidor atacado pero con información falsificada, el atacante falsifica la dirección de origen y el servidor al intentar realizar la conexión con una dirección inexistente, consume sus recursos esperando una respuesta, esto ocasiones que deje de atender a otros clientes.

Un método ingenioso es muy parecido al anterior, pero el atacante en lugar de falsificar su dirección con una dirección inexistente, pone la misma dirección del servidor, enviando una petición de conexión al servidor con la dirección de origen del servidor, lo que ocasiona que el servidor intente crear una conexión consigo mismo, esto consume mucho mas recursos que el método anterior, por lo que se necesitan mucho menos peticiones.

No hay comentarios:

Publicar un comentario en la entrada