Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
proxify — Um proxy versátil e portátil para capturar, manipular e reproduzir tráfego HTTP/HTTPS em qualquer lugar. | Kitploit
Ferramentas/GitHubGitHub/projectdiscovery/proxify
Sniffing e Análise de PacotesProxies Web e InterceptaçãoSegurança WebTestes de Penetração
GitHubprojectdiscovery/proxify

proxify

Um proxy versátil e portátil para capturar, manipular e reproduzir tráfego HTTP/HTTPS em qualquer lugar.

Ver Repositório
3.1k268há 11 mesesRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Site

proxify

Funcionalidades • Instalação • Uso • Executando o Proxify • Instalando o Certificado SSL • Aplicações do Proxify • Junte-se ao Discord

Proxy Canivete Suíço para implantações rápidas. Suporta múltiplas operações como dump de requisições/respostas, filtragem e manipulação via linguagem DSL, proxy upstream HTTP/Socks5. Além disso, um utilitário de replay permite importar o tráfego capturado (requisições/respostas com o nome de domínio correto) para o BurpSuite ou qualquer outro proxy simplesmente configurando o proxy upstream para proxify.

Funcionalidades

proxify

  • Interceptar/Manipular tráfego HTTP/HTTPS e NÃO-HTTP
  • Suporte a proxy para tráfego de clientes invisíveis & thick clients
  • Suporte a TLS MITM com certificados de cliente/servidor
  • Suporte a proxy upstream HTTP e SOCKS5
  • Suporte a DSL para Correspondência/Filtro e Substituição de tráfego
  • Dump completo de tráfego para arquivo (requisições/respostas)
  • Servidor DNS nativo embutido
  • Suporte a plugins para decodificar protocolos específicos (ex: XMPP/SMTP/FTP/SSH/)
  • Replay de tráfego do Proxify no Burp

Instalação

Baixe o binário pronto para executar ou instale/compile usando GO

root@kitploit:~
go install -v github.com/projectdiscovery/proxify/cmd/proxify@latest

Uso

root@kitploit:~
proxify -h

Isso exibirá a ajuda da ferramenta. Aqui estão todas as opções que ela suporta.

root@kitploit:~
Swiss Army Knife Proxy for rapid deployments. Supports multiple operations such as request/response dump,filtering and manipulation via DSL language, upstream HTTP/Socks5 proxy

Usage:
  ./proxify [flags]

Flags:
OUTPUT:
   -sr, -store-response        store raw http request / response to output directory (default proxify_logs)
   -o, -output                 output file to store proxify logs (default proxify_logs.jsonl)
   -of, -output-format string  output format (jsonl/yaml) (default "jsonl")
   -dump-req                   Dump only HTTP requests to output file
   -dump-resp                  Dump only HTTP responses to output file
   -oca, -out-ca string        Generate and Save CA File to filename

UPDATE:
   -up, -update                 update proxify to latest version
   -duc, -disable-update-check  disable automatic proxify update check

FILTER:
   -req-fd, -request-dsl string[]                   Request Filter DSL
   -resp-fd, -response-dsl string[]                 Response Filter DSL
   -req-mrd, -request-match-replace-dsl string[]    Request Match-Replace DSL
   -resp-mrd, -response-match-replace-dsl string[]  Response Match-Replace DSL

NETWORK:
   -ha, -http-addr string    Listening HTTP IP and Port address (ip:port) (default "127.0.0.1:8888")
   -sa, -socks-addr          Listening SOCKS IP and Port address (ip:port) (default 127.0.0.1:10080)
   -da, -dns-addr string     Listening DNS IP and Port address (ip:port)
   -dm, -dns-mapping string  Domain to IP DNS mapping (eg domain:ip,domain:ip,..)
   -r, -resolver string      Custom DNS resolvers to use (ip:port)

