Flu a lo jabalí – ¿Qué es un Payload?

Buenas a todos, la semana en Seguridad a lo Jabalí ha sido muy completa con muchos artículos recomendables pero hay uno que nos ha gustado especialmente ¿Qué es un Payload? y que completa el artículo ¿Qué es un exploit? que publicaron la pasada semana. Una lectura imprescindible si estás comenzando en el mundo del exploiting y quieres entender como funcionan los exploits a bajo nivel de una manera sencilla y amigable. Os dejamos con su genial post:

Flu a lo jabalí presenta… ¿Qué es un Payload?

La semana pasada publicamos un artículo definiendo de forma sencilla ¿Qué es Exploit?, bueno hoy vamos a continuar un poco más allá explicando un término estrechamente relacionado con exploit, el archiconocido Payload.
Hablábamos de que las vulnerabilidades o errores presentes en cualquier software pueden ser aprovechadas para producir efectos inesperados en los equipos, una vez descubierto ese fallo se desarrollaban pequeños programas (exploits) para forzar de forma específica ese error en el sistema, ¿y ahora qué?
Además de conseguir que el software produzca ese error lo ideal sería poder aprovecharlo para que el equipo realice las funciones que yo desee.
Esa parte del software que nos brinda una función ante un error es el Payload, la ventaja de este planteamiento es que el mismo payload puede ser utilizado por distintos exploits y un mismo exploit puede utilizar varios payloads, una programación modular fantástica, je, je.
Un ejemplo…
Se publica una vulnerabilidad conocida en un servidor web muy utilizado, ...“cuando una petición malformada chuchugua, chuchugua llama a la función de php no se qué… que provoca que se pueda X, y permite la ejecución de código en la maquina del server”.
La comunidad (incluidos los malos) se ponen a trabajar y desarrollan el software (exploit) normalmente con lenguajes de programación rápidos ruby, perl o phyton para provocar ese error, además desarrollan o diseñan ese software para que el fallo permita sacar “ventaja”, brindarnos una Shell, screenshot, etc. En muchas ocasiones se utilizan Payloads ya creados para otros exploits, otras veces hay que diseñarlos específicamente para ese exploit. 
Navegando un poco por la red no hay mucha información sobre este tema, una de las definiciones más precisa y además de una forma muy sencilla de comprender es la que encontramos en el blog de Eset:
 
Si queréis profundizar un poco más a nivel técnico sobre este tema hay unos artículos increíbles de la mano de @DarkOperator en Hacknode.