Summary: Route tool commands through a proxy using either a wrapper command or tool-specific placeholders.
Proxy Integration
pwnity can route tool commands through a proxy. There are two main methods to achieve this. Proxy settings are session-specific, meaning you can have different proxy configurations for different projects.
Method 1: Wrapper Command (e.g., proxychains-ng)
This method forces all network traffic from a tool through the proxy. When the proxy is enabled, pwnity prepends a "wrapper command" (defined in etc/config.json) to your tool command. The default is proxychains-ng.
Method 2: Placeholders for Tool-Specific Flags
Many tools (like curl, sqlmap, ffuf) have their own flags to specify a proxy (e.g., --proxy). This is the most flexible method. You can use $proxy placeholders in your tool definition.
Example: Configuring ffuf to use the proxy
tool update ffuf fuzz param "--proxy $proxy.type://$proxy.username:$proxy.password@$proxy.host:$proxy.port"
When you run ffuf, pwnity will substitute the placeholders with the currently active proxy settings.
username or password are not set, they will be replaced with an empty string. Most tools handle URLs like http://:@host:port correctly, but some may not.Enabling and Disabling the Proxy
proxy on: Enables the proxy for the current session.proxy off: Disables the proxy for the current session.
When the proxy is on, the ㉿ symbol in your prompt will turn green.
Configuration
You can set global defaults in etc/config.json. To override these for the current session, use the proxy set command.
Example: Setting up a Burp Suite proxy
proxy set host 127.0.0.1
proxy set port 8080
proxy on
After this, you can use Method 1 (if proxychains-ng is configured for Burp) or Method 2 with placeholders like $proxy.host.
Resetting Configuration
To revert a session-specific setting back to the global default, use proxy reset.
proxy reset host
proxy reset all
Sudo and Proxy Wrappers
If your wrapper command (Method 1) needs root privileges, set wrapper_needs_sudo to true. pwnity will handle the sudo prompt automatically.
proxy set wrapper_needs_sudo true