Exploit

Un exploit es un software diseñado para aprovechar un fallo en un sistema informático, normalmente con fines maliciosos, como la instalación de malware.

¿Qué es un Exploit?

Un exploit es un programa informático, una parte de un software o una secuencia de comandos que se aprovecha de un error o vulnerabilidad para provocar un comportamiento no intencionado o imprevisto en un software, hardware o en cualquier dispositivo electrónico.

Estos comportamientos incluyen, por lo general, la toma del control de un sistema, la concesión privilegios de administrador al intruso o el lanzamiento de un ataque de denegación de servicio (DoS o DDoS).

 

Tipos de exploit

Una vulnerabilidad remota se extiende a través de una red y explota las brechas de seguridad sin necesidad de ningún acceso previo al sistema que ataca.

Por el contrario, una vulnerabilidad local sí requiere que se haya accedido antes al sistema vulnerable, normalmente con la intención de aumentar los privilegios para la persona que, posteriormente, va a ejecutar el exploit.

También existen exploits específicos contra aplicaciones de cliente (aquellas que requieren contacto con un servidor) que normalmente se originan en la modificación de los servidores para que estos envíen entonces el exploit al equipo. Las vulnerabilidades contra las aplicaciones cliente también puede requerir cierta interacción con el usuario, por lo que en ocasiones se utilizan en combinación con métodos de ingeniería social para manipular a las víctimas.

 

Zero day exploits

Las vulnerabilidades de Día Cero (también conocidas como 0-day exploits) son las brechas de seguridad en el software desconocidas hasta el momento del ataque. Desde ese punto hasta que la vulnerabilidad es suprimida se entra en el momento en el que los hackers pueden explotarla para lograr el máximo impacto en programas, datos, ordenadores adicionales o en toda una red.

Así, los exploits dirigidos contra ese tipo de vulnerabilidades se denominan zero-day exploits, o ataques zero-day. Cuanto más masivo sea el ataque y menos días hayan transcurrido desde ese Día Cero, mayor será la probabilidad de que no se haya desarrollado ninguna solución o mitigación y los daños pueden ser más extensos.

E incluso después de haber desarrollado la corrección, esos primeros días no todos los usuarios de software habrán podido aplicarla. El caso de WannaCry fue paradigmático en este sentido: el malware se aprovechaba de un exploit de Windows desarrollado por la Agencia de Seguridad de Estados Unidos y revelado en las semanas previas por Wikileaks.

En los primeros días el problema fue corregido por Microsoft mediante una actualización, pero todos los equipos que no hubieran realizado la puesta al día los días posteriores seguían siendo vulnerables. La activación el lunes de estos equipos que no habían sido utilizados durante el fin de semana inició una segunda oleada de propagación.


Amenaza oculta

Cuando se hace público un exploit los autores del software afectado toman medidas: la vulnerabilidad se arregla -a menudo a través de un parche- y el exploit se vuelve inutilizable. Por esa razón algunos black hat hackers, así como los hackers de agencias militares o servicios de inteligencia, no publican esas incursiones sino que las mantienen en privado para continuar explotándolas.

Muchos exploits están diseñados para proporcionar acceso a como administrador o superusuario de un sistema. Sin embargo, también es posible que los hackers utilicen varios exploits diferentes para este mismo fin: primero para obtener acceso de bajo nivel, luego para escalar privilegios repetidamente hasta llegar al nivel administrativo más alto (también menudo llamado root).