PROXY:
   -hp, -http-proxy string[]    Upstream HTTP Proxies (eg http://proxy-ip:proxy-port)
   -sp, -socks5-proxy string[]  Upstream SOCKS5 Proxies (eg socks5://proxy-ip:proxy-port)
   -c int                       Number of requests before switching to the next upstream proxy (default 1)

EXPORT:
   -max-size int  Max export data size (request/responses will be truncated) (default 9223372036854775807)

CONFIGURATION:
   -config string              path to the proxify configuration file
   -ec, -export-config string  proxify export module configuration file (default "$CONFIG/export-config.yaml")
   -config-directory string    override the default config path (default "$CONFIG/proxify")
   -cert-cache-size int        Number of certificates to cache (default 256)
   -a, -allow string[]         Allowed list of IP/CIDR's to be proxied
   -d, -deny string[]          Denied list of IP/CIDR's to be proxied
   -pt, -passthrough string[]  List of passthrough domains

DEBUG:
   -nc, -no-color      No Color
   -version            Version
   -silent             Silent
   -v, -verbose        Verbose
   -vv, -very-verbose  Very Verbose

Executando o Proxify

Executa um proxy HTTP na porta 8888:

root@kitploit:~
proxify

Executa um proxy HTTP em uma porta personalizada 1111:

root@kitploit:~
proxify -http-addr ":1111"

Passagem TLS

A flag -pt pode ser usada para passar (ignorar) tráfego criptografado sem tentar encerrar a conexão TLS.

root@kitploit:~
proxify -pt '(.*\.)?google\.co.in.*'

Proxify com proxy upstream

Executa um proxy HTTP na porta 8888 e encaminha o tráfego para o burp na porta 8080:

root@kitploit:~
proxify -http-proxy http://127.0.0.1:8080

Executa um proxy HTTP na porta 8888 e encaminha o tráfego para a rede TOR:

root@kitploit:~
proxify -socks5-proxy 127.0.0.1:9050

Dump de todo o tráfego HTTP/HTTPS

O Proxify suporta três formatos de saída: JSONL, YAML e Arquivos.

JSONL (padrão):

No formato Json Lines, cada par de Requisição/Resposta HTTP é armazenado como um objeto json em uma única linha.

root@kitploit:~
{"timestamp":"2024-02-20T01:56:49+05:30","url":"https://scanme.sh:443","request":{"header":{"Connection":"close","User-Agent":"curl/8.1.2","host":"scanme.sh:443","method":"CONNECT","path":"","scheme":"https"},"raw":"CONNECT scanme.sh:443 HTTP/1.1\r\nHost: scanme.sh:443\r\nConnection: close\r\nUser-Agent: curl/8.1.2\r\n\r\n"},"response":{"header":{"Content-Length":"0"},"raw":"HTTP/1.1 200 OK\r\nContent-Length: 0\r\n\r\n"}}
{"timestamp":"2024-02-20T01:56:49+05:30","url":"https://scanme.sh/","request":{"header":{"Accept":"*/*","Connection":"close","User-Agent":"curl/8.1.2","host":"scanme.sh","method":"GET","path":"/","scheme":"https"},"raw":"GET / HTTP/1.1\r\nHost: scanme.sh\r\nAccept: */*\r\nConnection: close\r\nUser-Agent: curl/8.1.2\r\n\r\n"},"response":{"header":{"Content-Type":"text/plain; charset=utf-8","Date":"Mon, 19 Feb 2024 20:26:49 GMT"},"body":"ok","raw":"HTTP/1.1 200 OK\r\nConnection: close\r\nContent-Type: text/plain; charset=utf-8\r\nDate: Mon, 19 Feb 2024 20:26:49 GMT\r\n\r\n"}}

Yaml MultiDoc:

No formato YAML MultiDoc, cada par de requisição e resposta HTTP é encapsulado como um documento separado. Todos os documentos no arquivo yaml de saída são separados por --- para permitir análise e consumo de fluxo.

root@kitploit:~
proxify -output-format yaml
root@kitploit:~
timestamp: "2024-02-20T01:40:40+05:30"
url: https://scanme.sh:443
request:
    header:
        Connection: close
        User-Agent: curl/8.1.2
        host: scanme.sh:443
        method: CONNECT
        path: ""
        scheme: https
    body: ""
    raw: "CONNECT scanme.sh:443 HTTP/1.1\r\nHost: scanme.sh:443\r\nConnection: close\r\nUser-Agent: curl/8.1.2\r\n\r\n"
response:
    header:
        Content-Length: "0"
    body: ""
    raw: "HTTP/1.1 200 OK\r\nContent-Length: 0\r\n\r\n"
---
timestamp: "2024-02-20T01:40:40+05:30"
...

Arquivos:

No formato Arquivos, cada par de requisição e resposta HTTP é armazenado em arquivos separados, com a requisição seguida pela resposta. Os nomes dos arquivos estão no formato {{Host}}-{{randstr}}.txt. Além disso, a flag dump-req ou dump-resp pode ser usada para salvar uma parte específica da requisição no arquivo.

root@kitploit:~
proxify -store-response

Nota: Ao usar -store-response, tanto jsonl quanto arquivos são gerados.

Mapeamento de nomes de host com resolvedor DNS local

O Proxify suporta a incorporação de um resolvedor DNS para mapear nomes de host para endereços específicos e definir um servidor DNS upstream para qualquer outro nome de domínio.

Executa um proxy HTTP na porta 8888 usando um servidor DNS embutido escutando na porta 53 e resolvendo www.google.it para 192.168.1.1 e todos os outros fqdn são encaminhados upstream para 1.1.1.1:

root@kitploit:~
proxify -dns-addr ":53" -dns-mapping "www.google.it:192.168.1.1" -dns-resolver "1.1.1.1:53"

Este recurso é usado, por exemplo, pelo utilitário replay para sequestrar as conexões e simular respostas. Pode ser útil durante avaliações internas com servidores DNS privados. Usar * como nome de domínio corresponde a todas as solicitações de DNS.

Correspondência/Filtro de tráfego com DSL

Se a requisição ou resposta corresponder aos filtros, o dump é marcado com o sufixo .match.txt:

root@kitploit:~
proxify -request-dsl "contains(request,'firefox')" -response-dsl "contains(response, md5('test'))"

Correspondência e Substituição em tempo real

O Proxify suporta modificar requisições e respostas em tempo real com a linguagem DSL.

Aqui está um exemplo para substituir a palavra firefox na requisição por chrome:

root@kitploit:~
proxify -request-match-replace-dsl "replace(request,'firefox','chrome')"

Outro exemplo usando substituição baseada em regex na resposta:

root@kitploit:~
proxify -response-match-replace-dsl "replace_regex(response, '^authentication failed$', 'authentication ok')"

Replay de todo o tráfego no burp

Replay de todas as requisições/respostas capturadas para a URL de destino (http://127.0.0.1:8080) se não especificada. Para que isso funcione, é necessário configurar o burp para usar o proxify como proxy upstream, pois ele cuidará de sequestrar as resoluções de DNS e simular o servidor remoto com a requisição capturada. Isso permite ter no histórico do burp exatamente todas as requisições/respostas como se tivessem sido originalmente enviadas através dele, permitindo, por exemplo, realizar uma interceptação remota na nuvem e mesclar todos os resultados localmente no burp.

root@kitploit:~
replay -output "logs/"

Instalando o Certificado SSL

Uma autoridade certificadora é gerada para o proxify, que é armazenada por padrão na pasta ~/.config/proxify/, podendo ser especificada manualmente com a flag -config. O certificado gerado pode ser importado visitando http://proxify/cacert em um navegador conectado ao proxify.

As etapas de instalação do Certificado Raiz são semelhantes às de outras ferramentas de proxy, incluindo a adição do certificado ao armazenamento de certificados raiz confiáveis do sistema.

Aplicações do Proxify

O Proxify pode ser usado em vários lugares; aqui estão alguns exemplos comuns onde o Proxify é útil:

👉 Armazenar todo o histórico de logs do proxy burp localmente.

Executa um proxy HTTP na porta 8888 e encaminha o tráfego para o burp na porta 8080:

root@kitploit:~
proxify -http-proxy http://127.0.0.1:8080

No BurpSuite, defina o Proxy Upstream para encaminhar todo o tráfego de volta para o proxify:

root@kitploit:~
User Options > Upstream Proxy > Proxy & Port > 127.0.0.1 & 8888

Agora, todo o histórico de requisições/respostas será armazenado na pasta logs que pode ser usada posteriormente para pós-processamento.

👉 Armazenar todo o seu histórico de navegação localmente.

Enquanto você navega na aplicação, pode apontar o navegador para o proxify para armazenar todas as requisições/respostas HTTP em arquivo.

Inicie o proxify na porta padrão ou em qualquer porta desejada:

root@kitploit:~
proxify -output chrome-logs

Inicie o navegador Chrome no macOS:

root@kitploit:~
/Applications/Chromium.app/Contents/MacOS/Chromium --ignore-certificate-errors --proxy-server=http://127.0.0.1:8888 &
👉 Armazenar todas as respostas durante o fuzzing conforme sua configuração em tempo de execução.

Inicie o proxify na porta padrão ou em qualquer porta desejada:

root@kitploit:~
proxify -output ffuf-logs

Execute o FFuF com o proxy apontando para o proxify:

root@kitploit:~
ffuf -x http://127.0.0.1:8888 FFUF_CMD_HERE

Proxify é feito com 🖤 pela equipe projectdiscovery. Contribuições da comunidade tornaram o projeto o que ele é. Veja o arquivo Thanks.md para mais detalhes.

Baixar ferramenta