Señores, prepárense para el contraataque!

iknmnx

No siempre se pueden evitar los ataques informáticos, pero si podemos hacer algo contra ellos. En esta ocasión hablaremos de algunas de las contramedidas que existen para los ataques informáticos. Pero primeramente, ¿Como es un ataque informático?

Anatomía de un ataque informático

  1. Reconnaissance (Reconocimiento).
    • Esta etapa involucra la obtención de información (Information Gathering) con respecto a una potencial víctima que puede ser una persona u organización. Por lo general, durante esta fase se recurre a diferentes recursos de Internet como Google, entre tantos otros, para recolectar datos del objetivo. Algunas de las técnicas utilizadas en este primer paso son la Ingeniería Social, el Dumpster Diving, el sniffing.
  2. Scanning (Exploración).
    • En esta segunda etapa se utiliza la información obtenida en la fase 1 para sondear el blanco y tratar de obtener información sobre el sistema víctima como direcciones IP, nombres de host, datos de autenticación, entre otros. Entre las herramientas que un atacante puede emplear durante la exploración se encuentra el network mappers, port mappers, network scanners, port scanners, y vulnerability scanners.
  3. Gaining Access (Obtener acceso).
    • En esta instancia comienza a materializarse el ataque a través de la explotación de las vulnerabilidades y defectos del sistema (Flaw exploitation) descubiertos durante las fases de reconocimiento y exploración. Algunas de las técnicas que el atacante puede utilizar son ataques de Buffer Overflow, de Denial of Service (DoS), Distributed Denial of Service (DDos), Password filtering y Session hijacking.
  4. Maintaining Access (Mantener el acceso).
    • Una vez que el atacante ha conseguido acceder al sistema, buscará implantar herramientas que le permitan volver a acceder en el futuro desde cualquier lugar donde tenga acceso a Internet. Para ello, suelen recurrir a utilidades backdoors, rootkits y troyanos.
  5. Covering Tracks (Borrar huellas).
    • Una vez que el atacante logró obtener y mantener el acceso al sistema, intentará borrar todas las huellas que fue dejando durante la intrusión para evitar ser detectado por el profesional de seguridad o los administradores de la red. En consecuencia, buscará eliminar los archivos de registro (log) o alarmas del Sistema de Detección de Intrusos (IDS).

Ahora una cosa muy importante a tomar en cuenta es de donde nos atacan.

Ubicación del atacante

Las posibilidades de ataque están relacionadas de forma directa con la cercanía al equipo atacado, se pueden distinguir de la siguiente manera:

  • Acceso físico al equipo: Un atacante con acceso físico tiene muchas facilidades para acceder de forma no permitida y provocar daños en el equipo y desestabilizarlo.
  • Acceso directo al equipo (sesión): alguien que pueda abrir una sesión puede realizar un gran número de ataques, que tendrá más riesgos entre mas privilegio tenga el usuario con el que se accede.
  • Acceso a la red local del equipo: Se pueden realizar diferentes acciones, que se fundamenta a acceder posteriormente al equipo objetivo.
  • Acceso a través de internet: Esta más limitada que la de acceso a la red, al no tener acceso al nivel de enlace en las comunicaciones con el equipo objetivo.

Pero, ¿No hay nada que podamos hacer al respecto? A continuación mencionare algunos de los principales ataques y sus contramedidas.

Contramedidas

Son los mecanismos utilizados para defenderse de un ataque. Hay contramedidas preventivas para evitar el ataque o reducir sus consecuencias y paliativas para reducir el daño del ataque.


Ataques TCP/IP. MITM

La familia de protocolos TCP/IP se diseñó a principios de los años setenta, orientando el diseño hacia la fiabilidad más que hacia la seguridad, por lo que son muy inseguros.Son especialmente peligrosos los ataques MITM (Man-In-The-Middle, intermediario): en una comunicación entre dos equipos aparece un tercero que consigue que los paquetes intercambiados pasen por él. Desde ese momento puede leer todo el tráfico (ataque de interceptación) o, lo que resulta más peligroso, alterar los datos para su beneficio (ataque de modificación).El atacante puede interponerse en el tráfico entre origen y destino de dos maneras:

  • Por hardware. El atacante tiene acceso directo a un elemento de red que forma parte del camino entre el origen y el destino.
  • Por software (engaño). El atacante consigue que el origen crea que él es el destino, y también consigue que el destino crea que él es el origen. El ataque MITM mediante software es un ataque de tipo fabricación.
    • Es mucho más simple que el anterior porque no hace falta tener acceso físico a los equipos.
    • La segunda ventaja del engaño es que es fácil activar y desactivar el ataque a voluntad, lo que hace más difícil detectarlo.

