3128/tcp - Pentesting Squid

Tip

Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Ucz się i ćwicz Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Wsparcie dla HackTricks

Podstawowe informacje

Z Wikipedia:

Squid to buforujące i pośredniczące proxy HTTP. Ma szerokie zastosowanie, w tym przyspieszanie serwera WWW przez buforowanie powtarzających się żądań, buforowanie wyników zapytań WWW, DNS i innych zapytań sieciowych dla grupy osób współdzielących zasoby sieciowe oraz wspomaganie bezpieczeństwa przez filtrowanie ruchu. Chociaż jest używany głównie dla HTTP i FTP, Squid zawiera ograniczone wsparcie dla kilku innych protokołów, w tym Internet Gopher, SSL, TLS i HTTPS. Squid nie obsługuje protokołu SOCKS, w przeciwieństwie do Privoxy, z którym Squid może być używany, aby zapewnić obsługę SOCKS.

Port domyślny: 3128

PORT     STATE  SERVICE      VERSION
3128/tcp open   http-proxy   Squid http proxy 4.11

Enumeracja

Web Proxy

Możesz spróbować ustawić odkrytą usługę jako proxy w przeglądarce. Jednak jeśli jest skonfigurowana z HTTP authentication, zostaniesz poproszony o podanie nazwy użytkownika i hasła.

# Try to proxify curl
curl --proxy http://10.10.11.131:3128 http://10.10.11.131

Nmap przez proxy

Możesz też spróbować wykorzystać proxy do skanowania portów wewnętrznych, uruchamiając nmap przez proxy.
Skonfiguruj proxychains, aby używał squid jako proxy, dodając następującą linię na końcu pliku proxichains.conf: http 10.10.10.10 3128
Dla proxy wymagających uwierzytelnienia, dodaj poświadczenia do konfiguracji, dopisując nazwę użytkownika i hasło na końcu: http 10.10.10.10 3128 username passw0rd.

Następnie uruchom nmap z proxychains, aby zeskanować hosta z lokalnej maszyny: proxychains nmap -sT -n -p- localhost

SPOSE Scanner

Alternatywnie, można użyć Squid Pivoting Open Port Scanner (spose.py).

python spose.py --proxy http://10.10.11.131:3128 --target 10.10.11.131

Pivot & konfiguracja narzędzi

Użyj Squid jako discovery pivot i jako transparentnego upstream hop dla CLI i browser tools.

  • Skanuj “z” proxy: uruchom SPOSE przez Squid, aby zenumerować porty osiągalne z hosta proxy/loopback. Z uv możesz zainstalować deps i przeskanować wszystkie porty TCP bezpośrednio:
uv add --script spose.py -r requirements.txt
uv run spose.py --proxy http://SQUID_IP:3128 --target localhost --allports
  • Proxychains for HTTP interaction: dodaj wpis HTTP typu strict na końcu /etc/proxychains.conf:
[ProxyList]
http    SQUID_IP   3128

Następnie wchodzić w interakcję z wewnętrznymi listeners (np. web UI nasłuchującym na 127.0.0.1) przezroczysto za pośrednictwem Squid:

proxychains curl http://127.0.0.1:9191 -v
  • Łączenie Burp/Browser → Squid: skonfiguruj Burp Proxy → Settings → Network → Connections → Upstream proxy servers tak, aby wskazywał na http://SQUID_IP:3128. Żądania do hostów wewnętrznych takich jak http://127.0.0.1:9191 będą przechodzić Browser → Burp → Squid → target, umożliwiając pełne przechwycenie usług, które inaczej nie byłyby dostępne z zewnątrz.

Źródła

Tip

Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Ucz się i ćwicz Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Wsparcie dla HackTricks