mirror of
https://github.com/Cronocide/wifipumpkin3.git
synced 2025-01-22 11:18:55 +00:00
build the package wifipumpkin3
This commit is contained in:
parent
eca3887612
commit
521ab99374
201
LICENSE.md
Normal file
201
LICENSE.md
Normal file
@ -0,0 +1,201 @@
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
@ -5,17 +5,18 @@ getLogger('scapy.runtime').setLevel(ERROR)
|
||||
import argparse
|
||||
import sys
|
||||
from PyQt5 import QtGui,QtCore
|
||||
from core.main import PumpkinShell
|
||||
from core.utility.printer import banner, setcolor
|
||||
from core.packets.dhcpserver import IpAddressClass
|
||||
from core.utility.collection import SettingsINI
|
||||
import core.utility.constants as C
|
||||
from wifipumpkin3.core.main import PumpkinShell
|
||||
from wifipumpkin3.core.utility.printer import banner, setcolor
|
||||
from wifipumpkin3.core.packets.dhcpserver import IpAddressClass
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
|
||||
_author = ('{}'.format(setcolor('@mh4x0f',color='yellow')))
|
||||
_version = setcolor('0.1',color='yellow')
|
||||
__codename__ = setcolor('sab1no',color='red')
|
||||
banner(__codename__)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
app = QtCore.QCoreApplication(sys.argv)
|
||||
conf = SettingsINI(C.CONFIG_INI)
|
@ -1,18 +1,18 @@
|
||||
netifaces
|
||||
netaddr
|
||||
dhcplib
|
||||
ipaddress
|
||||
scapy_http
|
||||
configparser
|
||||
tabulate
|
||||
beautifultable
|
||||
netifaces==0.10.4
|
||||
netaddr==0.7.19
|
||||
dhcplib==0.1.1
|
||||
ipaddress==1.0.22
|
||||
scapy_http==1.8.2
|
||||
configparser==4.0.2
|
||||
tabulate==0.8.5
|
||||
beautifultable==0.8.0
|
||||
urwid==1.1.2
|
||||
termcolor
|
||||
termcolor==1.1.0
|
||||
PyQt5==5.10.1
|
||||
dnslib==0.9.7
|
||||
loguru
|
||||
scapy
|
||||
npyscreen
|
||||
isc_dhcp_leases
|
||||
dnspython
|
||||
proxy.py
|
||||
loguru==0.4.0
|
||||
scapy==2.4.3
|
||||
npyscreen==4.10.5
|
||||
isc_dhcp_leases==0.9.1
|
||||
dnspython==1.16.0
|
||||
proxy.py==2.1.2
|
||||
|
59
setup.py
Normal file
59
setup.py
Normal file
@ -0,0 +1,59 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
from setuptools import setup, find_packages
|
||||
from distutils.util import strtobool
|
||||
import os
|
||||
import glob
|
||||
import shutil
|
||||
import re
|
||||
from distutils.dir_util import copy_tree
|
||||
|
||||
def version(version_file):
|
||||
with open(version_file, 'r') as f:
|
||||
version_file_content = f.read()
|
||||
|
||||
version_match = re.search(r"__version__\s*=\s*[\"\']([^\"\']+)", version_file_content)
|
||||
if version_match:
|
||||
return version_match.groups()[0]
|
||||
|
||||
return None
|
||||
|
||||
with open('requirements.txt') as fp:
|
||||
required = [line.strip() for line in fp if line.strip() != ""]
|
||||
|
||||
def create_user_dir_config():
|
||||
user_config_dir = os.path.expanduser("~") + "/.config/wifipumpkin3"
|
||||
if not os.path.isdir(user_config_dir):
|
||||
os.makedirs(user_config_dir, exist_ok=True)
|
||||
copy_tree("config", user_config_dir +'/config')
|
||||
copy_tree("logs", user_config_dir + "/logs")
|
||||
|
||||
|
||||
# create dir config
|
||||
create_user_dir_config()
|
||||
|
||||
VERSION_FILE = 'wifipumpkin3/_version.py'
|
||||
wifipumpkin3_version = version(VERSION_FILE)
|
||||
|
||||
setup(name='wifipumpkin3',
|
||||
version=wifipumpkin3_version,
|
||||
description='Framework for Rogue Wi-Fi Access Point Attack',
|
||||
author='Marcos Bomfim (mh4x0f) - P0cL4bs Team',
|
||||
author_email='mh4root@gmail.com',
|
||||
url='https://github.com/P0cL4bs/WiFi-Pumpkin3',
|
||||
license='apache 2.0',
|
||||
long_description=open('README.md').read(),
|
||||
install_requires=required,
|
||||
scripts=['bin/wifipumpkin3'],
|
||||
include_package_data=True,
|
||||
packages=find_packages(),
|
||||
python_requires='>=3',
|
||||
classifiers=[
|
||||
'Programming Language :: Python :: 3',
|
||||
'Development Status :: 5 - Production/Stable',
|
||||
'License :: OSI Approved :: BSD License',
|
||||
'Natural Language :: English',
|
||||
'Operating System :: POSIX :: Linux',
|
||||
'Topic :: Scientific/Engineering :: Information Analysis',
|
||||
'Environment :: Console',
|
||||
])
|
1
wifipumpkin3/_version.py
Normal file
1
wifipumpkin3/_version.py
Normal file
@ -0,0 +1 @@
|
||||
__version__ = '1.0.0'
|
@ -10,13 +10,13 @@ from subprocess import \
|
||||
)
|
||||
|
||||
from PyQt5.QtCore import pyqtSignal,QObject
|
||||
import core.utility.constants as C
|
||||
from core.common.platforms import Linux
|
||||
from core.common.platforms import exec_bash
|
||||
from core.controls.threads import ProcessHostapd
|
||||
from core.packets.dhcpserver import DHCPThread
|
||||
from core.utility.collection import SettingsINI
|
||||
from core.utility.printer import display_messages
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
from wifipumpkin3.core.common.platforms import Linux
|
||||
from wifipumpkin3.core.common.platforms import exec_bash
|
||||
from wifipumpkin3.core.controls.threads import ProcessHostapd
|
||||
from wifipumpkin3.core.packets.dhcpserver import DHCPThread
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
from wifipumpkin3.core.utility.printer import display_messages
|
||||
import time
|
||||
|
||||
|
@ -1,8 +1,6 @@
|
||||
from core.config.globalimport import *
|
||||
from core.common.uimodel import *
|
||||
|
||||
|
||||
from core.widgets.default import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from wifipumpkin3.core.widgets.default import *
|
||||
|
||||
class DefaultWidget(Qt.QObject):
|
||||
def __init__(self,parent = None,**kwargs):
|
@ -12,7 +12,7 @@ from PyQt5 import QtGui
|
||||
import logging
|
||||
import signal
|
||||
import configparser
|
||||
import core.utility.constants as C
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
from shlex import split
|
||||
from glob import glob
|
||||
import warnings
|
@ -1,10 +1,10 @@
|
||||
import socket
|
||||
import core.utility.constants as C
|
||||
from core.utility.printer import display_messages,colors
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
from wifipumpkin3.core.utility.printer import display_messages,colors
|
||||
from PyQt5.QtCore import pyqtSignal,QObject,QThread
|
||||
from core.utility.collection import SettingsINI
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
# from core.servers.proxy.http.controller.handler import MasterHandler
|
||||
from core.servers.proxy.tcp.intercept import TH_SniffingPackets
|
||||
#from wifipumpkin3.core.servers.proxy.tcp.intercept import TH_SniffingPackets
|
||||
|
||||
|
||||
# class PumpkinProxy(QThread):
|
@ -1,7 +1,7 @@
|
||||
from cmd import Cmd
|
||||
from core.utility.printer import *
|
||||
from core.utility.collection import SettingsINI
|
||||
import core.utility.constants as C
|
||||
from wifipumpkin3.core.utility.printer import *
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
from os import popen
|
||||
import sys
|
||||
|
@ -1,8 +1,8 @@
|
||||
from core.config.globalimport import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
import weakref
|
||||
import core.utility.constants as C
|
||||
from core.utility.collection import SettingsINI
|
||||
from core.common.platforms import Linux
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
from wifipumpkin3.core.common.platforms import Linux
|
||||
|
||||
class CoreSettings(Linux):
|
||||
|
123
wifipumpkin3/core/config/app/config.ini
Normal file
123
wifipumpkin3/core/config/app/config.ini
Normal file
@ -0,0 +1,123 @@
|
||||
[Class-A-Address]
|
||||
broadcast=10.0.0.255
|
||||
leasetimeDef=600
|
||||
leasetimeMax=7200
|
||||
netmask=255.0.0.0
|
||||
range=10.0.0.20/10.0.0.50
|
||||
router=10.0.0.1
|
||||
subnet=10.0.0.0
|
||||
|
||||
[Class-B-Address]
|
||||
broadcast=172.16.0.255
|
||||
leasetimeDef=600
|
||||
leasetimeMax=7200
|
||||
netmask=255.240.0.0
|
||||
range=172.16.0.100/172.16.0.150
|
||||
router=172.16.0.1
|
||||
subnet=172.16.0.0
|
||||
|
||||
[Class-C-Address]
|
||||
broadcast=192.168.0.255
|
||||
leasetimeDef=600
|
||||
leasetimeMax=7200
|
||||
netmask=255.255.255.0
|
||||
range=192.168.0.100/192.168.0.150
|
||||
router=192.168.0.1
|
||||
subnet=192.168.0.0
|
||||
|
||||
[accesspoint]
|
||||
Karma=false
|
||||
Mana=false
|
||||
Static=true
|
||||
WPA_Algorithms=TKIP
|
||||
WPA_SharedKey=1234567890
|
||||
WPA_type=2
|
||||
bssid=BC:F6:85:03:36:5B
|
||||
channel=11
|
||||
checkConnectionWifi=true
|
||||
check_support_ap_mode=true
|
||||
current_session=None
|
||||
dhcpd_server=false
|
||||
dnsproxy_server=false
|
||||
enable_Security=false
|
||||
hostapd_custom=false
|
||||
hostapd_path=/usr/sbin/hostapd
|
||||
interfaceAP=wlxc83a35cef744
|
||||
path_pydns_server_zones=core/config/app/dns_hosts.ini
|
||||
persistNetwokManager=true
|
||||
pydhcp_server=true
|
||||
pydns_server=true
|
||||
sessions="{\"MjEzMjY=\": {\"started\": \"Sat Jan 20 11:55:08 2018\", \"stoped\": \"Sat Jan 20 12:13:51 2018\"}, \"NTc3MTY=\": {\"started\": \"Sat Jan 20 12:13:56 2018\", \"stoped\": \"Sat Jan 20 12:26:06 2018\"}}"
|
||||
ssid=TESTEWdxsss
|
||||
statusAP=false
|
||||
timer_update_info=2000
|
||||
|
||||
[colors_log]
|
||||
generic=light-white, #000000
|
||||
pumpkinproxy=light-red, #000000
|
||||
pydns_server=light-blue, #000000
|
||||
responder3=light-green, #000000
|
||||
tcpproxy=light-yellow, #000000
|
||||
|
||||
[dhcp]
|
||||
broadcast=10.0.0.255
|
||||
classtype=A
|
||||
leasetimeDef=600
|
||||
leasetimeMax=7200
|
||||
netmask=255.0.0.0
|
||||
range=10.0.0.20/10.0.0.50
|
||||
router=10.0.0.1
|
||||
subnet=10.0.0.0
|
||||
|
||||
[dhcpdefault]
|
||||
broadcast=10.0.0.255
|
||||
leasetimeDef=600
|
||||
leasetimeMax=7200
|
||||
netmask=255.0.0.0
|
||||
range=10.0.0.20/10.0.0.50
|
||||
router=10.0.0.1
|
||||
subnet=10.0.0.0
|
||||
|
||||
[dockarea]
|
||||
advanced=true
|
||||
dock_PumpkinProxy=false
|
||||
dock_bdfproxy=false
|
||||
dock_credencials=true
|
||||
dock_dns2proxy=false
|
||||
dock_responder=false
|
||||
dock_tcpproxy=true
|
||||
dock_urlmonitor=true
|
||||
|
||||
[iptables]
|
||||
iptables_0_masq=iptables -w -P FORWARD ACCEPT
|
||||
iptables_A_masq=iptables -w -t nat -A POSTROUTING --out-interface $inet -j MASQUERADE
|
||||
iptables_B_forward="iptables -w -A FORWARD -i $inet --out-interface $wlan -j ACCEPT -m state --state RELATED,ESTABLISHED"
|
||||
iptables_C_foracept=iptables -w -A FORWARD -i $wlan --out-interface $inet -j ACCEPT
|
||||
iptables_D_accept=iptables -w -A OUTPUT --out-interface $inet -j ACCEPT
|
||||
iptables_E_accpet=iptables -w -A INPUT --in-interface $wlan -j ACCEPT
|
||||
|
||||
[mitm_modules]
|
||||
responder3=false
|
||||
responder3_config=plugins/external/Responder3/examples/config.py
|
||||
|
||||
[plugins]
|
||||
bdfproxy_config=plugins/external/BDFProxy-ng/bdfproxy.cfg
|
||||
bdfproxy_plugin=false
|
||||
dns2proxy_plugin=false
|
||||
noproxy=false
|
||||
pumpkinproxy_plugin=true
|
||||
sergioproxy_plugin=false
|
||||
tcpproxy_plugin=true
|
||||
|
||||
[settings]
|
||||
log_colorize=true
|
||||
log_serialize=true
|
||||
mdk3=a -a m -t
|
||||
mdk3_deauth=false
|
||||
redirect_port=10000
|
||||
scan_airodump=true
|
||||
scan_scapy=false
|
||||
scanner_rangeIP=0-255
|
||||
scapy_deauth=true
|
||||
show_dashboard_info=true
|
||||
themes=themes/themeDefault
|
23
wifipumpkin3/core/config/app/dns_hosts.ini
Normal file
23
wifipumpkin3/core/config/app/dns_hosts.ini
Normal file
@ -0,0 +1,23 @@
|
||||
# this is an example zones file
|
||||
# each line with parts split on white space are considered thus:
|
||||
# 1: the host
|
||||
# 2: the record type
|
||||
# everything else: either a single string or json list if it starts with "["
|
||||
# lines starting with white space are striped of white space (including "\n")
|
||||
# and added to the previous line
|
||||
example.com A 10.0.0.1
|
||||
example.com CNAME whatever.com
|
||||
example.com MX ["whatever.com.", 5]
|
||||
example.com MX ["mx2.whatever.com.", 10]
|
||||
example.com MX ["mx3.whatever.com.", 20]
|
||||
example.com NS ns1.whatever.com.
|
||||
example.com NS ns2.whatever.com.
|
||||
example.com TXT hello this is some text
|
||||
example.com SOA ["ns1.example.com", "dns.example.com"]
|
||||
# because the next record exceeds 255 in length dnserver will automatically
|
||||
# split it into a multipart record, the new lines here have no effect on that
|
||||
testing.com TXT one long value: IICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAg
|
||||
FWZUed1qcBziAsqZ/LzT2ASxJYuJ5sko1CzWFhFuxiluNnwKjSknSjanyYnm0vro4dhAtyiQ7O
|
||||
PVROOaNy9Iyklvu91KuhbYi6l80Rrdnuq1yjM//xjaB6DGx8+m1ENML8PEdSFbKQbh9akm2bkN
|
||||
w5DC5a8Slp7j+eEVHkgV3k3oRhkPcrKyoPVvniDNH+Ln7DnSGC+Aw5Sp+fhu5aZmoODhhX5/1m
|
||||
ANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA26JaFWZUed1qcBziAsqZ/LzTF2ASxJYuJ5sk
|
39
wifipumpkin3/core/config/app/proxy.ini
Normal file
39
wifipumpkin3/core/config/app/proxy.ini
Normal file
@ -0,0 +1,39 @@
|
||||
[plugins]
|
||||
dnsspoof=false
|
||||
sslstrip=false
|
||||
jskeylogger=false
|
||||
stickycookie=false
|
||||
downloadspoof=false
|
||||
js_inject=false
|
||||
html_inject=false
|
||||
dump_post_data=true
|
||||
upsidedownternet=false
|
||||
beef=false
|
||||
replaceImages=false
|
||||
inverted_internet=false
|
||||
shakepage=false
|
||||
no-cache=false
|
||||
|
||||
[set_dnsspoof]
|
||||
domain_0={'another.com':'10.0.0.1'}
|
||||
domain_1={'teste.com':'10.0.0.1'}
|
||||
domain_2={'example.com':'10.0.0.1'}
|
||||
domain_3={'website.com':'10.0.0.1'}
|
||||
|
||||
[set_js_inject]
|
||||
url=http://example.com/foo.js
|
||||
|
||||
[set_replaceImages]
|
||||
path=docs/logo.png
|
||||
|
||||
[set_beef]
|
||||
hook=http://172.16.149.141:3000/hook.js
|
||||
|
||||
[set_html_inject]
|
||||
content_path=file.html
|
||||
|
||||
[set_downloadspoof]
|
||||
backdoorExePath=plugins/extension/tmp/exe/backdoor.exe
|
||||
backdoorPDFpath=plugins/extension/tmp/pdf/backdoor.pdf
|
||||
backdoorWORDpath=plugins/extension/tmp/doc/backdoor.doc
|
||||
backdoorXLSpath=plugins/extension/tmp/xls/backdoor.xls
|
9
wifipumpkin3/core/config/app/tcpproxy.ini
Normal file
9
wifipumpkin3/core/config/app/tcpproxy.ini
Normal file
@ -0,0 +1,9 @@
|
||||
[plugins]
|
||||
emails=false
|
||||
ftp=false
|
||||
hexdump=false
|
||||
imageCap=false
|
||||
httpCap=true
|
||||
summary=false
|
||||
kerberos=false
|
||||
NTLMSSP=false
|
@ -8,18 +8,18 @@ from logging import getLogger,ERROR
|
||||
# Refactor,set_monitor_mode,waiterSleepThread,
|
||||
# setup_logger,is_ascii,is_hexadecimal,exec_bash,del_item_folder
|
||||
# )
|
||||
import core.utility.constants as C
|
||||
from core.utility.collection import SettingsINI
|
||||
from core.utility.collection import SettingsINI as SuperSettings
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI as SuperSettings
|
||||
from collections import OrderedDict
|
||||
from functools import partial
|
||||
from core.utility.component import ComponentBlueprint
|
||||
from wifipumpkin3.core.utility.component import ComponentBlueprint
|
||||
from netaddr import EUI
|
||||
from core.utility.printer import display_messages
|
||||
from core.common.platforms import Linux as Refactor
|
||||
from core.common.platforms import setup_logger
|
||||
from core.widgets.default.logger_manager import StandardLog
|
||||
from core.widgets.default.logger_manager import LoggerManager
|
||||
from wifipumpkin3.core.utility.printer import display_messages
|
||||
from wifipumpkin3.core.common.platforms import Linux as Refactor
|
||||
from wifipumpkin3.core.common.platforms import setup_logger
|
||||
from wifipumpkin3.core.widgets.default.logger_manager import StandardLog
|
||||
from wifipumpkin3.core.widgets.default.logger_manager import LoggerManager
|
||||
|
||||
def deleteObject(obj):
|
||||
''' reclaim memory '''
|
25
wifipumpkin3/core/config/hostapd/hostapd+.conf
Normal file
25
wifipumpkin3/core/config/hostapd/hostapd+.conf
Normal file
@ -0,0 +1,25 @@
|
||||
|
||||
# driver supports nl80211
|
||||
driver=nl80211
|
||||
|
||||
# hostapd-mana support
|
||||
#enable_mana=1
|
||||
# Limit mana to responding only (0), or not (1)
|
||||
#mana_loud=0
|
||||
# Extend MAC ACLs to probe frames
|
||||
#mana_macacl=0
|
||||
# Put hostapd in white/black list mode
|
||||
#macaddr_acl=0
|
||||
|
||||
### advanced settings
|
||||
#ieee80211n=1 #Whether IEEE 802.11n (HT) is enabled
|
||||
#hw_mode=g # (a = 5G, b = 2.4G, g = 2.4G, ag = db)
|
||||
#ignore_broadcast_ssid=0 #AP will broadcast SSID
|
||||
#macaddr_acl=0 #not use MAC address allow/deny list
|
||||
#auth_algs=1 #Shared Key Authentication
|
||||
|
||||
### hostapd event logger configuration
|
||||
#logger_syslog=127
|
||||
#logger_syslog_level=2
|
||||
#logger_stdout=127
|
||||
#logger_stdout_level=2
|
4
wifipumpkin3/core/config/hostapd/hostapd.conf
Normal file
4
wifipumpkin3/core/config/hostapd/hostapd.conf
Normal file
@ -0,0 +1,4 @@
|
||||
interface=wlxc83a35cef744
|
||||
ssid=TESTEWdxsss
|
||||
channel=11
|
||||
bssid=BC:F6:85:03:36:5B
|
@ -1,6 +1,6 @@
|
||||
from core.config.globalimport import *
|
||||
from core.utility.component import ControllerBlueprint
|
||||
from core.servers.dhcp import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.utility.component import ControllerBlueprint
|
||||
from wifipumpkin3.core.servers.dhcp import *
|
||||
|
||||
class DHCPController(ControllerBlueprint):
|
||||
def __init__(self,parent):
|
@ -1,6 +1,6 @@
|
||||
from core.config.globalimport import *
|
||||
from core.utility.component import ControllerBlueprint
|
||||
from core.servers.dns import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.utility.component import ControllerBlueprint
|
||||
from wifipumpkin3.core.servers.dns import *
|
||||
|
||||
|
||||
class DNSController(ControllerBlueprint):
|
@ -1,7 +1,7 @@
|
||||
from core.config.globalimport import *
|
||||
from core.servers.mitm import *
|
||||
from core.common.uimodel import *
|
||||
from core.utility.component import ControllerBlueprint
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.servers.mitm import *
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from wifipumpkin3.core.utility.component import ControllerBlueprint
|
||||
|
||||
|
||||
class MitmController(PluginsUI,ControllerBlueprint):
|
@ -1,8 +1,8 @@
|
||||
from core.config.globalimport import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from collections import OrderedDict
|
||||
from core.common.uimodel import *
|
||||
from core.servers.proxy import *
|
||||
from core.utility.component import ControllerBlueprint
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from wifipumpkin3.core.servers.proxy import *
|
||||
from wifipumpkin3.core.utility.component import ControllerBlueprint
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
from core.config.globalimport import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from os import (
|
||||
system,path,getcwd,
|
||||
popen,listdir,mkdir,chown
|
||||
@ -6,13 +6,13 @@ from os import (
|
||||
from shutil import move
|
||||
from pwd import getpwnam
|
||||
from grp import getgrnam
|
||||
from core.wirelessmode import *
|
||||
from wifipumpkin3.core.wirelessmode import *
|
||||
from json import dumps,loads
|
||||
#from core.widgets.default.SessionConfig import *
|
||||
from datetime import datetime
|
||||
from core.common.uimodel import *
|
||||
from core.utility.collection import SettingsINI
|
||||
from core.wirelessmode import *
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
from wifipumpkin3.core.wirelessmode import *
|
||||
|
||||
class WirelessModeController(object):
|
||||
|
@ -5,9 +5,9 @@ import signal
|
||||
from multiprocessing import Process, Queue
|
||||
from subprocess import (Popen, STDOUT, PIPE)
|
||||
from PyQt5.QtCore import QThread, pyqtSignal, pyqtSlot, QProcess, QObject
|
||||
from core.packets.dhcpserver import DHCPProtocol
|
||||
from wifipumpkin3.core.packets.dhcpserver import DHCPProtocol
|
||||
# from core.servers.proxy.http.controller.handler import MasterHandler
|
||||
from core.utility.printer import display_messages,colors
|
||||
from wifipumpkin3.core.utility.printer import display_messages,colors
|
||||
|
||||
|
||||
class DHCPServerProcess(QThread):
|
@ -1,26 +1,26 @@
|
||||
from core.common.accesspoint import AccessPoint
|
||||
from wifipumpkin3.core.common.accesspoint import AccessPoint
|
||||
#from core.common.sniffing import SniffingPackets
|
||||
from core.common.terminal import ConsoleUI
|
||||
from core.widgets.window import ui_TableMonitorClient,ui_MonitorSniffer
|
||||
from core.utility.collection import SettingsINI
|
||||
import core.utility.constants as C
|
||||
from core.utility.printer import display_messages,setcolor
|
||||
from wifipumpkin3.core.common.terminal import ConsoleUI
|
||||
from wifipumpkin3.core.widgets.window import ui_TableMonitorClient,ui_MonitorSniffer
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
from wifipumpkin3.core.utility.printer import display_messages,setcolor
|
||||
from termcolor import colored
|
||||
import npyscreen, threading
|
||||
from tabulate import tabulate
|
||||
|
||||
from core.common.defaultwidget import *
|
||||
from core.config.globalimport import *
|
||||
from wifipumpkin3.core.common.defaultwidget import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
|
||||
from core.controllers.wirelessmodecontroller import *
|
||||
from core.controllers.dhcpcontroller import *
|
||||
from core.servers.dhcp.dhcp import *
|
||||
from core.controllers.proxycontroller import *
|
||||
from core.controllers.mitmcontroller import *
|
||||
from core.controllers.dnscontroller import *
|
||||
from wifipumpkin3.core.controllers.wirelessmodecontroller import *
|
||||
from wifipumpkin3.core.controllers.dhcpcontroller import *
|
||||
from wifipumpkin3.core.servers.dhcp.dhcp import *
|
||||
from wifipumpkin3.core.controllers.proxycontroller import *
|
||||
from wifipumpkin3.core.controllers.mitmcontroller import *
|
||||
from wifipumpkin3.core.controllers.dnscontroller import *
|
||||
|
||||
from modules import *
|
||||
from modules import module_list, all_modules
|
||||
from wifipumpkin3.modules import *
|
||||
from wifipumpkin3.modules import module_list, all_modules
|
||||
|
||||
approot = QtCore.QCoreApplication.instance()
|
||||
|
@ -34,7 +34,7 @@ class ThreadAttackStar(QThread):
|
||||
self.process = True
|
||||
|
||||
def run(self):
|
||||
print "Starting Thread:" + self.objectName()
|
||||
print("Starting Thread:" + self.objectName())
|
||||
self.count = 0
|
||||
while self.process:
|
||||
conf.checkIPaddr = False
|
||||
@ -49,7 +49,7 @@ class ThreadAttackStar(QThread):
|
||||
self.emit(pyqtSignal("Activated( QString )"),self.data.rstrip())
|
||||
self.emit(pyqtSignal("Activated( QString )"),"[ OFF ] Packet sent: " + str(self.count))
|
||||
def stop(self):
|
||||
print "Stop thread:" + self.objectName()
|
||||
print("Stop thread:" + self.objectName())
|
||||
self.process = False
|
||||
|
||||
|
||||
@ -130,7 +130,7 @@ class ThSpoofAttack(QThread):
|
||||
self.desc = ['Module DNS spoof']
|
||||
|
||||
def run(self):
|
||||
print 'Starting Thread:' + self.objectName()
|
||||
print('Starting Thread:' + self.objectName())
|
||||
self.sniff()
|
||||
|
||||
def ARP(self,target,gateway):
|
||||
@ -205,7 +205,7 @@ class ThSpoofAttack(QThread):
|
||||
system('iptables -t nat -{} PREROUTING -i {} -p tcp --dport 53 -j DNAT --to {}'.format(option,self.interface,self.redirect))
|
||||
|
||||
def stop(self):
|
||||
print 'Stop Thread:' + self.objectName()
|
||||
print('Stop Thread:' + self.objectName())
|
||||
self.finished = True
|
||||
self.setIptables(option='D')
|
||||
self.emit(pyqtSignal('Activated( QString )'),'finished')
|
@ -33,7 +33,7 @@ class ThreadScannerAP(QThread):
|
||||
self.stopped = False
|
||||
|
||||
def run(self):
|
||||
print 'Starting Thread:' + self.objectName()
|
||||
print('Starting Thread:' + self.objectName())
|
||||
self.LoopScanmer()
|
||||
|
||||
def scannerAP(self,q):
|
||||
@ -64,7 +64,7 @@ class ThreadScannerAP(QThread):
|
||||
|
||||
def stop(self):
|
||||
self.stopped = True
|
||||
print 'Stop thread:' + self.objectName()
|
||||
print('Stop thread:' + self.objectName())
|
||||
|
||||
|
||||
class ThreadDeauth(QThread):
|
||||
@ -77,7 +77,7 @@ class ThreadDeauth(QThread):
|
||||
self.pkts = []
|
||||
|
||||
def run(self):
|
||||
print 'Starting Thread:' + self.objectName()
|
||||
print('Starting Thread:' + self.objectName())
|
||||
self.status = True
|
||||
conf.iface = self.interface
|
||||
pkt1 = RadioTap()/Dot11(type=0,subtype=12,addr1=self.client,
|
||||
@ -91,7 +91,7 @@ class ThreadDeauth(QThread):
|
||||
|
||||
def stop(self):
|
||||
self.status = False
|
||||
print 'Stop thread:' + self.objectName()
|
||||
print('Stop thread:' + self.objectName())
|
||||
|
||||
|
||||
class ThreadProbeScan(QThread):
|
||||
@ -102,7 +102,7 @@ class ThreadProbeScan(QThread):
|
||||
self.captured = []
|
||||
|
||||
def run(self):
|
||||
print "Starting Thread:" + self.objectName()
|
||||
print("Starting Thread:" + self.objectName())
|
||||
self.ProbeResqest()
|
||||
def Startprobe(self,q):
|
||||
while not self.finished:
|
||||
@ -138,7 +138,7 @@ class ThreadProbeScan(QThread):
|
||||
self.emit(SIGNAL("Activated( QString )"),mac_address + '|'+ssid +'|'+devices)
|
||||
|
||||
def stop(self):
|
||||
print "Stop thread:" + self.objectName()
|
||||
print("Stop thread:" + self.objectName())
|
||||
self.finished = True
|
||||
self.captured = []
|
||||
self.sniff.join(0)
|
@ -1,10 +1,10 @@
|
||||
from re import *
|
||||
from netaddr import EUI
|
||||
from core.config.globalimport import *
|
||||
from core.common.uimodel import *
|
||||
from core.utility.component import ControllerBlueprint
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from wifipumpkin3.core.utility.component import ControllerBlueprint
|
||||
from isc_dhcp_leases.iscdhcpleases import IscDhcpLeases
|
||||
from core.controls.threads import ProcessThread
|
||||
from wifipumpkin3.core.controls.threads import ProcessThread
|
||||
|
||||
|
||||
class DHCPServers(QtCore.QObject,ComponentBlueprint):
|
@ -1,6 +1,6 @@
|
||||
from core.config.globalimport import *
|
||||
from core.packets.dhcpserver import DHCPThread
|
||||
from core.servers.dhcp.dhcp import DHCPServers
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.packets.dhcpserver import DHCPThread
|
||||
from wifipumpkin3.core.servers.dhcp.dhcp import DHCPServers
|
||||
|
||||
class PyDHCP(DHCPServers):
|
||||
Name = "Python DHCP Server"
|
@ -1,11 +1,11 @@
|
||||
import weakref
|
||||
from core.config.globalimport import *
|
||||
from core.common.uimodel import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
#from core.widgets.default.SessionConfig import SessionConfig
|
||||
from core.utility.component import ComponentBlueprint
|
||||
from core.controls.threads import (ProcessThread)
|
||||
from core.common.platforms import setup_logger
|
||||
from core.widgets.default.logger_manager import LoggerManager
|
||||
from wifipumpkin3.core.utility.component import ComponentBlueprint
|
||||
from wifipumpkin3.core.controls.threads import (ProcessThread)
|
||||
from wifipumpkin3.core.common.platforms import setup_logger
|
||||
from wifipumpkin3.core.widgets.default.logger_manager import LoggerManager
|
||||
|
||||
class DNSBase(QtCore.QObject,ComponentBlueprint):
|
||||
Name = "DNSBaseClass"
|
@ -1,6 +1,6 @@
|
||||
from core.config.globalimport import *
|
||||
from core.servers.dns.DNSBase import DNSBase
|
||||
from core.packets.dnsserver import DNSServerThread
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.servers.dns.DNSBase import DNSBase
|
||||
from wifipumpkin3.core.packets.dnsserver import DNSServerThread
|
||||
|
||||
class PyDNSServer(DNSBase):
|
||||
ID = "pydns_server"
|
@ -1,11 +1,11 @@
|
||||
from core.controls.threads import (
|
||||
from wifipumpkin3.core.controls.threads import (
|
||||
ProcessThread
|
||||
)
|
||||
from core.widgets.docks.dock import DockableWidget
|
||||
from core.controllers.wirelessmodecontroller import AccessPointSettings
|
||||
from core.common.uimodel import *
|
||||
from core.config.globalimport import *
|
||||
from core.widgets.default.logger_manager import LoggerManager
|
||||
from wifipumpkin3.core.widgets.docks.dock import DockableWidget
|
||||
from wifipumpkin3.core.controllers.wirelessmodecontroller import AccessPointSettings
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.widgets.default.logger_manager import LoggerManager
|
||||
|
||||
class Widget(Qt.QObject):
|
||||
def __init__(self,parent):
|
@ -1,8 +1,8 @@
|
||||
from core.servers.mitm.mitmmode import MitmMode
|
||||
from core.common.uimodel import *
|
||||
from core.config.globalimport import *
|
||||
from core.widgets.docks.dock import DockableWidget
|
||||
from core.controls.threads import ProcessThread
|
||||
from wifipumpkin3.core.servers.mitm.mitmmode import MitmMode
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.widgets.docks.dock import DockableWidget
|
||||
from wifipumpkin3.core.controls.threads import ProcessThread
|
||||
|
||||
|
||||
class NetCredential(DockableWidget):
|
@ -4,10 +4,10 @@ from threading import Thread
|
||||
import queue
|
||||
from scapy.all import *
|
||||
import logging
|
||||
from plugins.analyzers import *
|
||||
from core.utility.collection import SettingsINI
|
||||
import core.utility.constants as C
|
||||
from core.utility.printer import display_messages,colors
|
||||
from wifipumpkin3.plugins.analyzers import *
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
from wifipumpkin3.core.utility.printer import display_messages,colors
|
||||
|
||||
"""
|
||||
Description:
|
@ -1,5 +1,5 @@
|
||||
from core.common.uimodel import *
|
||||
from core.servers.proxy.proxymode import ProxyMode
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from wifipumpkin3.core.servers.proxy.proxymode import ProxyMode
|
||||
|
||||
class NoProxy(ProxyMode):
|
||||
Name="noproxy"
|
@ -1,11 +1,11 @@
|
||||
#from core.widgets.docks.dock import *
|
||||
from core.controls.threads import ProcessThread
|
||||
from core.controllers.wirelessmodecontroller import AccessPointSettings
|
||||
from core.common.uimodel import *
|
||||
from core.widgets.docks.dock import *
|
||||
from core.common.platforms import setup_logger
|
||||
from core.config.globalimport import *
|
||||
from core.widgets.default.logger_manager import LoggerManager
|
||||
from wifipumpkin3.core.controls.threads import ProcessThread
|
||||
from wifipumpkin3.core.controllers.wirelessmodecontroller import AccessPointSettings
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from wifipumpkin3.core.widgets.docks.dock import *
|
||||
from wifipumpkin3.core.common.platforms import setup_logger
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.widgets.default.logger_manager import LoggerManager
|
||||
|
||||
class Widget(Qt.QObject):
|
||||
def __init__(self):
|
@ -1,4 +1,4 @@
|
||||
from core.config.globalimport import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from collections import OrderedDict
|
||||
from functools import partial
|
||||
from threading import Thread
|
||||
@ -7,16 +7,16 @@ from scapy.all import *
|
||||
import logging
|
||||
#from plugins.analyzers import *
|
||||
|
||||
import core.utility.constants as C
|
||||
from core.common.platforms import setup_logger
|
||||
from core.servers.proxy.proxymode import *
|
||||
from core.utility.collection import SettingsINI
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
from wifipumpkin3.core.common.platforms import setup_logger
|
||||
from wifipumpkin3.core.servers.proxy.proxymode import *
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
# from core.widgets.docks.dockmonitor import (
|
||||
# dockTCPproxy,dockUrlMonitor
|
||||
# )
|
||||
from core.common.uimodel import *
|
||||
from plugins.analyzers import *
|
||||
from core.widgets.docks.dock import DockableWidget
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from wifipumpkin3.plugins.analyzers import *
|
||||
from wifipumpkin3.core.widgets.docks.dock import DockableWidget
|
||||
|
||||
class TCPProxyDock(DockableWidget):
|
||||
id = "TCPProxy"
|
@ -1,4 +1,4 @@
|
||||
from core.config.globalimport import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from collections import OrderedDict
|
||||
from functools import partial
|
||||
from threading import Thread
|
||||
@ -7,16 +7,16 @@ from scapy.all import *
|
||||
import logging
|
||||
#from plugins.analyzers import *
|
||||
|
||||
import core.utility.constants as C
|
||||
from core.common.platforms import setup_logger
|
||||
from core.servers.proxy.proxymode import *
|
||||
from core.utility.collection import SettingsINI
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
from wifipumpkin3.core.common.platforms import setup_logger
|
||||
from wifipumpkin3.core.servers.proxy.proxymode import *
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
# from core.widgets.docks.dockmonitor import (
|
||||
# dockTCPproxy,dockUrlMonitor
|
||||
# )
|
||||
from core.common.uimodel import *
|
||||
from plugins.analyzers import *
|
||||
from core.widgets.docks.dock import DockableWidget
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from wifipumpkin3.plugins.analyzers import *
|
||||
from wifipumpkin3.core.widgets.docks.dock import DockableWidget
|
||||
|
||||
class TCPProxyDock(DockableWidget):
|
||||
id = "TCPProxy"
|
@ -1,6 +1,6 @@
|
||||
from os import path
|
||||
from PyQt5.QtCore import QSettings
|
||||
import core.utility.constants as C
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
"""
|
||||
Description:
|
||||
This program is a module for wifi-pumpkin.py.
|
||||
@ -28,6 +28,7 @@ class SettingsINI(object):
|
||||
if path.isfile(filename):
|
||||
self.psettings = QSettings(filename,QSettings.IniFormat)
|
||||
|
||||
|
||||
@staticmethod
|
||||
def getInstance():
|
||||
if SettingsINI._instance is None:
|
@ -1,4 +1,4 @@
|
||||
from core.config.globalimport import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
|
||||
class ComponentBlueprint(object):
|
||||
Name = "GenericComponent"
|
@ -23,6 +23,8 @@ Copyright:
|
||||
|
||||
dir_of_executable = os.path.dirname(__file__)
|
||||
dir_path = os.getcwd()
|
||||
user_config_dir = os.path.expanduser("~")
|
||||
|
||||
# window constants
|
||||
GEOMETRYH = 820
|
||||
GEOMETRYW = 500
|
||||
@ -67,25 +69,26 @@ NETWORKMANAGER = '/etc/NetworkManager/NetworkManager.conf'
|
||||
IPFORWARD = '/proc/sys/net/ipv4/ip_forward'
|
||||
|
||||
#logging
|
||||
LOG_PUMPKINPROXY = 'logs/AccessPoint/pumpkin-proxy.log'
|
||||
LOG_URLCAPTURE = 'logs/AccessPoint/urls.log'
|
||||
LOG_CREDSCAPTURE = 'logs/AccessPoint/credentials.log'
|
||||
LOG_TCPPROXY = 'logs/AccessPoint/tcp-proxy.log'
|
||||
LOG_RESPONDER3 = 'logs/AccessPoint/responder3.log'
|
||||
LOG_BDFPROXY = 'logs/AccessPoint/bdfproxy.log'
|
||||
LOG_DNS2PROXY = 'logs/AccessPoint/dns2proxy.log'
|
||||
LOG_SSLSTRIP = 'logs/AccessPoint/injectionPage.log'
|
||||
LOG_DNSSPOOF = 'logs/AccessPoint/dnsspoof.log'
|
||||
LOG_PHISHING = 'logs/Phishing/requests.log'
|
||||
LOG_DHCP = 'logs/AccessPoint/dhcp.log'
|
||||
LOG_HOSTAPD = 'logs/AccessPoint/hostapd.log'
|
||||
LOG_ALL = 'logs/everything.log'
|
||||
LOG_PUMPKINPROXY = user_config_dir+ '/.config/wifipumpkin3/logs/AccessPoint/pumpkin-proxy.log'
|
||||
LOG_URLCAPTURE = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/urls.log'
|
||||
LOG_CREDSCAPTURE = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/credentials.log'
|
||||
LOG_TCPPROXY = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/tcp-proxy.log'
|
||||
LOG_RESPONDER3 = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/responder3.log'
|
||||
LOG_BDFPROXY = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/bdfproxy.log'
|
||||
LOG_DNS2PROXY = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/dns2proxy.log'
|
||||
LOG_SSLSTRIP = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/injectionPage.log'
|
||||
LOG_DNSSPOOF = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/dnsspoof.log'
|
||||
LOG_PHISHING = user_config_dir+'/.config/wifipumpkin3/logs/Phishing/requests.log'
|
||||
LOG_DHCP = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/dhcp.log'
|
||||
LOG_HOSTAPD = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/hostapd.log'
|
||||
LOG_ALL = user_config_dir+'/.config/wifipumpkin3/logs/everything.log'
|
||||
|
||||
|
||||
#APP SETTINGS
|
||||
CONFIG_INI = 'core/config/app/config.ini'
|
||||
CONFIG_TP_INI = 'core/config/app/tcpproxy.ini'
|
||||
CONFIG_PP_INI = 'core/config/app/proxy.ini'
|
||||
CONFIG_INI = user_config_dir+'/.config/wifipumpkin3/config/app/config.ini'
|
||||
CONFIG_TP_INI = user_config_dir + '/.config/wifipumpkin3/config/app/tcpproxy.ini'
|
||||
CONFIG_PP_INI = user_config_dir +'/.config/wifipumpkin3/config/app/proxy.ini'
|
||||
|
||||
TEMPLATES = 'templates/fakeupdate/Windows_Update/Settins_WinUpdate.html'
|
||||
TEMPLATE_PH = 'templates/phishing/custom/index.html'
|
||||
TEMPLATE_CLONE = 'templates/phishing/web_server/index.html'
|
@ -1,5 +1,5 @@
|
||||
from core.config.globalimport import *
|
||||
from core.common.uimodel import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
import weakref
|
||||
from loguru import logger
|
||||
import sys
|
@ -1,4 +1,4 @@
|
||||
from core.common.uimodel import *
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from PyQt5.QtCore import pyqtSignal
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
from core.config.globalimport import *
|
||||
from core.common.uimodel import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
import weakref
|
||||
|
||||
class SessionConfig(TabsWidget):
|
@ -1,11 +1,11 @@
|
||||
import urwid,time,threading
|
||||
from tabulate import tabulate
|
||||
from netaddr import EUI
|
||||
from core.utility.collection import SettingsINI
|
||||
import core.utility.constants as C
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
from beautifultable import BeautifulTable
|
||||
import fcntl, termios, struct, os
|
||||
from core.common.platforms import hexdump
|
||||
from wifipumpkin3.core.common.platforms import hexdump
|
||||
from multiprocessing import Process
|
||||
|
||||
palette = [
|
@ -1,4 +1,4 @@
|
||||
from core.config.globalimport import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
import weakref
|
||||
from os import (
|
||||
system, path, getcwd,
|
||||
@ -8,10 +8,10 @@ from pwd import getpwnam
|
||||
from grp import getgrnam
|
||||
from time import asctime
|
||||
from subprocess import check_output,Popen,PIPE,STDOUT,CalledProcessError,call
|
||||
from core.controls.threads import ProcessHostapd, ProcessThread
|
||||
from core.wirelessmode.wirelessmode import Mode
|
||||
from core.common.uimodel import *
|
||||
from core.utility.printer import display_messages
|
||||
from wifipumpkin3.core.controls.threads import ProcessHostapd, ProcessThread
|
||||
from wifipumpkin3.core.wirelessmode.wirelessmode import Mode
|
||||
from wifipumpkin3.core.common.uimodel import *
|
||||
from wifipumpkin3.core.utility.printer import display_messages
|
||||
|
||||
|
||||
class Static(Mode):
|
@ -1,11 +1,11 @@
|
||||
from core.config.globalimport import *
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from re import *
|
||||
from os import (
|
||||
system,path,getcwd,
|
||||
popen,listdir,mkdir,chown
|
||||
)
|
||||
from shutil import move
|
||||
from core.widgets.default.session_config import *
|
||||
from wifipumpkin3.core.widgets.default.session_config import *
|
||||
|
||||
|
||||
class Mode(Qt.QObject):
|
@ -2,7 +2,7 @@ import os
|
||||
import pkgutil
|
||||
import sys
|
||||
import importlib
|
||||
from core.utility.printer import display_messages
|
||||
from wifipumpkin3.core.utility.printer import display_messages
|
||||
|
||||
# https://stackoverflow.com/questions/3365740/how-to-import-all-submodules
|
||||
def import_submodules(package, recursive=True):
|
@ -1,11 +1,11 @@
|
||||
from core.common.terminal import ModuleUI
|
||||
from core.config.globalimport import *
|
||||
from core.utility.printer import display_messages,setcolor
|
||||
from wifipumpkin3.core.common.terminal import ModuleUI
|
||||
from wifipumpkin3.core.config.globalimport import *
|
||||
from wifipumpkin3.core.utility.printer import display_messages,setcolor
|
||||
from random import randrange
|
||||
import time,signal,sys
|
||||
from multiprocessing import Process
|
||||
from scapy.all import *
|
||||
from core.common.platforms import Linux
|
||||
from wifipumpkin3.core.common.platforms import Linux
|
||||
from tabulate import tabulate
|
||||
|
||||
PROBE_REQUEST_TYPE = 0
|
@ -2,9 +2,9 @@ from re import findall
|
||||
import logging
|
||||
from sys import stdout
|
||||
from scapy.all import hexdump
|
||||
from core.utility.collection import SettingsINI
|
||||
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||
from PyQt5.QtCore import pyqtSignal
|
||||
import core.utility.constants as C
|
||||
import wifipumpkin3.core.utility.constants as C
|
||||
|
||||
class PSniffer(object):
|
||||
''' plugins data sniffers'''
|
@ -1,5 +1,5 @@
|
||||
from scapy.all import *
|
||||
from plugins.analyzers.default import PSniffer
|
||||
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||
|
||||
class Stealing_emails(PSniffer):
|
||||
''' capture POP3,IMAP,SMTP '''
|
@ -1,5 +1,5 @@
|
||||
from scapy.all import *
|
||||
from plugins.analyzers.default import PSniffer
|
||||
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||
|
||||
class ftp(PSniffer):
|
||||
''' this script capture credentials of service ftp request HTTP '''
|
@ -1,5 +1,5 @@
|
||||
from scapy.all import *
|
||||
from plugins.analyzers.default import PSniffer
|
||||
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||
import sys
|
||||
from io import StringIO
|
||||
|
@ -1,6 +1,6 @@
|
||||
from scapy.all import *
|
||||
from scapy_http import http
|
||||
from plugins.analyzers.default import PSniffer
|
||||
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||
import re
|
||||
|
||||
"""
|
@ -1,6 +1,6 @@
|
||||
from random import randint
|
||||
from scapy.all import *
|
||||
from plugins.analyzers.default import PSniffer
|
||||
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||
from os.path import splitext
|
||||
from string import ascii_letters
|
||||
|
@ -1,5 +1,5 @@
|
||||
from scapy.all import *
|
||||
from plugins.analyzers.default import PSniffer
|
||||
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||
|
||||
class Kerberos(PSniffer):
|
||||
_activated = False
|
@ -1,5 +1,5 @@
|
||||
from scapy.all import *
|
||||
from plugins.analyzers.default import PSniffer
|
||||
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||
from dns import resolver
|
||||
|
||||
class Summary(PSniffer):
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user