← retour aux outils back to tools

# proxify

Couteau suisse de proxy pour l'interception et la manipulation de trafic réseau. Fait transiter le trafic à travers un proxy SOCKS/HTTP, intercepte et journalise les requêtes de n'importe quel outil. Swiss-army knife proxy for network traffic interception and manipulation. Routes traffic through a SOCKS/HTTP proxy, intercepts and logs requests from any tool.

↗ https://github.com/projectdiscovery/proxify

## Overview

proxify is a network proxy tool from ProjectDiscovery that intercepts HTTP/HTTPS traffic and saves it for analysis. Unlike Burp Suite, it’s designed for CLI-based workflows — piping tool output through proxify to capture and replay requests, or routing tool traffic through it for logging and modification.

## Installation

    go install -v github.com/projectdiscovery/proxify/cmd/proxify@latest

    # Or download from releases
    # https://github.com/projectdiscovery/proxify/releases

## Basic Usage

Start proxy on default port (8888)

    proxify

Start on specific port

    proxify -addr 127.0.0.1:8080

Save all traffic to directory

    proxify -output /tmp/proxify-dump/

Use SOCKS5 upstream proxy (e.g., Tor)

    proxify -socks5-proxy socks5://127.0.0.1:9050

HTTP upstream proxy

    proxify -http-proxy http://burp:8080

## Traffic Interception

    # Point any tool through proxify
    export HTTP_PROXY=http://127.0.0.1:8888
    export HTTPS_PROXY=http://127.0.0.1:8888

    curl https://example.com  # captured

    httpx -l urls.txt         # captured

    nuclei -u https://target.com  # captured

Or per-command proxy flag

    curl --proxy http://127.0.0.1:8888 https://example.com

## Replaying Traffic

Replay captured requests

    replay -addr 127.0.0.1:9999 -output /tmp/proxify-dump/

    # This serves as a replay proxy for captured traffic

## Filtering and Output

    proxify -request-match "Authorization"  # only capture authed requests

    proxify -response-match "password"      # only capture responses with "password"

MITM HTTPS (install CA cert)

    proxify -ca-cert ca.crt -ca-key ca.key

Generate CA certificate

    proxify --gen-ca

→ Import ca.crt into browser/system

## Use Cases

    # Capture all recon tool traffic
    proxify -output /tmp/recon-traffic/ &
    HTTP_PROXY=http://127.0.0.1:8888 \
    HTTPS_PROXY=http://127.0.0.1:8888 \
      nuclei -u https://target.com -t technologies/

    # Log scanner traffic for evidence
    proxify -output /tmp/scan-logs/ &
    export HTTPS_PROXY=http://127.0.0.1:8888
    nikto -h target.com -useproxy http://127.0.0.1:8888

Route through Tor for anonymity

    proxify -socks5-proxy socks5://127.0.0.1:9050 -output /tmp/

## Tips

- proxify is CLI-native — better for scripted workflows than Burp Suite
- The output directory stores requests and responses as separate files for easy analysis
- Use upstream Burp proxy for interactive modification: `-http-proxy http://127.0.0.1:8080`
- Combine with `replay` to re-send captured requests with modifications

Help / Man page

    proxify [options]

    -addr HOST:PORT       Listen address (default: 127.0.0.1:8888)
    -output DIR           Output directory for dumps
    -http-proxy PROXY     Upstream HTTP proxy
    -socks5-proxy PROXY   Upstream SOCKS5 proxy
    -ca-cert FILE         CA certificate for HTTPS MITM
    -ca-key FILE          CA key for HTTPS MITM
    --gen-ca              Generate new CA certificate
    -request-match REGEX  Only capture matching requests
    -response-match REGEX Only capture matching responses
    -dump-req             Dump raw requests
    -dump-resp            Dump raw responses
    -v                    Verbose

## Vue d’ensemble

