pymiproxy

Tela Software:
pymiproxy
Detalhes de Software:
Versão: 1.0
Data de upload: 20 Feb 15
Revelador: Nadeem Douba
Licença: Livre
Popularidade: 80

Rating: 3.0/5 (Total Votes: 1)

pymiproxy é uma pequena e doce man-in-the-middle de proxy capaz de fazer HTTP e HTTP sobre SSL.
Introdução
pymiproxy é um pequeno, leve, man-in-the-middle de proxy capaz de realizar HTTP e HTTPS (ou SSL) inspeção. O proxy fornece uma autoridade de certificação interna que é capaz de gerar certificados para destinos baseados em SSL. Pymiproxy também é extensível e fornece dois métodos para estender o proxy: a sobrecarga de método, e uma interface de conexão automática. É ideal para situações em que você está na extrema necessidade de uma procuração legal para adulterar dados HTTP OUT- e / ou in-bound.
Instalação
Apenas execute o seguinte comando no prompt de comando:
& Nbsp; sudo python setup.py instalar
Uso
O módulo apresenta alguns exemplos do código. Em breve, pymiproxy pode ser executado-away direito, emitindo o seguinte comando no prompt de comando do:
& Nbsp; python -m miproxy.proxy
Isso irá chamar pymiproxy com o plugin DebugInterceptor que simplesmente exibe os primeiros 100 bytes de cada solicitação e resposta. O proxy é executado na porta 8080 e escuta em todos os endereços. Vá em frente e dar-lhe uma tentativa.
Estender ou pymiproxy Implementação
Há duas maneiras de estender o proxy:
- Desenvolver e cadastre-se um plugin Interceptor; ou
- Sobrecarga do mitm_request e métodos mitm_response na classe ProxyHandler.
A decisão sobre qual método você optar por usar é totalmente dependente se deseja ou não para empurrar os dados sejam interceptados através de um conjunto de interceptores ou não.
Interceptor Plugins
Atualmente dois tipos de plugins interceptores:
- RequestInterceptorPlugins: executado antes de enviar a solicitação para o servidor remoto; e
- ResponseInterceptorPlugins: firmados antes de enviar a resposta de volta ao cliente.
O fluxo seguinte é feita pelo pymiproxy neste modo:
1. pedido Cliente recebeu
2. pedido do cliente analisado
Pedido 3. Cliente processados ​​/ transformado pelo pedido Interceptor plugins
4. pedido Atualizado enviada ao servidor remoto
5. Resposta recebido pelo servidor remoto
6. Response processada / transformada por plugins Interceptor Response
7. actualize resposta enviada para o cliente
Você pode se registrar como muitos plugins como você deseja. No entanto, tenha em mente que plugins são executadas na ordem em que estão inscritos no. Tome cuidado na forma como você registrar seus plugins, se o resultado de um plugin é dependente do resultado de outra.
O que se segue é um exemplo de código simples de como executar o proxy com plugins:
de miproxy.proxy RequestInterceptorPlugin importação, ResponseInterceptorPlugin, AsyncMitmProxy
classe DebugInterceptor (RequestInterceptorPlugin, ResponseInterceptorPlugin):
& Nbsp; def do_request (self, de dados):
& Nbsp; print '>>% s'% repr (dados [: 100])
& Nbsp; de dados de retorno
& Nbsp; def do_response (self, de dados):
& nbsp; print '>% s'% repr (dados [: 100])
& Nbsp; de dados de retorno
& Nbsp; def mitm_response (self, de dados):
& Nbsp; print '

Requisitos :

  • Python
  • pyOpenSSL

Programas semelhantes

Stunnel
Stunnel

22 Jun 18

MapProxy
MapProxy

20 Feb 15

ScribeHandler
ScribeHandler

11 May 15

Comentário para pymiproxy

Comentários não encontrado
Adicionar comentário
Ligue imagens!