Ataque informático

Cómo preparar un ataque informático

Antes de realizar un ataque informático es imprescindible disponer, al menos, de una cierta información general sobre el equipo o sistema. En algunos casos, esta información general puede convertirse en todo lo que el pirata necesita para realizar el ataque. Por ejemplo, conocer la versión del sistema operativo que utiliza o los programas informáticos que tiene puede ser suficiente para realizar un ataque al explotar las vulnerabilidades conocidas de los mismos.

Como símil podríamos decir que un ladrón profesional no entra a robar una casa directamente. Primero observa sus alrededores, identifica las posibles medidas de seguridad, las costumbres de sus moradores, sus horarios, etc. De igual forma un pirata realiza un reconocimiento previo de su objetivo.

Herramientas de búsqueda de claves de archivos
Herramientas de búsqueda de claves de archivos

Reconocimiento pasivo antes del ataque informático

El reconocimiento pasivo consiste en recopilar todo tipo de información que pueda ser de interés sin realizar ninguna acción agresiva contra el equipo. Se trata de observar y registrar.

Existen programas que permiten registrar la actividad de un equipo de forma remota. Este método se conoce como sniffing (‘olfateado’). Por ejemplo, se puede registrar todo el tráfico que dicho equipo transmite y recibe.

Un caso particular de sniffing es el conocido como password sniffing (‘olfateado de contraseña’). Consiste en registrar los paquetes de autentificación que se intercambian en la red. Posteriormente, con tranquilidad, se puede pasar un programa decodificador de contraseñas (Password cracker) que obtiene toda la relación de nombres de usuarios y claves correspondientes. Si este registro se realizara en la red de una empresa entre las 7:00 y las 10:00 de la mañana, podemos imaginarnos cuántas contraseñas podrían descubrirse.

Programa analizador de protocolo
Programa analizador de protocolo

El reconocimiento pasivo puede realizarse también, simplemente, observando el equipo de la víctima de forma presencial. Echar un vistazo a la pantalla es suficiente para recabar información interesante.

Si no se puede acceder físicamente al equipo, existe la posibilidad de inspeccionar en la basura. Con este método, conocido en inglés como Information Gathering, se pueden averiguar detalles como el sistema operativo, programa navegador, aplicaciones instaladas, etc. Parece mentira, pero cada programa tiene su propio estilo a la hora de imprimir un documento. Un pirata experimentado puede sacar mucha información de una simple hoja impresa.

Siguiendo con el símil del ladrón de casas, el reconocimiento pasivo consistiría en observar cuántas puertas y ventanas tiene, si las ventanas son accesibles, si tienen rejas, cuál está menos iluminada, etc.

Reconocimiento activo antes del ataque informático

El reconocimiento activo supone realizar una acción directa sobre el objetivo o su entorno. Este reconocimiento implica comunicarse directamente con la víctima o con el equipo de la víctima.

En el símil del ladrón de casas, el reconocimiento activo consistiría en saltarse la valla y mirar por la ventana, acercarse a la puerta para comprobar si está blindada o instalar una cámara con un detector de presencia para registrar las entradas y salidas de las víctimas.

La información que suele buscarse en los reconocimientos activos es la siguiente:

  • Puertos que están abiertos. Los puertos de un equipo son como las puertas y ventanas de una casa. Si un ladrón pretende entrar en una casa, lo primero que mira es si hay alguna puerta o ventana abierta. De igual forma, lo primero que mira un pirata es si hay algún puerto abierto por donde poder comunicarse con el ordenador. Tener un puerto abierto no significa directamente haber dejado el paso libre a los piratas, ya que se necesita también disponer de un servicio que responda en ese puerto, pero, a más puertos abiertos mayor es la vulnerabilidad. Los piratas saben qué aplicación puede haber detrás de cada puerto. Para las aplicaciones más populares se puede consultar la RFC1700 en www.rfc-editor.org, pero, en cualquier caso, en Internet se puede conseguir información sobre los números de puertos utilizados por cualquier aplicación.
  • Servicios que están activos. Los servicios son los programas que se ejecutan en un ordenador servidor para realizar una función específica. Por ejemplo, la compartición de archivos e impresoras es un servicio propio de Windows. También son servicios el software servidor de FTP o Web.    
     
    Los servicios suelen tener los mismos derechos que el usuario que los puso en marcha. Por tanto, si el usuario administrador pone en marcha un servicio y, desde este servicio se ejecuta un comando, para los efectos es como si el comando lo hubiese ejecutado el administrador. Por tanto, si un pirata desea disfrutar de los privilegios de un administrador puede intentar entrar en el sistema como tal, o atacar un servicio que se esté ejecutando como administrador. Al igual que en el caso de los puertos, cuantos más servicios se estén ejecutando en un equipo mayor será su vulnerabilidad.
