Exploit (del inglés exploit, “explotar” o ‘aprovechar’) es un fragmento de software, fragmento de datos o secuencia de comandos y/o acciones, utilizada con el fin de aprovechar una vulnerabilidad de seguridad de un sistema de información para conseguir un comportamiento no deseado del mismo. Ejemplos de comportamiento erróneo: Acceso de forma no autorizada, toma de control de un sistema de cómputo, consecución de privilegios no concedidos lícitamente, consecución de ataques de denegación de servicio.
Es un método concreto que utiliza un error de algún programa (bug) para entrar en un sistema informático. Generalmente, un exploit suele ser un programa que se aprovecha de algún error del sistema operativo, por ejemplo, para obtener los privilegios del administrador y así tener un control total sobre el sistema. Aunque un exploit no tiene porque ser un programa, por definición es simplemente una forma de sacar provecho de un error en un programa (explotar un error).
Recuerda que la utilización de un “exploit” sin la supervisión/aprobación del administrador del sistema puede ser considerado (y lo es) un delito y está penado con fuertes multas y/o cárcel.
Los exploits pueden tomar forma en distintos tipos de software, como por ejemplo scripts, virus informáticos o gusanos informáticos.
Se pueden caracterizar según las categorías de vulnerabilidades utilizadas:
- Vulnerabilidades de desbordamiento de buffer.
- Vulnerabilidades de condición de carrera.
- Vulnerabilidades de error de formato de cadena.
- Vulnerabilidades de Cross Site Scripting XSS.
- Vulnerabilidades de Inyección SQL.
- Vulnerabilidades de Inyección de Caracteres CRLF.
- Vulnerabilidades de denegación del servicio.
- Vulnerabilidades Inyección múltiple HTML Multiple HTML Injection.
- Vulnerabilidades de ventanas engañosas o de ventanas Window Spoofing, otros.
Propósito del ataque:
- Curiosidad.
- Fama personal.
- Beneficio personal.
- Espionaje.