
Prueba de concepto (POC) de un firewall simple en Python diseñado para mitigar el ataque RCE Spring4Shell (CVE-2022-22965) mediante la inspección y el bloqueo de cuerpos de solicitud maliciosos.
Este proyecto es un firewall simple pero efectivo implementado como una prueba de concepto (POC) en Python. Está diseñado para actuar como un servidor HTTP que inspecciona las solicitudes POST entrantes para detectar y bloquear el patrón de payload específico asociado con la vulnerabilidad de ejecución remota de código (RCE) Spring4Shell (CVE-2022-22965).
El firewall utiliza el módulo http.server integrado de Python. La lógica central reside en el método do_POST de la clase ServerHandler.
POST entrantes.class.module.classLoader. Esta cadena es el componente fundamental del exploit de Spring4Shell y es difícil de ofuscar para un atacante.403 Forbidden.200 OK.Mientras que otras estrategias de mitigación podrían centrarse en cabeceras o rutas URL específicas, este método fue elegido por su robustez:
tomcatwar.jsp) o nombres de cabecera personalizados, que pueden ser fácilmente cambiados por un atacante.Para ejecutar el firewall, use el script principal firewall_server.py:
python firewall_server.py
El servidor se iniciará en localhost:8000.
Luego puede usar el script proporcionado Test_Requester.py para simular solicitudes maliciosas y verificar que están siendo bloqueadas.
Esto es una prueba de concepto y está destinado únicamente a fines educativos y demostrativos. No es una solución de firewall lista para producción.