# 1080 - Pentesting Socks ## Basic Information SOCKS is an Internet protocol that exchanges network packets between a client and server through a proxy server. SOCKS5 optionally provides authentication, so only authorized users may access a server. Practically, a SOCKS server proxies TCP connections to an arbitrary IP address, and provides a means for UDP packets to be forwarded. SOCKS performs at Layer 5 of the OSI model **Default Port:** 1080 ## Enumeration ### Authentication Check ```bash nmap -p 1080 --script socks-auth-info ``` ### Brute Force #### Basic usage ```bash nmap --script socks-brute -p 1080 ``` #### Advanced usage ```bash nmap --script socks-brute --script-args userdb=users.txt,passdb=rockyou.txt,unpwdb.timelimit=30m -p 1080 ``` #### Output ```text PORT STATE SERVICE 1080/tcp open socks | socks-brute: | Accounts | patrik:12345 - Valid credentials | Statistics |_ Performed 1921 guesses in 6 seconds, average tps: 320 ``` ## Tunneling and Port Forwarding ### Basic proxychains usage Setup proxy chains to use socks proxy ```text nano /etc/proxychains4.conf ``` Edit the bottom and add your proxy ```text socks5 10.10.10.10 1080 ``` With auth ```text socks5 10.10.10.10 1080 username password ``` #### More info: [Tunneling and Port Forwarding](../tunneling-and-port-forwarding.md)