Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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
MITM_Intercept — Uma maneira um pouco menos hackish de interceptar e modificar protocolos não-HTTP através do Burp e outros. | Kitploit
Ferramentas/GitHubGitHub/cyberark/mitm_intercept
Proxies Web e InterceptaçãoTestes de Penetração
GitHubcyberark/mitm_intercept

MITM_Intercept

Uma maneira um pouco menos hackish de interceptar e modificar protocolos não-HTTP através do Burp e outros.

Ver Repositório
2193272há 4 anosRevisado 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

MITM_Intercept

Uma forma um pouco menos 'hackish' de interceptar e modificar protocolos não HTTP por meio do Burp e outros com suporte a interceptação SSL e TLS. Esta ferramenta é para pesquisadores e testadores de penetração de aplicações que realizam avaliações de segurança de clientes thick.

Uma versão melhorada do fantástico projeto mitm_relay.

A História

Como parte do nosso trabalho no departamento de pesquisa da CyberArk Labs, precisávamos de uma forma de inspecionar a comunicação SSL e TLS sobre TCP e ter a opção de modificar o conteúdo dos pacotes em tempo real. Existem muitas formas de fazer isso (por exemplo, a conhecida extensão do Burp Suite NoPE), mas nenhuma delas funcionou para nós em alguns casos. No final, encontramos o mitm_relay.

mitm_relay é uma forma rápida e fácil de realizar MITM de qualquer protocolo baseado em TCP através de softwares de interceptação HTTP existentes, como o proxy do Burp Suite. É particularmente útil para avaliações de segurança de clientes thick. Mas não funcionou completamente para nós, então precisamos personalizá-lo. Após muitas personalizações, cada nova alteração exigia muito trabalho, e acabamos reescrevendo tudo de uma forma mais modular.

Esperamos que outros achem este script útil, e esperamos que adicionar funcionalidades seja fácil.

Como funciona

Para começar, os endereços e portas dos listeners precisam ser configurados. Para cada listener, também precisa ser configurado um alvo (endereço e porta). Cada dado recebido do listener será encapsulado no corpo de uma requisição HTTP POST com a URL contendo 'CLIENT_REQUEST'. Cada dado recebido do alvo será encapsulado no corpo de uma requisição HTTP POST com a URL contendo 'SERVER_RESPONSE'. Essas requisições são enviadas para um servidor de interceptação HTTP local.

Há a opção de configurar um proxy HTTP e usar uma ferramenta como o burp suite como ferramenta de interceptação HTTP e visualizar as mensagens lá. Dessa forma, é fácil modificar as mensagens usando 'Match and Replace' do Burp, extensões ou até mesmo manualmente (Lembre-se, o mecanismo de timeout do protocolo interceptado pode ser muito curto).

Outra forma de modificar as mensagens é usando um script Python que o servidor de interceptação HTTP executará quando receber mensagens.

O corpo das mensagens enviadas ao servidor de interceptação HTTP será impresso no shell. As mensagens serão impressas após as alterações se o script de modificação for fornecido. Após todas as modificações, o servidor de interceptação também ecoará de volta como corpo da resposta HTTP.

Para descriptografar a comunicação SSL/TLS, o mitm_intercept precisa receber um certificado e uma chave que o cliente aceitará ao iniciar um handshake com o listener. Se o servidor alvo exigir um certificado específico para handshake, há a opção de fornecer um certificado e uma chave.

Um pequeno gráfico para mostrar o fluxo de tráfego típico:

test

Diferenças do mitm_relay

mitm_intercept é compatível com versões mais recentes do Python 3 (Python 3.9) e também é compatível com Windows (por exemplo, socket.MSG_DONTWAIT não existe no Windows). Mantivemos a opção de usar 'STARTTLS', e a chamamos de modo 'Mixed'. O uso do arquivo de log de chaves SSL foi atualizado (a opção embutida para usá-lo é nova desde Python 3.8), e adicionamos a opção de alterar o cabeçalho SNI. Agora, o gerenciamento da comunicação de entrada e saída é feito por socketserver, e todos os dados são enviados para uma subclasse de ThreadingHTTPServer que lida com a representação e modificação dos dados. Dessa forma, é possível ver as alterações aplicadas pelo script de modificação na resposta (conveniente para usar Burp). Além disso, agora podemos alterar as cifras disponíveis que o script usa usando o formato de lista de cifras OpenSSL.

Pré-requisitos

  1. Python 3.9
  2. requests: $ python -m pip install requests

Uso

usage: mitm_intercept.py [-h] [-m] -l [u|t:]<interface>:<port> [[u|t:]<interface>:<port> ...] -t
                         [u|t:]<addr>:<port> [[u|t:]<addr>:<port> ...] [-lc <cert_path>]
                         [-lk <key_path>] [-tc <cert_path>] [-tk <key_path>] [-w <interface>:<port>]
                         [-p <addr>:<port>] [-s <script_path>] [--sni <server_name>]
                         [-tv <defualt|tls12|tls11|ssl3|tls1|ssl2>] [-ci <ciphers>]

mitm_intercept version 1.6
Baixar ferramenta