1080 - Pentesting Socks

Tip

Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Impara e pratica il hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporta HackTricks

Informazioni di base

SOCKS è un protocollo utilizzato per trasferire dati tra client e server tramite un proxy. La quinta versione, SOCKS5, aggiunge una funzione di autenticazione opzionale, consentendo l’accesso al server solo agli utenti autorizzati. Gestisce principalmente il proxying delle connessioni TCP e l’inoltro dei pacchetti UDP (via il comando UDP ASSOCIATE), operando allo strato di sessione (Layer 5) del modello OSI. Quando gli strumenti supportano lo schema socks5h, la risoluzione DNS è forzata attraverso il proxy, impedendo leak DNS locali e rendendo più difficile il fingerprinting dell’host di origine.

Porta predefinita: 1080

Enumerazione

Verifica autenticazione

nmap -p 1080 <ip> --script socks-auth-info

Brute Force

Uso di base

nmap --script socks-brute -p 1080 <ip>

Uso avanzato

nmap  --script socks-brute --script-args userdb=users.txt,passdb=rockyou.txt,unpwdb.timelimit=30m -p 1080 <ip>

Non ho ricevuto il contenuto del file. Per favore incolla il testo da tradurre (file src/network-services-pentesting/1080-pentesting-socks.md) e lo tradurrò mantenendo la sintassi Markdown/HTML.

PORT     STATE SERVICE
1080/tcp open  socks
| socks-brute:
|   Accounts
|     patrik:12345 - Valid credentials
|   Statistics
|_    Performed 1921 guesses in 6 seconds, average tps: 320

Modulo Hydra

hydra -L users.txt -P passwords.txt -s 1080 -t 16 -V <ip> socks5

Metodo & open-proxy enumeration

nmap -sV --script socks-methods,socks-open-proxy -p 1080 <ip>

socks-methods costringe il server a elencare i tipi di autenticazione supportati, mentre socks-open-proxy tenta una CONNECT in uscita per confermare se il servizio può essere sfruttato come relay.

Controllo handshake grezzo

printf '\x05\x01\x00' | nc -nv <ip> 1080

Una risposta \x05 01 00 indica che SOCKS5 offre “nessuna autenticazione”. Qualsiasi \x00 seguito da \x02 significa che è richiesto username/password, il che è utile per fingerprinting rapido dei dispositivi esposti negli script.

Validazione rapida dell’egress

curl --socks5-hostname <ip>:1080 https://ifconfig.me
curl --socks5-hostname user:pass@<ip>:1080 http://internal.target

Usa --socks5-hostname (o socks5h:// URLs) così la risoluzione DNS avviene da remoto. Abbinalo a proxychains4 -q nmap -sT -Pn --top-ports 200 <internal-host> per verificare se il proxy fornisce effettivamente accesso interno.

Scoperta a livello Internet / fingerprinting

masscan 0.0.0.0/0 -p1080 --banners --rate 100000 -oX socks.xml

Reindirizza i risultati a NSE, zgrab2 o script python personalizzati per dare priorità agli hosts promettenti (ad es., stringhe di banner come 3proxy, Dante, MikroTik).

Tunneling and Port Forwarding

Per informazioni su tunneling e port forwarding consulta la pagina: Tunneling and Port Forwarding

Riferimenti

Tip

Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Impara e pratica il hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporta HackTricks