Diese Übung reproduziert die Cache-Schwachstelle (CVE-2017-7529), die bei der Verarbeitung von Range-Anfragen im Nginx-Server auftritt, und das tatsächliche Verhalten der Schwachstelle
Schwachstelle: Durch einen Fehler bei der Verarbeitung des Nginx-Range-Headers können gecachte Daten offengelegt werden
Auswirkung: Offenlegung sensibler Daten aus den Cache-Dateien des Servers
Umgebungskonfiguration und Ausführung
OS : Windows 10
Docker, Python
Erstellen Sie einen Ordner in einem bestimmten Verzeichnis
Erstellen Sie die Dateien Dockerfile, poc.py und docker-compose.yml
Installieren Sie die benötigte Bibliothek mit 'pip install requests'
Führen Sie 'python poc.py http://127.0.0.1:8080' aus und überprüfen Sie das Ergebnis.
Ergebnis
Fazit
CVE-2017-7529 ist eine schwerwiegende Cache-Offenlegungsschwachstelle, die dadurch entsteht, dass der Nginx-Server Range-Anfragen falsch verarbeitet.
Ein Angreifer kann mithilfe eines bestimmten Offsets sensible Daten exfiltrieren.
Für einen sicheren Betrieb ist es wichtig, die Nginx-Version zu aktualisieren, die Cache-bezogenen Einstellungen zu verstärken und eine Filterung für Range-Anfragen anzuwenden.[