Me interesa estudiar los efectos (bloqueos, señales enviadas, registros, etc.) de diferentes tipos de vulnerabilidades explotadas (DoS, ROP, shells remotos, etc.) en software específico (especialmente servidores web como NGINX, Apache). , etc.). Por ejemplo, estoy interesado en comparar diferentes registros de errores generados por Apache cuando se lanzan los ataques.
La configuración de dicho entorno de prueba es complicada y requiere mucho tiempo. Actualmente, mi mejor opción parece ser utilizar exploit-db para encontrar una variedad de exploits y configurar el software vulnerable apropiado. Sin embargo, las diferentes versiones de un software tienen un comportamiento diferente. Por ejemplo, Apache 1 y Apache 2 tienen funciones de generación de registros ligeramente diferentes, y por lo tanto, comparar los registros entre ellos no es lo ideal. Además, puede darse el caso de que un exploit funcione en una versión y no en otra y así sucesivamente.
Idealmente, me encantaría tener algo como un Apache Vulnerable Vulnerable en el que el comportamiento del software sigue siendo el mismo, pero lo exploto fácilmente de varias formas. ¿Hay tal cosa? ¿Ideas sobre cómo abordar mejor esta necesidad?
Nota (s):
-
He jugado con la idea de obtener la fuente de Apache e insertar errores a propósito para poder aprovecharlos. Sin embargo, esto todavía parece llevar bastante tiempo y no lo he hecho antes.
-
Esta pregunta es independiente de la plataforma. Sin embargo, parece que permanecer en un entorno Linux podría ser lo más conveniente.
-
También es muy importante que el software / SO sea algo actual. Planeo analizar los registros y otra información utilizando la pila de ELK, por lo que la compatibilidad con esas herramientas es importante.