{"id":13449427,"url":"https://github.com/P0cL4bs/WiFi-Pumpkin-deprecated","last_synced_at":"2025-03-22T22:32:57.381Z","repository":{"id":34256543,"uuid":"38141050","full_name":"P0cL4bs/WiFi-Pumpkin-deprecated","owner":"P0cL4bs","description":"DEPRECATED, wifipumpkin3 -\u003e https://github.com/P0cL4bs/wifipumpkin3","archived":true,"fork":false,"pushed_at":"2020-04-18T19:32:52.000Z","size":16814,"stargazers_count":3108,"open_issues_count":39,"forks_count":720,"subscribers_count":268,"default_branch":"deprecated","last_synced_at":"2025-01-29T14:01:49.432Z","etag":null,"topics":["access-point","hacking","man-in-the-middle","mitm","python","sniffing","wifi","wireless"],"latest_commit_sha":null,"homepage":"http://wifipumpkin3.github.io/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/P0cL4bs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-06-27T00:56:21.000Z","updated_at":"2025-01-27T17:54:12.000Z","dependencies_parsed_at":"2022-07-12T16:11:20.979Z","dependency_job_id":null,"html_url":"https://github.com/P0cL4bs/WiFi-Pumpkin-deprecated","commit_stats":null,"previous_names":["p0cl4bs/wifi-pumpkin"],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/P0cL4bs%2FWiFi-Pumpkin-deprecated","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/P0cL4bs%2FWiFi-Pumpkin-deprecated/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/P0cL4bs%2FWiFi-Pumpkin-deprecated/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/P0cL4bs%2FWiFi-Pumpkin-deprecated/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/P0cL4bs","download_url":"https://codeload.github.com/P0cL4bs/WiFi-Pumpkin-deprecated/tar.gz/refs/heads/deprecated","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245029160,"owners_count":20549657,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["access-point","hacking","man-in-the-middle","mitm","python","sniffing","wifi","wireless"],"created_at":"2024-07-31T06:00:37.936Z","updated_at":"2025-03-22T22:32:57.058Z","avatar_url":"https://github.com/P0cL4bs.png","language":"Python","funding_links":["https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=PUPJEGHLJPFQL"],"categories":["Python","HarmonyOS","wifi"],"sub_categories":["Windows Manager"],"readme":"# This repository is ⛔️ DEPRECATED, [wifipumpkin3](https://github.com/P0cL4bs/wifipumpkin3) is Released, checkout!\n\n![logo](https://raw.githubusercontent.com/P0cL4bs/WiFi-Pumpkin/master/docs/logo.png)\n\n[![build](https://travis-ci.org/P0cL4bs/WiFi-Pumpkin.svg)](https://travis-ci.org/P0cL4bs/WiFi-Pumpkin/)\n![version](https://img.shields.io/badge/version-0.8.8-orange.svg)\n\nWiFi-Pumpkin - Framework for Rogue Wi-Fi Access Point Attack\n\n### Description\n\nThe WiFi-Pumpkin is a rogue AP framework to easily create these fake networks, all while forwarding legitimate traffic to and from the unsuspecting target. It comes stuffed with features, including rogue Wi-Fi access points, deauth attacks on client APs, a probe request and credentials monitor, transparent proxy, Windows update attack, phishing manager, ARP Poisoning, DNS Spoofing, Pumpkin-Proxy, and image capture on the fly. moreover, the WiFi-Pumpkin is a very complete framework for auditing Wi-Fi security check the list of features is quite broad.\n\n![screenshot](https://raw.githubusercontent.com/P0cL4bs/WiFi-Pumpkin/master/docs/screenshot.png)\n\n### Installation\n\n- Python 2.7\n\n```sh\n git clone https://github.com/P0cL4bs/WiFi-Pumpkin.git\n cd WiFi-Pumpkin\n ./installer.sh --install\n```\n\nor download [.deb](https://github.com/P0cL4bs/WiFi-Pumpkin/releases) file to install\n\n```sh\nsudo dpkg -i wifi-pumpkin-0.8.8-all.deb\nsudo apt-get -f install # force install dependencies if not install normally\n\n```\n\nrefer to the wiki for [Installation](https://github.com/P0cL4bs/WiFi-Pumpkin/wiki/Installation)\n\n### Features\n\n- Rogue Wi-Fi Access Point\n- Deauth Attack Clients AP\n- Probe Request Monitor\n- DHCP Starvation Attack\n- Credentials Monitor\n- Transparent Proxy\n- Windows Update Attack\n- Phishing Manager\n- Partial Bypass HSTS protocol\n- Support beef hook\n- ARP Poison\n- DNS Spoof\n- Patch Binaries via MITM (BDF-Proxy)\n- LLMNR, NBT-NS and MDNS poisoner (Responder)\n- Pumpkin-Proxy (ProxyServer (mitmproxy API))\n- Capture images on the fly\n- TCP-Proxy (with [scapy](http://www.secdev.org/projects/scapy/))\n- Moduled plugins and proxys\n- Wireless Mode support hostapd-mana/hostapd-karma attacks\n- Capitve-portals [new]\n\n### Donation\n\n##### paypal:\n\n[![donate](https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=PUPJEGHLJPFQL)\n\n##### Via BTC:\n\n1HBXz6XX3LcHqUnaca5HRqq6rPUmA3pf6f\n\n### Plugins\n\n| Plugin                                                       | Description                                                                                                                                     |\n| :----------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------- |\n| [Dns2proxy](https://github.com/LeonardoNve/dns2proxy)        | This tools offer a different features for post-explotation once you change the DNS server to a Victim.                                          |\n| [Sstrip2](https://github.com/LeonardoNve/sslstrip2)          | Sslstrip is a MITM tool that implements Moxie Marlinspike's SSL stripping attacks based version fork @LeonardoNve/@xtr4nge.                     |\n| [Sergio_proxy](https://github.com/supernothing/sergio-proxy) | Sergio Proxy (a Super Effective Recorder of Gathered Inputs and Outputs) is an HTTP proxy that was written in Python for the Twisted framework. |\n| [BDFProxy](https://github.com/davinerd/BDFProxy-ng)          | Patch Binaries via MITM: BackdoorFactory + mitmProxy, bdfproxy-ng is a fork and review of the original BDFProxy @secretsquirrel.                |\n| [Responder](https://github.com/lgandx/Responder)             | Responder an LLMNR, NBT-NS and MDNS poisoner. Author: Laurent Gaffie                                                                            |\n| [PumpkinProxy]()                                             | Intercepting HTTP data, this proxy server that allows to intercept requests and response on the fly\n| [CaptivePortals]()                                          | Captive-Portal allow the Attacker block Internet access for users until they open the page login page where a password is required before being allowed to browse the web. | \n\n### Transparent Proxy\n\n![proxy](https://raw.githubusercontent.com/P0cL4bs/WiFi-Pumpkin/master/docs/proxyscenario.png)\n\nTransparent proxies(mitmproxy) that you can use to intercept and manipulate HTTP traffic modifying requests and responses, that allow to inject javascripts into the targets visited. You can easily implement a module to inject data into pages creating a python file in directory \"plugins/extension/\" automatically will be listed on Pumpkin-Proxy tab.\n\n#### Plugins Example Dev\n\n```python\nfrom mitmproxy.models import decoded # for decode content html\nfrom plugins.extension.plugin import PluginTemplate\n\nclass Nameplugin(PluginTemplate):\n   meta = {\n       'Name'      : 'Nameplugin',\n       'Version'   : '1.0',\n       'Description' : 'Brief description of the new plugin',\n       'Author'    : 'by dev'\n   }\n   def __init__(self):\n       for key,value in self.meta.items():\n           self.__dict__[key] = value\n       # if you want set arguments check refer wiki more info.\n       self.ConfigParser = False # No require arguments\n\n   def request(self, flow):\n       print flow.__dict__\n       print flow.request.__dict__\n       print flow.request.headers.__dict__ # request headers\n       host = flow.request.pretty_host # get domain on the fly requests\n       versionH = flow.request.http_version # get http version\n\n       # get redirect domains example\n       # pretty_host takes the \"Host\" header of the request into account,\n       if flow.request.pretty_host == \"example.org\":\n           flow.request.host = \"mitmproxy.org\"\n\n       # get all request Header example\n       self.send_output.emit(\"\\n[{}][HTTP REQUEST HEADERS]\".format(self.Name))\n       for name, valur in flow.request.headers.iteritems():\n           self.send_output.emit('{}: {}'.format(name,valur))\n\n       print flow.request.method # show method request\n       # the model printer data\n       self.send_output.emit('[NamePlugin]:: this is model for save data logging')\n\n   def response(self, flow):\n       print flow.__dict__\n       print flow.response.__dict__\n       print flow.response.headers.__dict__ #convert headers for python dict\n       print flow.response.headers['Content-Type'] # get content type\n\n       #every HTTP response before it is returned to the client\n       with decoded(flow.response):\n           print flow.response.content # content html\n           flow.response.content.replace('\u003c/body\u003e','\u003ch1\u003einjected\u003c/h1\u003e\u003c/body\u003e') # replace content tag\n\n       del flow.response.headers[\"X-XSS-Protection\"] # remove protection Header\n\n       flow.response.headers[\"newheader\"] = \"foo\" # adds a new header\n       #and the new header will be added to all responses passing through the proxy\n```\n\n#### About plugins\n\n[plugins](https://github.com/P0cL4bs/WiFi-Pumpkin/wiki/Plugins) on the wiki\n\n### TCP-Proxy Server\n\nA proxy that you can place between in a TCP stream. It filters the request and response streams with ([scapy](http://www.secdev.org/projects/scapy/) module) and actively modify packets of a TCP protocol that gets intercepted by WiFi-Pumpkin. this plugin uses modules to view or modify the intercepted data that possibly easiest implementation of a module, just add your custom module on \"plugins/analyzers/\" automatically will be listed on TCP-Proxy tab.\n\n```python\nfrom scapy.all import *\nfrom scapy_http import http # for layer HTTP\nfrom default import PSniffer # base plugin class\n\nclass ExamplePlugin(PSniffer):\n    _activated     = False\n    _instance      = None\n    meta = {\n        'Name'      : 'Example',\n        'Version'   : '1.0',\n        'Description' : 'Brief description of the new plugin',\n        'Author'    : 'your name',\n    }\n    def __init__(self):\n        for key,value in self.meta.items():\n            self.__dict__[key] = value\n\n    @staticmethod\n    def getInstance():\n        if ExamplePlugin._instance is None:\n            ExamplePlugin._instance = ExamplePlugin()\n        return ExamplePlugin._instance\n\n    def filterPackets(self,pkt): # (pkt) object in order to modify the data on the fly\n        if pkt.haslayer(http.HTTPRequest): # filter only http request\n\n            http_layer = pkt.getlayer(http.HTTPRequest) # get http fields as dict type\n            ip_layer = pkt.getlayer(IP)# get ip headers fields as dict type\n\n            print http_layer.fields['Method'] # show method http request\n            # show all item in Header request http\n            for item in http_layer.fields['Headers']:\n                print('{} : {}'.format(item,http_layer.fields['Headers'][item]))\n\n            print ip_layer.fields['src'] # show source ip address\n            print ip_layer.fields['dst'] # show destiny ip address\n\n            print http_layer # show item type dict\n            print ip_layer # show item type dict\n\n            return self.output.emit({'name_module':'send output to tab TCP-Proxy'})\n\n```\n\n#### About TCP-Proxy\n\n[TCP-Proxy](https://github.com/P0cL4bs/WiFi-Pumpkin/wiki/TCP-PProxy) on the wiki\n\n#### About Captive Portals\n\nthe plugin Captive-Portal allow the Attacker mount a wireless access point which is used in conjuction with a web server and iptables traffic capturing rules to create the phishing portal. Users can freely connect to these networks without a password and will often be directed to a login page where a password is required before being allowed to browse the web.\n\n[Captive-portals](https://github.com/mh4x0f/captiveportals) on the wiki\n\n### Screenshots\n\n[Screenshot](https://github.com/P0cL4bs/WiFi-Pumpkin/wiki/Screenshots) on the wiki\n\n### FAQ\n\n[FAQ](https://github.com/P0cL4bs/WiFi-Pumpkin/wiki/FAQ) on the wiki\n\n### Contact Us\n\nWhether you want to report a [bug](https://github.com/P0cL4bs/WiFi-Pumpkin/issues/new), send a patch or give some suggestions on this project, drop us or open [pull requests](https://github.com/P0cL4bs/WiFi-Pumpkin/pulls)\n\n### community\nhttps://discord.gg/jywYskR\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FP0cL4bs%2FWiFi-Pumpkin-deprecated","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FP0cL4bs%2FWiFi-Pumpkin-deprecated","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FP0cL4bs%2FWiFi-Pumpkin-deprecated/lists"}