Über Generación automática de control
Este libro aborda el problema de la generación automática de exploits para vulnerabilidades de software. En el capítulo 2 se ofrecerá una definición formal del término "exploit" pero, de manera informal, se describe un exploit como una entrada de programa que da lugar a la ejecución de código malicioso1. Definimos código malicioso como una secuencia de bytes inyectada por un atacante en el programa que subvierte la seguridad del sistema objetivo. Normalmente se denomina shellcode. Los exploits de este tipo suelen aprovecharse de errores de programación relacionados con la gestión de memoria o la tipificación de variables en aplicaciones desarrolladas en C y C++. Estos errores pueden provocar desbordamientos de búfer en los que se escriben demasiados datos en un búfer de memoria, lo que da lugar a la corrupción de ubicaciones de memoria no deseadas. Un exploit aprovechará esta corrupción para manipular posiciones de memoria sensibles con el objetivo de secuestrar el flujo de control de la aplicación.
Mehr anzeigen