Ataque por envenenamiento

El ejemplo más típico de ataque MITM por software (engaño) es el envenenamiento ARP (ARP poisoning). El protocolo ARP (Address Resolution Protocol) se utiliza para obtener la dirección MAC asociada a una IP; es decir, cuando una máquina (PC-A) quiere comunicarse con otra máquina (PC-B) de la que sabe su dirección IP (nivel 3 de TCP/IP), obtiene la dirección MAC (nivel 2) mediante ARP. Las llamaremos IP-PCB y MAC-PCB, respectivamente.

Para ello, PC-A introduce en la red un paquete broadcast (que llegará a todos los equipos de la subred) preguntando la MAC que corresponde a la IP-PCB. En condiciones normales, solo PC-B debería contestar con su MAC-PCB.

El ataque consiste en que una máquina PC-X, conectada al mismo tramo de red que PC-A y PC-B, en un momento dado empieza a generar paquetes de respuesta ARP. Sin que nadie le pregunte, envía un paquete a PC-A diciendo que la MAC de IP-PCB es MAC-PCX (la MAC de la máquina PC-X), y envía otro paquete a PC-B diciendo que la MAC de IP-PCA también es MAC-PCX. Es decir, intenta convencer a PC-A de que PC-X es PC-B, e intenta convencer a PC-B de que PC-X es PC-A.

Por desgracia, estas respuestas espontáneas son aceptadas por PC-A y PC-B. No hay ningún tipo de validación ni correlación con una pregunta anterior, etc.

Contramedidas ataques MITM

Los ataques MITM son difíciles de evitar.

  • Utilizar en todas las máquinas tablas ARP estáticas, renunciando al protocolo dinámico, vista su debilidad.
    • Supone mucho trabajo de mantenimiento: cada vez que llega una nueva máquina, o introducimos una nueva tarjeta de red en una máquina ya existente, hay que actualizar una a una todas las máquinas de la empresa (y pueden ser cientos).
  • Controlar el acceso a nuestra red: si el atacante no puede conectar su equipo, no podrá lanzar paquetes maliciosos.
  • Utilizar, siempre que sea posible, protocolos seguros con infraestructura de clave pública (PKI). Cualquier interceptación de mensajes no será provechosa, y el atacante no tiene las claves privadas de los extremos, por lo que no puede suplantarlos.
  • La solución definitiva es introducir un NIPS en la red (Network Intrusion y Network Prevention), que nos alerte de la presencia de respuestas ARP no solicitadas.
    • No necesitamos un NIPS muy potente: el ataque es tan sencillo que un simple sniffer lo detecta durante la captura. Examinando los archivos log del análisis de la red, podemos fijarnos en que aparece un aviso sobre la doble asignación MAC-IP: es normal que una dirección MAC pueda servir a varias direcciones IP, pero no es normal que una IP no aparezca asociada a dos MAC distintas.

Salvo en casos excepcionales en los que se utilizan tarjetas de red de respaldo, la inmensa mayoría de las direcciones IP de los paquetes que circulan por la red de una empresa deben estar asociadas a una única MAC. Encontrar asignaciones duplicadas debe hacernos sospechar.

En general, son susceptibles de ser atacados todos los protocolos donde no hay autenticación de los equipos que participan en la comunicación, poniéndose en evidencia la importancia que tiene el concepto de seguridad de extremo a extremo.


Ataques wifi. Aircrack-ng

Las redes inalámbricas son particularmente interesantes de atacar porque están muy extendidas (tanto en el ámbito personal como en el empresarial) y porque el atacante no necesita entrar en las instalaciones de la víctima: basta con situarse lo suficientemente cerca para entrar en la cobertura del access point.

Por medio de la herramienta aircrak-ng, podemos realizar ataques a las redes inalámbricas que utilizan el protocolo WEP inseguro.

Esta herramienta trabaja con tarjetas en estado monitor (promiscuo), donde captura el tráfico generado entre las máquinas y el AP para posteriormente descodificar las claves.

Contramedidas ataques wifi

La primera solución es evitar utilizar cifrado WEP.