Ejemplos de herramientas de exploración
Ejemplos de herramientas de exploración
  • Sistema operativo que utiliza el equipo, así como la versión y actualizaciones correspondientes. Los sistemas operativos incluyen dos vulnerabilidades principales: la configuración por defecto y los errores (bugs) de programación.
    Los usuarios suelen dejar el sistema operativo con la configuración por defecto. Esto quiere decir que para el pirata es fácil adivinar de qué servicios o, incluso, de qué claves se dispone. Además, con el paso del tiempo se suelen descubrir los agujeros de seguridad que tiene el sistema. Por tanto, para mantener un sistema operativo seguro es necesario no conformarse con la configuración por defecto y actualizarlo de forma regular.
  • Aplicaciones que se ejecutan habitualmente. Por ejemplo, el procesador de textos, el programa de correo, el navegador, etc. Generalmente, cuando un usuario identifica que le interesa un software, lo compra y lo instala. Nadie se para a comprobar si dicho software contiene una puerta trasera o cualquier otra vulnerabilidad. Simplemente nos fiamos que el software cumple con lo anunciado. Pero lo cierto es que existen aplicaciones (y sistemas operativos) con defectos en la seguridad. El pirata suele investigar las vulnerabilidades de las aplicaciones más populares y aprovecharse de ellas. La única forma de protegerse de estas vulnerabilidades es manteniendo las aplicaciones actualizadas (si es que ofrecen esta opción). Por cierto, a las características ocultas de una aplicación o sistema operativo se las conoce como huevos de pascua (easter eggs). Aunque realmente se les denomina huevos de pascua sólo cuando no tienen ningún efecto nocivo, lo que si nos deja ver es que una aplicación puede ser algo más que lo que aparenta.
  • Equipamiento y servicios de red disponibles (switches, routers, firewalls, etc.). La información sobre el equipamiento disponible puede ser utilizada para vencer posibles barreras intermedias o para utilizar esos recursos como plataformas de ataque. Por ejemplo, desde un switch o hub puede observarse todo el tráfico que pasa por una red local. Otro ejemplo: si el pirata descubre las direcciones IP del firewall, así como la marca y versión del software que utiliza, podrá investigar sus posibles vulnerabilidades conocidas e intentar ejecutar un exploit sobre dicho equipo. Por último, siempre se puede buscar el equipo más vulnerable de la red para, desde ahí, realizar ataques más efectivos al equipo de la víctima.
Ejemplos de herramientas de exploración (Cheops, Nmap y PingSweep)
Ejemplos de herramientas de exploración (Cheops, Nmap y PingSweep)

Ingeniería social del ataque informático

Una técnica particular para realizar un reconocimiento es la que se conoce como ingeniería social. La forma clásica de descubrir la información necesaria para realizar un ataque es utilizando los conocimientos técnicos que le permiten al pirata aprovecharse de un defecto particular de una aplicación o desarrollar un complejo programa que pruebe todas las posibilidades hasta dar con la respuesta correcta. Esto es lo que podríamos llamar ingeniería informática. No obstante, existe otra forma de averiguar la información que se necesita, simplemente preguntándoselo a quien lo sabe.

Claro, si un pirata le pregunta a un usuario que, por favor, le diga su clave para acceder a su sistema y robarle información, lo normal es que no obtenga la respuesta. Por ello, los piratas realizan estas mismas preguntas valiéndose de engaños. Por ejemplo, hay usuarios que sí le dirían su clave a alguien que se identifica como el técnico de sistema de su empresa, el presidente de la compañía o la policía y que le argumenta cualquier excusa. A esta técnica se le ha venido a llamar ingeniería social.

Aunque parezca mentira, con ingeniería social se puede conseguir en minutos lo que llevaría semanas o meses conseguir con cualquier otra técnica. A veces, la información no se consigue en una sola pregunta, sino que el pirata se dedica a conseguir información poco a poco para poderse hacer pasar por la persona adecuada para hacer la pregunta correcta que le dará la respuesta que necesita.

Kevin Mitnick, uno de los piratas informáticos más famosos, define la ingeniería social como el arte de conseguir que otra persona haga lo que normalmente no haría por un extraño. Dicho sea de paso, este arte combina muy bien con los sentimientos humanos de compasión, bondad, inseguridad, comodidad o desconocimiento. Albert Einstein dijo una vez ‘Sólo hay dos cosas infinitas: el universo y la estupidez humana; y no estoy seguro de la primera’.

Bueno, quizás la palabra estupidez es exagerada, pero, lo cierto es que romper la seguridad de los humanos suele ser más fácil, requiere menos inversión y constituye un menor riesgo que romper la seguridad de un equipo informático. Eso sí, requiere algo más de imaginación.

Más información sobre ataque informático

REF: FW-PG94

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *