Venom is a multi-hop proxy tool designed for penetration testers to create and manage encrypted multi-layered SOCKS5 proxy chains across diverse platforms.
Venom - A Multi-hop Proxy for Penetration Testers
Penetration testers and red teamers use Venom to route network traffic through multiple internal nodes, enabling stealthy access and lateral movement within complex network environments. It facilitates multi-hop proxying, port forwarding, and encrypted communication, making it ideal for navigating segmented internal networks during security assessments.
Venom is intended solely for security research and educational purposes; users are responsible for legal compliance. On IoT architectures (ARM, MIPS), port reuse and SSH tunneling features are disabled to reduce binary size and resource usage. When using Linux port reuse with iptables, root privileges are required and manual cleanup may be necessary if the agent is killed with SIGKILL. Use strong passwords for node communication encryption to ensure secure proxy chains.
Download precompiled executables from the GitHub releases page
Ensure Go version 1.11 or higher is installed for source compilation
Run `go get -u github.com/Dliv3/Venom/...` to fetch the source code
Navigate to the source directory: `$GOPATH/src/github.com/Dliv3/Venom`
Execute `./build.sh` to compile the binaries, which will be placed in the release folder
./admin_macos_x64 -lport 9999
Start admin node listening on port 9999
./agent_linux_x64 -rhost 192.168.0.103 -rport 9999
Start agent node connecting to admin node at 192.168.0.103:9999
./agent_linux_x64 -lport 8888
Start agent node listening on port 8888
./admin_macos_x64 -rhost 192.168.204.139 -rport 8888
Start admin node connecting to agent node at 192.168.204.139:8888
./agent.exe -lhost 192.168.204.139 -reuse-port 80
Reuse port 80 on Windows agent for Apache without interrupting service
sudo ./agent_linux_x64 -lport 8080 -reuse-port 80
Reuse port 80 on Linux agent via iptables port forwarding
python scripts/port_reuse.py --start --rhost 192.168.204.135 --rport 80
Activate iptables rules for port reuse on Linux agent
python scripts/port_reuse.py --stop --rhost 192.168.204.135 --rport 80
Deactivate iptables rules for port reuse on Linux agent
./admin_macos_x64 -lport 8889 -passwd dlive@dubhe
Start admin node with AES encrypted communication using specified password
./agent_macos_x64 -rhost 192.168.0.103 -rport 8889 -passwd dlive@dubhe
Start agent node connecting to admin node with AES encryption
help
Display help information within admin node interactive shell
exit
Exit the admin node interactive shell
show
Display the current network topology of connected nodes
getdes
View description of the selected target node
setdes [info]
Add or update description information for the target node