La segunda medida es reducir la potencia del AP. Así evitaremos que cualquiera de la calle pueda intentar atacarnos: simplemente no le llega la señal.

También se puede intentar activar en el AP la lista de MAC permitidas. Aunque es relativamente fácil para un atacante conocer alguna MAC permitida, ya que puede descifrar el tráfico porque tiene la clave WEP. Después, tranquilamente modifica la MAC de su máquina y ya puede conectar.


Ataques web. WebGoat

Las aplicaciones web aplican la arquitectura cliente-servidor; por tanto, adolecen de los mismos problemas que los protocolos de red. En especial, el ataque MITM que vimos al principio de este módulo.

La herramienta WebGoat permite ilustrar estos problemas. Al descargarla tenemos un entorno de aplicaciones web (Tomcat) configurado con unas lecciones para enseñar qué peligros corremos. Entre las posibles acciones a realizar está la de poder capturar las peticiones HTTP de nuestro navegador y de esta manera alterar el valor de los datos que se envían al servidor web.

Contramedidas ataques web

En este punto quienes deben tomar medidas son los programadores de aplicaciones, más que los técnicos de sistemas. Los  responsables del software que corre en el servidor nunca deben de confiar en que los datos de una petición son válidos solo porque han superado los controles que se han puesto en el navegador.

La principal misión de esos controles es ahorrar peticiones fallidas, de manera que los servidores no pierden tiempo y el usuario puede corregir sus erratas inmediatamente.

Es conveniente, además, que el equipo de pruebas de sistemas (responsables de probar una aplicación antes de entregarla al cliente) conozca estas herramientas de interceptación de peticiones, porque pueden ser utilizadas también por cualquier usuario.

Otro tipo de ataque consiste en procesar las peticiones HTTPs de equipos que hayan sufrido un ataque MITM mediante envenenamiento y posteriormente convertirlas en peticiones HTTP para así no utilizar cifrado. El objetivo son los paquetes de autenticación: usuario y contraseña.

El ataque es efectivo porque la mayoría de los servidores admiten tanto HTTP como HTTPS. Aunque la página inicial redirige a la versión HTTPS, las demás no. La solución más simple es utilizar servidores que no admitan HTTP.


Ataques proxy. Ultrasurf

Los usuarios de Windows pueden utilizar la herramienta Ultrasurf que se comporta como un proxy en nuestra propia máquina y modifica la configuración de Windows para que todas las conexiones web pasen por él (esto afecta a Internet Explorer y a Chrome, que utiliza la configuración del sistema).

Este proxy interno recibe las conexiones y las encamina fuera de la máquina conectando con otras máquinas en Internet. Estas máquinas utilizan el puerto 443 (el habitual del tráfico SSL). Como en un proxy normal, obtienen las páginas que el usuario pedía y se las mandan al proxy interno, el cual las entrega al navegador. Por tanto, el tráfico del usuario pasa por dos proxy: uno local y otro en Internet.

Contramedidas ataques proxy

La primera medida es formar a los usuarios para que entiendan que introducir software no controlado es una fuente de problemas:

  • No sabemos si ese software amable y gratuito realmente oculta un troyano que puede tomar el control de nuestra máquina.
  • Todo nuestro tráfico web está pasando por máquinas que no conocemos. Pueden utilizarlo para robarnos contraseñas, documentación personal o profesional, realizar ataques MITM, etc.
  • Se pone un proxy en una empresa para conseguir unos objetivos y, al evitar utilizarlo, estamos obstaculizando su cumplimiento.

Otra medida consistirá en espiar nuestra red. Primero con medidas estadísticas que evalúen el porcentaje de paquetes que pasan por el proxy comparado con aquellos que utilizan el puerto 443. Si tienden a equilibrarse, tenemos que entrar en detalle. Para ello utilizaremos un NIDS que busque máquinas con alto porcentaje de tráfico 443.

Tampoco tiene mucho sentido utilizar el firewall de red para bloquear todos los paquetes que quieran salir a Internet con destino la IP del proxy externo de Ultrasuft. Este tipo de software es muy listo y suele tener disponibles muchos servidores en distintos puntos de Internet.


No olvidemos que lo mejor contra los ataques informáticos es evitar que si quiera lleguen por lo que aquí les dejo un articulo que contiene

10 consejos para prevenir un ataque informático 

 

Agradezco a mi amiga Ari por ayudarme a recopilar la información necesaria para hacer este post. Los invito a visitar su blog :p

Deja un comentario