Nuestros programadores estrellas agotaron sus provisiones de café, buscando a tiempo completo por la respuesta, hasta que Melina encontró el arreglo en Bitbucket por lo tanto en este momento la compartimos contigo.
Solución:
El exploit es lo que entrega la carga útil. Tome un misil como una analogía. Tienes el cohete y el combustible y todo lo demás en el cohete, y luego tienes la ojiva que hace el daño real. Sin la ojiva, el misil no hace mucho cuando golpea. Además, una ojiva no sirve de mucho si explota en tu búnker sin que un cohete la entregue.
El sistema de lanzamiento (misil) es el exploit y la carga útil (ojiva) es el código que realmente hace algo.
Los exploits le brindan la capacidad de ‘abrir un shell/ejecutar su código de carga útil’.
Las cargas útiles de ejemplo son cosas como troyanos/RAT, keyloggers, shells inversos, etc.
Las cargas útiles solo se mencionan cuando la ejecución del código es posible y no cuando se usan cosas como vulnerabilidades de denegación de servicio.
Ya sabes lo que es una vulnerabilidad.
Un exploit es un fragmento de código escrito para aprovechar una vulnerabilidad particular. Un payload es un fragmento de código que se ejecutará a través de dicho exploit.
Echa un vistazo a Metasploit Framework. Es simplemente una colección de exploits y payloads. Cada exploit se puede adjuntar con varias cargas útiles, como shells inversos o de enlace, el shell meterpreter, etc.
La belleza de Metasploit Framework es que es modular. Puede mezclar y combinar diferentes cargas útiles y exploits para lograr los resultados necesarios.
Preparé una versión más fácil de leer del diagrama (creo). Sigue los mismos principios básicos que la excelente respuesta de @ D3C4FF. Tuve la tentación de usar su analogía primero, pero pensé que no sería apropiado debido a los acontecimientos recientes y al clima político mundial actual.
los objetivo (autorretrato de un macaco negro con cresta) es simplemente lindo, y el plátano me pareció una analogía conveniente para la ocasión. Tampoco pretenden ser ofensivos.
Obviamente, un solo exploit puede entregar múltiples cargas útiles a uno o varios objetivos. En el último caso, una caja de bananos con un solo simio, o una caja de bananos en un zoológico para múltiples objetivos podría usarse para describir entidades individuales involucradas en el proceso de explotación (donde la caja sería entonces una explotación y los bananos en carga útil). 😉