
DEPRECATO, wifipumpkin3 -> https://github.com/P0cL4bs/wifipumpkin3

WiFi-Pumpkin - Framework per attacchi Rogue Wi-Fi Access Point
WiFi-Pumpkin è un framework per creare facilmente falsi AP Rogue che inoltrano il traffico legittimo verso e dalla vittima ignara. È ricco di funzionalità, tra cui punti di accesso Wi-Fi Rogue, attacchi deauth su AP client, monitoraggio di probe request e credenziali, proxy trasparente, attacco Windows Update, gestione di phishing, ARP Poisoning, DNS Spoofing, Pumpkin-Proxy e cattura di immagini al volo. Inoltre, WiFi-Pumpkin è un framework molto completo per il controllo della sicurezza Wi-Fi: la lista delle funzionalità è piuttosto ampia.

git clone https://github.com/P0cL4bs/WiFi-Pumpkin.git
cd WiFi-Pumpkin
./installer.sh --install
oppure scarica il file .deb per installarlo
sudo dpkg -i wifi-pumpkin-0.8.8-all.deb
sudo apt-get -f install # forza l'installazione delle dipendenze se non viene installato normalmente
fai riferimento al wiki per Installazione
1HBXz6XX3LcHqUnaca5HRqq6rPUmA3pf6f
| Plugin | Descrizione |
|---|---|
| Dns2proxy | Questo strumento offre diverse funzionalità per il post-exploit una volta modificato il server DNS verso una vittima. |
| Sstrip2 | Sslstrip è uno strumento MITM che implementa gli attacchi di stripping SSL di Moxie Marlinspike, basato sul fork di @LeonardoNve/@xtr4nge. |
| Sergio_proxy | Sergio Proxy (un registratore super efficace di input e output) è un proxy HTTP scritto in Python per il framework Twisted. |
| BDFProxy | Patch Binaries via MITM: BackdoorFactory + mitmProxy, bdfproxy-ng è un fork e revisione del BDFProxy originale @secretsquirrel. |
| Responder | Responder è un poisoner LLMNR, NBT-NS e MDNS. Autore: Laurent Gaffie |
| PumpkinProxy | Intercetta dati HTTP, questo server proxy consente di intercettare richieste e risposte al volo. |
| CaptivePortals | Captive-Portal permette all'attaccante di bloccare l'accesso a Internet agli utenti finché non aprono la pagina di login in cui è richiesta una password prima di poter navigare. |

I proxy trasparenti (mitmproxy) possono essere usati per intercettare e manipolare il traffico HTTP modificando richieste e risposte, consentendo di iniettare javascript nei siti visitati dai target. Puoi facilmente implementare un modulo per iniettare dati nelle pagine creando un file Python nella directory "plugins/extension/", che verrà automaticamente elencato nella scheda Pumpkin-Proxy.
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('</body>','<h1>injected</h1></body>') # 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
plugin sul wiki
Un proxy che puoi posizionare tra un flusso TCP. Filtra i flussi di richieste e risposte con il modulo (scapy) e modifica attivamente i pacchetti di un protocollo TCP intercettato da WiFi-Pumpkin. Questo plugin utilizza moduli per visualizzare o modificare i dati intercettati; l'implementazione di un modulo è molto semplice: basta aggiungere il modulo personalizzato nella directory "plugins/analyzers/" e verrà automaticamente elencato nella scheda TCP-Proxy.
from scapy.all import *
from scapy_http import http # for layer HTTP
from default import PSniffer # base plugin class