Pentest SQUID proxies - puerto 3128

services

Squid Proxy es un servidor web de tipo proxy-caché, distribuido bajo licencia GPL, diseñado para actuar como intermediario en la red y también como sistema de almacenamiento temporal de contenidos web. Su función principal es ubicarse entre el usuario y otra red (generalmente Internet), sirviendo tanto como filtro de seguridad al separar ambas redes, como también para mejorar la velocidad de acceso a páginas web mediante la caché de contenidos.

En otras palabras, un servidor proxy se encarga de canalizar todo el tráfico de una red local hacia el exterior, permitiendo que sólo el servidor proxy tenga conexión directa a Internet, mientras que el resto de los dispositivos se conectan a través de él. Esto permite centralizar el control del tráfico, aplicar políticas de acceso y optimizar el rendimiento general de la red.

En ciertas ocasiones, un servidor Squid Proxy puede estar mal configurado, lo que abre la posibilidad de que un atacante obtenga acceso a información de sistemas que normalmente estarían fuera de su alcance.

Este tipo de fallos puede ser aprovechado para redirigir solicitudes hacia direcciones IP internas, utilizando el proxy como puente para realizar escaneos de puertos sobre máquinas ubicadas en una red privada.

Una manera sencilla de comprobar este comportamiento es mediante herramientas como FoxyProxy en el navegador o directamente desde la terminal con el comando curl, por ejemplo:

nginxCopiarEditarcurl --proxy http://10.10.11.131:3128 http://<ip>:<port>

Si el servidor proxy no solicita autenticación, es posible enumerar puertos internos sustituyendo <port> por el número del puerto que se desea analizar, y <ip> por la dirección interna objetivo. En el caso de que el servidor requiera credenciales, estas se pueden incluir con la opción -u.

Este tipo de ataques funcionan porque el proxy intermedia entre la red local y externa, lo cual puede permitir el acceso a servicios internos que normalmente estarían inaccesibles desde el exterior. No obstante, en configuraciones bien aseguradas, estos accesos suelen estar restringidos mediante autenticación, políticas específicas u otros mecanismos de control.

Una herramienta comúnmente utilizada para este tipo de escaneos a través de proxies Squid es spose. Este programa está diseñado específicamente para descubrir puertos abiertos y servicios internos desde fuera de la red protegida, aprovechando proxies Squid vulnerables.

Puedes encontrar más información o descargar la herramienta desde su repositorio oficial:

podemos enumerar e identificar este servicio con un simple escaneo de nmap

  • los squid proxies suelen correr en el puerto 3128

  • podemos explotar este squid proxie para ver mas puertos abiertos

  • pueden requerir de autenticación o no

vamos a foxyproxy para agregar un nuevo proxie

  • nombre de preferencia del proxie : SQUID proxie

  • tipo de proxie : HTTP

  • puerto : 3128

si activamos esto en la web que requiere el squid proxie podremos verla correctamente, si es que no requiere auth.

ejemplo de uso del proxie en una solicitud curl

curl http://example.com --proxy http://example.com:3128

Al comprobar la posibilidad de una conexion, podemos enumerar directorios :

gobuster -dir http://example.com --proxy http://example.com:3128 -w diccionario.txt -t 20

Haz click aquí para ver la guia de gobuster

Last updated