[CURSOS][bsummary]
[ANDROID][bleft]

WiFi-Pumpkin v0.8.7 - Framework for Rogue Wi-Fi Access Point Attack

WiFi-Pumpkin v0.8.7 - Framework for Rogue Wi-Fi Access Point Attack

WiFi-Pumpkin é um framework de AP  para criar facilmente essas redes falsas, tudo isso enquanto encaminha o tráfego legítimo de e para o alvo desavisado. Ele vem repleto de recursos, incluindo pontos de acesso Wi-Fi desonestos, deauth ataques a APs cliente, um monitor de solicitação e credenciais de sondagem , proxy transparente, ataque de atualização do Windows, gerenciador de phishing, envenenamento ARP, DNS Spoofing, Pumpkin Proxy e captura de imagem no vôo. Além disso, o WiFi-Pumpkin é um quadro muito completo para auditoria de segurança Wi-Fi verificar a lista de recursos é bastante amplo.


Instalação Python 2.7

git clone https://github.com/P0cL4bs/WiFi-Pumpkin.git
 cd WiFi-Pumpkin
 ./installer.sh --install

ou baixe o arquivo .deb para instalar

sudo dpkg -i wifi-pumpkin-0.8.7-all.deb
sudo apt-get -f install # force install dependencies if not install normally

consulte o wiki para os recursos de instalação

  • Ponto de acesso Wi-Fi desonesto
  • Deauth Attack Clients AP
  • Monitor de Solicitação de Sonda
  • Ataque de fome DHCP
  • Monitor de Credenciais
  • Proxy Transparente
  • Ataque do Windows Update
  • Gerente de Phishing
  • Protocolo HSTS de Bypass Parcial
  • Suporte gancho de carne
  • Veneno de ARP
  • DNS Spoof
  • Binários de Correção via MITM (BDF-Proxy)
  • LLMNR, NBT-NS e envenenador MDNS (Responder)
  • Proxy-da-abóbora (ProxyServer (API do mitmproxy))
  • Capture imagens em tempo real
  • TCP-Proxy (com scapy )
  • Plugins e proxys modulados
  • Modo sem fio suporta ataques hostapd-mana / hostapd-karma

Plugins
PlugarDescrição
Dns2proxyEssas ferramentas oferecem recursos diferentes para pós-explotação quando você altera o servidor DNS para uma vítima.
Sstrip2O Sslstrip é uma ferramenta MITM que implementa a versão fork @ LeonardoNve / @ xtr4nge, baseada em ataques de remoção SSL da Moxie Marlinspike.
Sergio_proxySergio Proxy (um Super Gravador Efetivo de Entradas e Saídas Reunidas) é um proxy HTTP que foi escrito em Python para o framework Twisted.
BDFProxyBinários de Correção via MITM: BackdoorFactory + mitmProxy, bdfproxy-ng é uma bifurcação e revisão do BDFProxy @secretsquirrel original.
RespondenteResponder um envenenador LLMNR, NBT-NS e MDNS. Autor: Laurent Gaffie

Proxy Transparente



Proxies transparentes (mitmproxy) que você pode usar para interceptar e manipular solicitações e respostas de modificação de tráfego HTTP, que permitem injetar javascripts nos destinos visitados. Você pode facilmente implementar um módulo para injetar dados em páginas criando um arquivo python no diretório "plugins / extension /" automaticamente será listado na aba Pumpkin-Proxy. 

Exemplo de Plugins Dev


from mitmproxy.models import decoded # for decode content html
from plugins.extension.plugin import PluginTemplate

class Nameplugin(PluginTemplate):
   meta = {
       'Name'      : 'Nameplugin',
       'Version'   : '1.0',
       'Description' : 'Brief description of the new plugin',
       'Author'    : 'by dev'
   }
   def __init__(self):
       for key,value in self.meta.items():
           self.__dict__[key] = value
       # if you want set arguments check refer wiki more info.
       self.ConfigParser = False # No require arguments

   def request(self, flow):
       print flow.__dict__
       print flow.request.__dict__
       print flow.request.headers.__dict__ # request headers
       host = flow.request.pretty_host # get domain on the fly requests
       versionH = flow.request.http_version # get http version

       # get redirect domains example
       # pretty_host takes the "Host" header of the request into account,
       if flow.request.pretty_host == "example.org":
           flow.request.host = "mitmproxy.org"

       # get all request Header example
       self.send_output.emit("\n[{}][HTTP REQUEST HEADERS]".format(self.Name))
       for name, valur in flow.request.headers.iteritems():
           self.send_output.emit('{}: {}'.format(name,valur))

       print flow.request.method # show method request
       # the model printer data
       self.send_output.emit('[NamePlugin]:: this is model for save data logging')

   def response(self, flow):
       print flow.__dict__
       print flow.response.__dict__
       print flow.response.headers.__dict__ #convert headers for python dict
       print flow.response.headers['Content-Type'] # get content type

       #every HTTP response before it is returned to the client
       with decoded(flow.response):
           print flow.response.content # content html
           flow.response.content.replace('
','

') # replace content tag

       del flow.response.headers["X-XSS-Protection"] # remove protection Header

       flow.response.headers["newheader"] = "foo" # adds a new header
       #and the new header will be added to all responses passing through the proxy


Sobre plugins de
plugins no wiki

Servidor TCP-Proxy
Um proxy que você pode colocar entre um fluxo TCP. Ele filtra os fluxos de solicitação e resposta com (módulo scapy ) e modifica ativamente pacotes de um protocolo TCP que é interceptado pelo WiFi-Pumpkin. este plugin usa módulos para visualizar ou modificar os dados interceptados que possivelmente implementação mais fácil de um módulo, basta adicionar o seu módulo personalizado em "plugins / analisadores /" automaticamente será listado na guia TCP-Proxy.




from scapy.all import *
from scapy_http import http # for layer HTTP
from default import PSniffer # base plugin class

class ExamplePlugin(PSniffer):
    _activated     = False
    _instance      = None
    meta = {
        'Name'      : 'Example',
        'Version'   : '1.0',
        'Description' : 'Brief description of the new plugin',
        'Author'    : 'your name',
    }
    def __init__(self):
        for key,value in self.meta.items():
            self.__dict__[key] = value

    @staticmethod
    def getInstance():
        if ExamplePlugin._instance is None:
            ExamplePlugin._instance = ExamplePlugin()
        return ExamplePlugin._instance

    def filterPackets(self,pkt): # (pkt) object in order to modify the data on the fly
        if pkt.haslayer(http.HTTPRequest): # filter only http request

            http_layer = pkt.getlayer(http.HTTPRequest) # get http fields as dict type
            ip_layer = pkt.getlayer(IP)# get ip headers fields as dict type

            print http_layer.fields['Method'] # show method http request
            # show all item in Header request http
            for item in http_layer.fields['Headers']:
                print('{} : {}'.format(item,http_layer.fields['Headers'][item]))

            print ip_layer.fields['src'] # show source ip address
            print ip_layer.fields['dst'] # show destiny ip address

            print http_layer # show item type dict
            print ip_layer # show item type dict

            return self.output.emit({'name_module':'send output to tab TCP-Proxy'})


Sobre o TCP-Proxy
TCP-Proxy na wiki

Capturas de
tela Captura de tela na wiki





0 comentários via Blogger
comentários via Facebook

Nenhum comentário :