Skip to content

Installation

One-Line Install

bash
curl -fsSL https://raw.githubusercontent.com/pingless/pentest-v3/main/install.sh | bash

The installer downloads the latest release (or builds from source if no release matches your platform) and optionally copies the binary to /usr/local/bin/.

Manual Install

bash
git clone https://github.com/AnAverageBeing/Penetration-v3.git
cd Penetration-v3
chmod +x install.sh
./install.sh

Build from Source

Requirements: Go 1.21+

bash
git clone https://github.com/AnAverageBeing/Penetration-v3.git
cd Penetration-v3
go mod download
go build -o pentest-v3 .
sudo cp pentest-v3 /usr/local/bin/

Authentication Setup

Penetration-v3 fails closed if PENTEST_AUTH_HASH is not set. Generate a bcrypt hash of your password:

bash
python3 -c "import bcrypt; print(bcrypt.hashpw(b'mysecret', bcrypt.gensalt()).decode())"
export PENTEST_AUTH_HASH='<paste-hash-here>'

Add the export to your shell profile to persist it.

Post-Install Verification

bash
# Should print help without requiring auth
pentest-v3 --help

# Should prompt for password and run
pentest-v3 protocol:udp ip:127.0.0.1 port:9 pps:1 duration:1

Supported Platforms

OSArchStatus
Linuxamd64, arm64✅ Full support
macOSamd64, arm64✅ Full support
FreeBSDamd64✅ Supported
OpenBSDamd64⚠️ Limited
Windowsamd64❌ Not supported (use WSL)

GitHub Codespaces

  1. Open the repo on GitHub: https://github.com/AnAverageBeing/Penetration-v3
  2. Click <> CodeCodespacesCreate codespace on master
  3. Build and run:
bash
go build -o pentest-v3 .
export PENTEST_AUTH_HASH='$(python3 -c "import bcrypt; print(bcrypt.hashpw(b\"mysecret\", bcrypt.gensalt()).decode())")'
./pentest-v3 protocol:udp ip:127.0.0.1 port:8080 pps:1000

Codespaces Note

Codespaces runs as a non-root container, so raw-socket methods fall back to non-root alternatives. Application-layer methods work fully.

Troubleshooting

ProblemCauseFix
PENTEST_AUTH_HASH is not setMissing env varGenerate and export a bcrypt hash
Access deniedWrong password or wrong hashVerify the password matches the hash
RAW needs rootRaw socket methods need privilegesRun with sudo or grant CAP_NET_RAW
bind: permission deniedLow ports (<1024) need rootUse high ports or run with sudo
Build failsGo version too oldInstall Go 1.21+

Uninstall

bash
sudo rm -f /usr/local/bin/pentest-v3
rm -rf /path/to/Penetration-v3