3128/tcp - Pentesting Squid

Tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE) Azure 해킹 배우기 및 연습하기: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks 지원하기

기본 정보

출처 Wikipedia:

Squid는 캐싱 및 전달용 HTTP 웹 프록시입니다. 반복 요청을 캐싱하여 웹 서버 속도를 높이거나, 네트워크 자원을 공유하는 그룹을 위해 웹, DNS 및 기타 컴퓨터 네트워크 조회를 캐싱하거나, 트래픽 필터링을 통해 보안을 지원하는 등 다양한 용도로 사용됩니다. 주로 HTTP 및 FTP에 사용되지만, Squid는 Internet Gopher, SSL, TLS 및 HTTPS를 포함한 여러 다른 프로토콜에 대해 제한적인 지원을 제공합니다. Squid는 Privoxy와 달리 SOCKS 프로토콜을 지원하지 않으며, SOCKS 지원을 제공하기 위해 Squid와 Privoxy를 함께 사용할 수 있습니다.

기본 포트: 3128

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

열거

웹 프록시

발견된 서비스를 브라우저의 프록시로 설정해 볼 수 있습니다. 하지만 HTTP authentication으로 구성되어 있다면 usernames 및 password를 입력하라는 프롬프트가 표시됩니다.

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

Nmap 프록시 사용

프록시를 악용해 nmap을 프록시로 경유시켜 내부 포트를 스캔할 수도 있다.
proxychains를 구성하여 squid 프록시를 사용하도록 설정하려면 proxichains.conf 파일 끝에 다음 줄을 추가한다: http 10.10.10.10 3128
인증이 필요한 프록시의 경우 설정 끝에 사용자명과 비밀번호를 포함해 자격증명을 추가한다: http 10.10.10.10 3128 username passw0rd.

그런 다음 proxychains로 nmap을 실행해 로컬에서 호스트를 스캔한다: proxychains nmap -sT -n -p- localhost

SPOSE Scanner

또는 Squid Pivoting Open Port Scanner (spose.py)를 사용할 수 있다.

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

Pivot & tooling configuration

Squid를 discovery pivot 및 CLI와 브라우저 도구용 투명한 업스트림 홉으로 사용하세요.

  • 프록시에서 스캔: SPOSE를 Squid를 통해 실행하여 proxy 호스트/루프백에서 접근 가능한 포트를 열거하세요. With uv you can install deps and scan all TCP ports directly:
uv add --script spose.py -r requirements.txt
uv run spose.py --proxy http://SQUID_IP:3128 --target localhost --allports
  • Proxychains HTTP 상호작용용: /etc/proxychains.conf 파일 맨 아래에 엄격한 HTTP 항목을 추가하세요:
[ProxyList]
http    SQUID_IP   3128

그런 다음 Squid를 통해 내부 리스너(예: 127.0.0.1에 바인딩된 web UI)와 투명하게 상호작용합니다:

proxychains curl http://127.0.0.1:9191 -v
  • Chaining Burp/Browser → Squid: Burp Proxy → Settings → Network → Connections → Upstream proxy servershttp://SQUID_IP:3128로 가리키도록 구성하세요. http://127.0.0.1:9191 같은 내부 호스트로의 요청은 Browser → Burp → Squid → target을 경유하여 외부에서 접근할 수 없는 서비스도 완전히 가로챌 수 있게 됩니다.

참고자료

Tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE) Azure 해킹 배우기 및 연습하기: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks 지원하기