Secuencia de datos especialmente diseñada para provocar un fallo controlado en la ejecución de un programa vulnerable. Después de ejecutarse el exploit, el proceso comprometido interpretará por error parte de la secuencia de datos como código ejecutable, desencadenando acciones peligrosas para la seguridad del equipo.

Según la forma en la que el exploit contacta con el software vulnerable se pueden clasificar en:​

  • Exploit remoto: si utiliza una red de comunicaciones para entrar en contacto con el sistema víctima. Por ejemplo puede usar otro equipo dentro de la misma red interna o tener acceso desde Internet.
  • Exploit local: si para ejecutar el exploit se necesita tener antes acceso al sistema vulnerable. Por ejemplo el exploit puede aumentar los privilegios del que lo ejecuta.
  • Exploit en cliente: aprovechan vulnerabilidades de aplicaciones que típicamente están instaladas en gran parte de los equipos de las organizaciones. Ejemplos típicos de este tipo de software son aplicaciones ofimáticas (Microsoft Office, Libre Office), lectores de ficheros PDF (Adobe Acrobat Reader), navegadores de Internet (Internet Explorer, Firefox, Chrome, Safari), etc.. El exploit está dentro de ficheros interpretados por este tipo de aplicaciones y llega a la máquina objetivo por distintos medios (mediante un correo electrónico, en una memoria USB, …). El archivo será usado por el programa y si no es detenido por ningún otro programa (cortafuegos o antivirus) aprovechará la vulnerabilidad de seguridad.