proxify est un outil de proxy réseau de ProjectDiscovery qui intercepte le trafic HTTP/HTTPS et le sauvegarde pour analyse. Contrairement à Burp Suite, il est conçu pour des workflows en ligne de commande : rediriger la sortie d’un outil à travers proxify pour capturer et rejouer des requêtes, ou faire transiter le trafic d’un outil par lui pour la journalisation et la modification.

## Installation

    go install -v github.com/projectdiscovery/proxify/cmd/proxify@latest

    # Ou télécharger depuis les releases
    # https://github.com/projectdiscovery/proxify/releases

## Utilisation de base

    # Démarrer le proxy sur le port par défaut (8888)
    proxify

    # Démarrer sur un port spécifique
    proxify -addr 127.0.0.1:8080

    # Sauvegarder tout le trafic dans un répertoire
    proxify -output /tmp/proxify-dump/

    # Utiliser un proxy SOCKS5 en amont (par ex. Tor)
    proxify -socks5-proxy socks5://127.0.0.1:9050

    # Proxy HTTP en amont
    proxify -http-proxy http://burp:8080

## Interception de trafic

    # Faire passer n'importe quel outil par proxify
    export HTTP_PROXY=http://127.0.0.1:8888
    export HTTPS_PROXY=http://127.0.0.1:8888

    curl https://example.com  # capturé
    httpx -l urls.txt         # capturé
    nuclei -u https://target.com  # capturé

Ou via un flag proxy par commande

    curl --proxy http://127.0.0.1:8888 https://example.com

## Rejouer le trafic

Rejouer les requêtes capturées

    replay -addr 127.0.0.1:9999 -output /tmp/proxify-dump/

    # Ceci sert de proxy de rejeu pour le trafic capturé

## Filtrage et sortie

    proxify -request-match "Authorization"  # capturer uniquement les requêtes authentifiées
    proxify -response-match "password"      # capturer uniquement les réponses contenant "password"

    # MITM HTTPS (installer le certificat CA)
    proxify -ca-cert ca.crt -ca-key ca.key

    # Générer un certificat CA
    proxify --gen-ca

→ Importer ca.crt dans le navigateur/système

## Cas d’usage

    # Capturer tout le trafic des outils de recon
    proxify -output /tmp/recon-traffic/ &
    HTTP_PROXY=http://127.0.0.1:8888 \
    HTTPS_PROXY=http://127.0.0.1:8888 \
      nuclei -u https://target.com -t technologies/

    # Journaliser le trafic du scanner comme preuve
    proxify -output /tmp/scan-logs/ &
    export HTTPS_PROXY=http://127.0.0.1:8888
    nikto -h target.com -useproxy http://127.0.0.1:8888

Router via Tor pour l’anonymat

    proxify -socks5-proxy socks5://127.0.0.1:9050 -output /tmp/

## Conseils

- proxify est natif en CLI : mieux adapté aux workflows scriptés que Burp Suite
- Le répertoire de sortie stocke les requêtes et réponses dans des fichiers séparés pour faciliter l’analyse
- Utilisez un proxy Burp en amont pour une modification interactive : `-http-proxy http://127.0.0.1:8080`
- Combinez avec `replay` pour renvoyer les requêtes capturées avec des modifications

Aide / Page de manuel

    proxify [options]

    -addr HOST:PORT       Listen address (default: 127.0.0.1:8888)
    -output DIR           Output directory for dumps
    -http-proxy PROXY     Upstream HTTP proxy
    -socks5-proxy PROXY   Upstream SOCKS5 proxy
    -ca-cert FILE         CA certificate for HTTPS MITM
    -ca-key FILE          CA key for HTTPS MITM
    --gen-ca              Generate new CA certificate
    -request-match REGEX  Only capture matching requests
    -response-match REGEX Only capture matching responses
    -dump-req             Dump raw requests
    -dump-resp            Dump raw responses
    -v                    Verbose