Proxychains
Router n'importe quel trafic TCP à travers des chaînes de proxys SOCKS4/5 ou HTTP. Indispensable pour le pivoting à travers des hôtes compromis. Route any TCP traffic through SOCKS4/5 or HTTP proxy chains. Essential for pivoting through compromised hosts.
↗ https://github.com/haad/proxychainsOverview
Proxychains forces TCP connections of any tool through a proxy chain. It works by intercepting system calls via LD_PRELOAD, making any dynamically-linked tool proxy-aware without modifying it.
Configuration
# Edit config
sudo nano /etc/proxychains4.conf
# or
nano ~/.proxychains/proxychains.conf
# /etc/proxychains4.conf
# Chain type
dynamic_chain # Skip dead proxies (recommended)
# strict_chain # All proxies must be up
# random_chain # Random order
proxy_dns # Resolve DNS through the proxy
[ProxyList]
socks5 127.0.0.1 1080 # Chisel / Ligolo SOCKS
socks4 127.0.0.1 1080
http 127.0.0.1 8080
Usage
# Prefix any command with proxychains
proxychains nmap -sT -Pn 10.10.20.1
proxychains curl http://10.10.20.10
proxychains ssh user@10.10.20.10
proxychains netexec smb 10.10.20.0/24
Quiet mode (suppress connection output)
proxychains -q nmap -sT -Pn 10.10.20.1
Common Proxy Combinations
# Chisel SOCKS5 tunnel
socks5 127.0.0.1 1080
# SSH dynamic port forward
# ssh -D 1080 user@jump-host
socks5 127.0.0.1 1080
# Burp as upstream proxy
http 127.0.0.1 8080
Help / Man page
proxychains4 [options] <program> [args]
OPTIONS:
-q Quiet mode (suppress output)
-f FILE Use specific config file
CONFIG OPTIONS (/etc/proxychains4.conf):
CHAIN TYPES:
strict_chain All proxies used in order
dynamic_chain Skip unavailable proxies
round_robin_chain Rotate proxies
random_chain Random order
PROXY_DNS:
proxy_dns Resolve DNS through proxy (prevent leaks)
TIMEOUT:
tcp_read_time_out 15000 Read timeout (ms)
tcp_connect_time_out 8000 Connect timeout (ms)
[ProxyList] FORMAT:
type host port [user password]
socks4 host port
socks5 host port [user pass]
http host port [user pass]
NOTE: Only TCP is proxied. UDP and ICMP bypass proxychains.
Use -sT with nmap (TCP Connect scan) instead of -sS (SYN).
Vue d’ensemble
Proxychains force les connexions TCP de n’importe quel outil à travers une chaîne de proxys. Il fonctionne en interceptant les appels système via LD_PRELOAD, rendant n’importe quel outil lié dynamiquement compatible avec les proxys sans le modifier.
Configuration
# Modifier la configuration
sudo nano /etc/proxychains4.conf
# ou
nano ~/.proxychains/proxychains.conf
# /etc/proxychains4.conf
# Type de chaîne
dynamic_chain # Ignorer les proxys inactifs (recommandé)
# strict_chain # Tous les proxys doivent être actifs
# random_chain # Ordre aléatoire
proxy_dns # Résoudre le DNS à travers le proxy
[ProxyList]
socks5 127.0.0.1 1080 # Chisel / Ligolo SOCKS
socks4 127.0.0.1 1080
http 127.0.0.1 8080
Utilisation
# Préfixer n'importe quelle commande avec proxychains
proxychains nmap -sT -Pn 10.10.20.1
proxychains curl http://10.10.20.10
proxychains ssh user@10.10.20.10
proxychains netexec smb 10.10.20.0/24
# Mode silencieux (supprimer la sortie de connexion)
proxychains -q nmap -sT -Pn 10.10.20.1
Combinaisons de proxys courantes
# Tunnel SOCKS5 Chisel
socks5 127.0.0.1 1080
# Redirection de port dynamique SSH
# ssh -D 1080 user@jump-host
socks5 127.0.0.1 1080
# Burp comme proxy en amont
http 127.0.0.1 8080
Aide / Page de manuel
proxychains4 [options] <program> [args]
OPTIONS:
-q Quiet mode (suppress output)
-f FILE Use specific config file
CONFIG OPTIONS (/etc/proxychains4.conf):
CHAIN TYPES:
strict_chain All proxies used in order
dynamic_chain Skip unavailable proxies
round_robin_chain Rotate proxies
random_chain Random order
PROXY_DNS:
proxy_dns Resolve DNS through proxy (prevent leaks)
TIMEOUT:
tcp_read_time_out 15000 Read timeout (ms)
tcp_connect_time_out 8000 Connect timeout (ms)
[ProxyList] FORMAT:
type host port [user password]
socks4 host port
socks5 host port [user pass]
http host port [user pass]
NOTE: Only TCP is proxied. UDP and ICMP bypass proxychains.
Use -sT with nmap (TCP Connect scan) instead of -sS (SYN).