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 argparse
|
||||||
import sys
|
import sys
|
||||||
from PyQt5 import QtGui,QtCore
|
from PyQt5 import QtGui,QtCore
|
||||||
from core.main import PumpkinShell
|
from wifipumpkin3.core.main import PumpkinShell
|
||||||
from core.utility.printer import banner, setcolor
|
from wifipumpkin3.core.utility.printer import banner, setcolor
|
||||||
from core.packets.dhcpserver import IpAddressClass
|
from wifipumpkin3.core.packets.dhcpserver import IpAddressClass
|
||||||
from core.utility.collection import SettingsINI
|
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
|
|
||||||
_author = ('{}'.format(setcolor('@mh4x0f',color='yellow')))
|
_author = ('{}'.format(setcolor('@mh4x0f',color='yellow')))
|
||||||
_version = setcolor('0.1',color='yellow')
|
_version = setcolor('0.1',color='yellow')
|
||||||
__codename__ = setcolor('sab1no',color='red')
|
__codename__ = setcolor('sab1no',color='red')
|
||||||
banner(__codename__)
|
banner(__codename__)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
app = QtCore.QCoreApplication(sys.argv)
|
app = QtCore.QCoreApplication(sys.argv)
|
||||||
conf = SettingsINI(C.CONFIG_INI)
|
conf = SettingsINI(C.CONFIG_INI)
|
@ -1,18 +1,18 @@
|
|||||||
netifaces
|
netifaces==0.10.4
|
||||||
netaddr
|
netaddr==0.7.19
|
||||||
dhcplib
|
dhcplib==0.1.1
|
||||||
ipaddress
|
ipaddress==1.0.22
|
||||||
scapy_http
|
scapy_http==1.8.2
|
||||||
configparser
|
configparser==4.0.2
|
||||||
tabulate
|
tabulate==0.8.5
|
||||||
beautifultable
|
beautifultable==0.8.0
|
||||||
urwid==1.1.2
|
urwid==1.1.2
|
||||||
termcolor
|
termcolor==1.1.0
|
||||||
PyQt5==5.10.1
|
PyQt5==5.10.1
|
||||||
dnslib==0.9.7
|
dnslib==0.9.7
|
||||||
loguru
|
loguru==0.4.0
|
||||||
scapy
|
scapy==2.4.3
|
||||||
npyscreen
|
npyscreen==4.10.5
|
||||||
isc_dhcp_leases
|
isc_dhcp_leases==0.9.1
|
||||||
dnspython
|
dnspython==1.16.0
|
||||||
proxy.py
|
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
|
from PyQt5.QtCore import pyqtSignal,QObject
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
from core.common.platforms import Linux
|
from wifipumpkin3.core.common.platforms import Linux
|
||||||
from core.common.platforms import exec_bash
|
from wifipumpkin3.core.common.platforms import exec_bash
|
||||||
from core.controls.threads import ProcessHostapd
|
from wifipumpkin3.core.controls.threads import ProcessHostapd
|
||||||
from core.packets.dhcpserver import DHCPThread
|
from wifipumpkin3.core.packets.dhcpserver import DHCPThread
|
||||||
from core.utility.collection import SettingsINI
|
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||||
from core.utility.printer import display_messages
|
from wifipumpkin3.core.utility.printer import display_messages
|
||||||
import time
|
import time
|
||||||
|
|
||||||
|
|
@ -1,8 +1,6 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
|
from wifipumpkin3.core.widgets.default import *
|
||||||
|
|
||||||
from core.widgets.default import *
|
|
||||||
|
|
||||||
class DefaultWidget(Qt.QObject):
|
class DefaultWidget(Qt.QObject):
|
||||||
def __init__(self,parent = None,**kwargs):
|
def __init__(self,parent = None,**kwargs):
|
@ -12,7 +12,7 @@ from PyQt5 import QtGui
|
|||||||
import logging
|
import logging
|
||||||
import signal
|
import signal
|
||||||
import configparser
|
import configparser
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
from shlex import split
|
from shlex import split
|
||||||
from glob import glob
|
from glob import glob
|
||||||
import warnings
|
import warnings
|
@ -1,10 +1,10 @@
|
|||||||
import socket
|
import socket
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
from core.utility.printer import display_messages,colors
|
from wifipumpkin3.core.utility.printer import display_messages,colors
|
||||||
from PyQt5.QtCore import pyqtSignal,QObject,QThread
|
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.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):
|
# class PumpkinProxy(QThread):
|
@ -1,7 +1,7 @@
|
|||||||
from cmd import Cmd
|
from cmd import Cmd
|
||||||
from core.utility.printer import *
|
from wifipumpkin3.core.utility.printer import *
|
||||||
from core.utility.collection import SettingsINI
|
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
from os import popen
|
from os import popen
|
||||||
import sys
|
import sys
|
||||||
|
|
@ -1,8 +1,8 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
import weakref
|
import weakref
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
from core.utility.collection import SettingsINI
|
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||||
from core.common.platforms import Linux
|
from wifipumpkin3.core.common.platforms import Linux
|
||||||
|
|
||||||
class CoreSettings(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,
|
# Refactor,set_monitor_mode,waiterSleepThread,
|
||||||
# setup_logger,is_ascii,is_hexadecimal,exec_bash,del_item_folder
|
# setup_logger,is_ascii,is_hexadecimal,exec_bash,del_item_folder
|
||||||
# )
|
# )
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
from core.utility.collection import SettingsINI
|
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||||
from core.utility.collection import SettingsINI as SuperSettings
|
from wifipumpkin3.core.utility.collection import SettingsINI as SuperSettings
|
||||||
from collections import OrderedDict
|
from collections import OrderedDict
|
||||||
from functools import partial
|
from functools import partial
|
||||||
from core.utility.component import ComponentBlueprint
|
from wifipumpkin3.core.utility.component import ComponentBlueprint
|
||||||
from netaddr import EUI
|
from netaddr import EUI
|
||||||
from core.utility.printer import display_messages
|
from wifipumpkin3.core.utility.printer import display_messages
|
||||||
from core.common.platforms import Linux as Refactor
|
from wifipumpkin3.core.common.platforms import Linux as Refactor
|
||||||
from core.common.platforms import setup_logger
|
from wifipumpkin3.core.common.platforms import setup_logger
|
||||||
from core.widgets.default.logger_manager import StandardLog
|
from wifipumpkin3.core.widgets.default.logger_manager import StandardLog
|
||||||
from core.widgets.default.logger_manager import LoggerManager
|
from wifipumpkin3.core.widgets.default.logger_manager import LoggerManager
|
||||||
|
|
||||||
def deleteObject(obj):
|
def deleteObject(obj):
|
||||||
''' reclaim memory '''
|
''' 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 wifipumpkin3.core.config.globalimport import *
|
||||||
from core.utility.component import ControllerBlueprint
|
from wifipumpkin3.core.utility.component import ControllerBlueprint
|
||||||
from core.servers.dhcp import *
|
from wifipumpkin3.core.servers.dhcp import *
|
||||||
|
|
||||||
class DHCPController(ControllerBlueprint):
|
class DHCPController(ControllerBlueprint):
|
||||||
def __init__(self,parent):
|
def __init__(self,parent):
|
@ -1,6 +1,6 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.utility.component import ControllerBlueprint
|
from wifipumpkin3.core.utility.component import ControllerBlueprint
|
||||||
from core.servers.dns import *
|
from wifipumpkin3.core.servers.dns import *
|
||||||
|
|
||||||
|
|
||||||
class DNSController(ControllerBlueprint):
|
class DNSController(ControllerBlueprint):
|
@ -1,7 +1,7 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.servers.mitm import *
|
from wifipumpkin3.core.servers.mitm import *
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
from core.utility.component import ControllerBlueprint
|
from wifipumpkin3.core.utility.component import ControllerBlueprint
|
||||||
|
|
||||||
|
|
||||||
class MitmController(PluginsUI,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 collections import OrderedDict
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
from core.servers.proxy import *
|
from wifipumpkin3.core.servers.proxy import *
|
||||||
from core.utility.component import ControllerBlueprint
|
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 (
|
from os import (
|
||||||
system,path,getcwd,
|
system,path,getcwd,
|
||||||
popen,listdir,mkdir,chown
|
popen,listdir,mkdir,chown
|
||||||
@ -6,13 +6,13 @@ from os import (
|
|||||||
from shutil import move
|
from shutil import move
|
||||||
from pwd import getpwnam
|
from pwd import getpwnam
|
||||||
from grp import getgrnam
|
from grp import getgrnam
|
||||||
from core.wirelessmode import *
|
from wifipumpkin3.core.wirelessmode import *
|
||||||
from json import dumps,loads
|
from json import dumps,loads
|
||||||
#from core.widgets.default.SessionConfig import *
|
#from core.widgets.default.SessionConfig import *
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
from core.utility.collection import SettingsINI
|
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||||
from core.wirelessmode import *
|
from wifipumpkin3.core.wirelessmode import *
|
||||||
|
|
||||||
class WirelessModeController(object):
|
class WirelessModeController(object):
|
||||||
|
|
@ -5,9 +5,9 @@ import signal
|
|||||||
from multiprocessing import Process, Queue
|
from multiprocessing import Process, Queue
|
||||||
from subprocess import (Popen, STDOUT, PIPE)
|
from subprocess import (Popen, STDOUT, PIPE)
|
||||||
from PyQt5.QtCore import QThread, pyqtSignal, pyqtSlot, QProcess, QObject
|
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.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):
|
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.sniffing import SniffingPackets
|
||||||
from core.common.terminal import ConsoleUI
|
from wifipumpkin3.core.common.terminal import ConsoleUI
|
||||||
from core.widgets.window import ui_TableMonitorClient,ui_MonitorSniffer
|
from wifipumpkin3.core.widgets.window import ui_TableMonitorClient,ui_MonitorSniffer
|
||||||
from core.utility.collection import SettingsINI
|
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
from core.utility.printer import display_messages,setcolor
|
from wifipumpkin3.core.utility.printer import display_messages,setcolor
|
||||||
from termcolor import colored
|
from termcolor import colored
|
||||||
import npyscreen, threading
|
import npyscreen, threading
|
||||||
from tabulate import tabulate
|
from tabulate import tabulate
|
||||||
|
|
||||||
from core.common.defaultwidget import *
|
from wifipumpkin3.core.common.defaultwidget import *
|
||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
|
|
||||||
from core.controllers.wirelessmodecontroller import *
|
from wifipumpkin3.core.controllers.wirelessmodecontroller import *
|
||||||
from core.controllers.dhcpcontroller import *
|
from wifipumpkin3.core.controllers.dhcpcontroller import *
|
||||||
from core.servers.dhcp.dhcp import *
|
from wifipumpkin3.core.servers.dhcp.dhcp import *
|
||||||
from core.controllers.proxycontroller import *
|
from wifipumpkin3.core.controllers.proxycontroller import *
|
||||||
from core.controllers.mitmcontroller import *
|
from wifipumpkin3.core.controllers.mitmcontroller import *
|
||||||
from core.controllers.dnscontroller import *
|
from wifipumpkin3.core.controllers.dnscontroller import *
|
||||||
|
|
||||||
from modules import *
|
from wifipumpkin3.modules import *
|
||||||
from modules import module_list, all_modules
|
from wifipumpkin3.modules import module_list, all_modules
|
||||||
|
|
||||||
approot = QtCore.QCoreApplication.instance()
|
approot = QtCore.QCoreApplication.instance()
|
||||||
|
|
@ -34,7 +34,7 @@ class ThreadAttackStar(QThread):
|
|||||||
self.process = True
|
self.process = True
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
print "Starting Thread:" + self.objectName()
|
print("Starting Thread:" + self.objectName())
|
||||||
self.count = 0
|
self.count = 0
|
||||||
while self.process:
|
while self.process:
|
||||||
conf.checkIPaddr = False
|
conf.checkIPaddr = False
|
||||||
@ -49,7 +49,7 @@ class ThreadAttackStar(QThread):
|
|||||||
self.emit(pyqtSignal("Activated( QString )"),self.data.rstrip())
|
self.emit(pyqtSignal("Activated( QString )"),self.data.rstrip())
|
||||||
self.emit(pyqtSignal("Activated( QString )"),"[ OFF ] Packet sent: " + str(self.count))
|
self.emit(pyqtSignal("Activated( QString )"),"[ OFF ] Packet sent: " + str(self.count))
|
||||||
def stop(self):
|
def stop(self):
|
||||||
print "Stop thread:" + self.objectName()
|
print("Stop thread:" + self.objectName())
|
||||||
self.process = False
|
self.process = False
|
||||||
|
|
||||||
|
|
||||||
@ -130,7 +130,7 @@ class ThSpoofAttack(QThread):
|
|||||||
self.desc = ['Module DNS spoof']
|
self.desc = ['Module DNS spoof']
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
print 'Starting Thread:' + self.objectName()
|
print('Starting Thread:' + self.objectName())
|
||||||
self.sniff()
|
self.sniff()
|
||||||
|
|
||||||
def ARP(self,target,gateway):
|
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))
|
system('iptables -t nat -{} PREROUTING -i {} -p tcp --dport 53 -j DNAT --to {}'.format(option,self.interface,self.redirect))
|
||||||
|
|
||||||
def stop(self):
|
def stop(self):
|
||||||
print 'Stop Thread:' + self.objectName()
|
print('Stop Thread:' + self.objectName())
|
||||||
self.finished = True
|
self.finished = True
|
||||||
self.setIptables(option='D')
|
self.setIptables(option='D')
|
||||||
self.emit(pyqtSignal('Activated( QString )'),'finished')
|
self.emit(pyqtSignal('Activated( QString )'),'finished')
|
@ -33,7 +33,7 @@ class ThreadScannerAP(QThread):
|
|||||||
self.stopped = False
|
self.stopped = False
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
print 'Starting Thread:' + self.objectName()
|
print('Starting Thread:' + self.objectName())
|
||||||
self.LoopScanmer()
|
self.LoopScanmer()
|
||||||
|
|
||||||
def scannerAP(self,q):
|
def scannerAP(self,q):
|
||||||
@ -64,7 +64,7 @@ class ThreadScannerAP(QThread):
|
|||||||
|
|
||||||
def stop(self):
|
def stop(self):
|
||||||
self.stopped = True
|
self.stopped = True
|
||||||
print 'Stop thread:' + self.objectName()
|
print('Stop thread:' + self.objectName())
|
||||||
|
|
||||||
|
|
||||||
class ThreadDeauth(QThread):
|
class ThreadDeauth(QThread):
|
||||||
@ -77,7 +77,7 @@ class ThreadDeauth(QThread):
|
|||||||
self.pkts = []
|
self.pkts = []
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
print 'Starting Thread:' + self.objectName()
|
print('Starting Thread:' + self.objectName())
|
||||||
self.status = True
|
self.status = True
|
||||||
conf.iface = self.interface
|
conf.iface = self.interface
|
||||||
pkt1 = RadioTap()/Dot11(type=0,subtype=12,addr1=self.client,
|
pkt1 = RadioTap()/Dot11(type=0,subtype=12,addr1=self.client,
|
||||||
@ -91,7 +91,7 @@ class ThreadDeauth(QThread):
|
|||||||
|
|
||||||
def stop(self):
|
def stop(self):
|
||||||
self.status = False
|
self.status = False
|
||||||
print 'Stop thread:' + self.objectName()
|
print('Stop thread:' + self.objectName())
|
||||||
|
|
||||||
|
|
||||||
class ThreadProbeScan(QThread):
|
class ThreadProbeScan(QThread):
|
||||||
@ -102,7 +102,7 @@ class ThreadProbeScan(QThread):
|
|||||||
self.captured = []
|
self.captured = []
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
print "Starting Thread:" + self.objectName()
|
print("Starting Thread:" + self.objectName())
|
||||||
self.ProbeResqest()
|
self.ProbeResqest()
|
||||||
def Startprobe(self,q):
|
def Startprobe(self,q):
|
||||||
while not self.finished:
|
while not self.finished:
|
||||||
@ -138,7 +138,7 @@ class ThreadProbeScan(QThread):
|
|||||||
self.emit(SIGNAL("Activated( QString )"),mac_address + '|'+ssid +'|'+devices)
|
self.emit(SIGNAL("Activated( QString )"),mac_address + '|'+ssid +'|'+devices)
|
||||||
|
|
||||||
def stop(self):
|
def stop(self):
|
||||||
print "Stop thread:" + self.objectName()
|
print("Stop thread:" + self.objectName())
|
||||||
self.finished = True
|
self.finished = True
|
||||||
self.captured = []
|
self.captured = []
|
||||||
self.sniff.join(0)
|
self.sniff.join(0)
|
@ -1,10 +1,10 @@
|
|||||||
from re import *
|
from re import *
|
||||||
from netaddr import EUI
|
from netaddr import EUI
|
||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
from core.utility.component import ControllerBlueprint
|
from wifipumpkin3.core.utility.component import ControllerBlueprint
|
||||||
from isc_dhcp_leases.iscdhcpleases import IscDhcpLeases
|
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):
|
class DHCPServers(QtCore.QObject,ComponentBlueprint):
|
@ -1,6 +1,6 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.packets.dhcpserver import DHCPThread
|
from wifipumpkin3.core.packets.dhcpserver import DHCPThread
|
||||||
from core.servers.dhcp.dhcp import DHCPServers
|
from wifipumpkin3.core.servers.dhcp.dhcp import DHCPServers
|
||||||
|
|
||||||
class PyDHCP(DHCPServers):
|
class PyDHCP(DHCPServers):
|
||||||
Name = "Python DHCP Server"
|
Name = "Python DHCP Server"
|
@ -1,11 +1,11 @@
|
|||||||
import weakref
|
import weakref
|
||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
#from core.widgets.default.SessionConfig import SessionConfig
|
#from core.widgets.default.SessionConfig import SessionConfig
|
||||||
from core.utility.component import ComponentBlueprint
|
from wifipumpkin3.core.utility.component import ComponentBlueprint
|
||||||
from core.controls.threads import (ProcessThread)
|
from wifipumpkin3.core.controls.threads import (ProcessThread)
|
||||||
from core.common.platforms import setup_logger
|
from wifipumpkin3.core.common.platforms import setup_logger
|
||||||
from core.widgets.default.logger_manager import LoggerManager
|
from wifipumpkin3.core.widgets.default.logger_manager import LoggerManager
|
||||||
|
|
||||||
class DNSBase(QtCore.QObject,ComponentBlueprint):
|
class DNSBase(QtCore.QObject,ComponentBlueprint):
|
||||||
Name = "DNSBaseClass"
|
Name = "DNSBaseClass"
|
@ -1,6 +1,6 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.servers.dns.DNSBase import DNSBase
|
from wifipumpkin3.core.servers.dns.DNSBase import DNSBase
|
||||||
from core.packets.dnsserver import DNSServerThread
|
from wifipumpkin3.core.packets.dnsserver import DNSServerThread
|
||||||
|
|
||||||
class PyDNSServer(DNSBase):
|
class PyDNSServer(DNSBase):
|
||||||
ID = "pydns_server"
|
ID = "pydns_server"
|
@ -1,11 +1,11 @@
|
|||||||
from core.controls.threads import (
|
from wifipumpkin3.core.controls.threads import (
|
||||||
ProcessThread
|
ProcessThread
|
||||||
)
|
)
|
||||||
from core.widgets.docks.dock import DockableWidget
|
from wifipumpkin3.core.widgets.docks.dock import DockableWidget
|
||||||
from core.controllers.wirelessmodecontroller import AccessPointSettings
|
from wifipumpkin3.core.controllers.wirelessmodecontroller import AccessPointSettings
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.widgets.default.logger_manager import LoggerManager
|
from wifipumpkin3.core.widgets.default.logger_manager import LoggerManager
|
||||||
|
|
||||||
class Widget(Qt.QObject):
|
class Widget(Qt.QObject):
|
||||||
def __init__(self,parent):
|
def __init__(self,parent):
|
@ -1,8 +1,8 @@
|
|||||||
from core.servers.mitm.mitmmode import MitmMode
|
from wifipumpkin3.core.servers.mitm.mitmmode import MitmMode
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.widgets.docks.dock import DockableWidget
|
from wifipumpkin3.core.widgets.docks.dock import DockableWidget
|
||||||
from core.controls.threads import ProcessThread
|
from wifipumpkin3.core.controls.threads import ProcessThread
|
||||||
|
|
||||||
|
|
||||||
class NetCredential(DockableWidget):
|
class NetCredential(DockableWidget):
|
@ -4,10 +4,10 @@ from threading import Thread
|
|||||||
import queue
|
import queue
|
||||||
from scapy.all import *
|
from scapy.all import *
|
||||||
import logging
|
import logging
|
||||||
from plugins.analyzers import *
|
from wifipumpkin3.plugins.analyzers import *
|
||||||
from core.utility.collection import SettingsINI
|
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
from core.utility.printer import display_messages,colors
|
from wifipumpkin3.core.utility.printer import display_messages,colors
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Description:
|
Description:
|
@ -1,5 +1,5 @@
|
|||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
from core.servers.proxy.proxymode import ProxyMode
|
from wifipumpkin3.core.servers.proxy.proxymode import ProxyMode
|
||||||
|
|
||||||
class NoProxy(ProxyMode):
|
class NoProxy(ProxyMode):
|
||||||
Name="noproxy"
|
Name="noproxy"
|
@ -1,11 +1,11 @@
|
|||||||
#from core.widgets.docks.dock import *
|
#from core.widgets.docks.dock import *
|
||||||
from core.controls.threads import ProcessThread
|
from wifipumpkin3.core.controls.threads import ProcessThread
|
||||||
from core.controllers.wirelessmodecontroller import AccessPointSettings
|
from wifipumpkin3.core.controllers.wirelessmodecontroller import AccessPointSettings
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
from core.widgets.docks.dock import *
|
from wifipumpkin3.core.widgets.docks.dock import *
|
||||||
from core.common.platforms import setup_logger
|
from wifipumpkin3.core.common.platforms import setup_logger
|
||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.widgets.default.logger_manager import LoggerManager
|
from wifipumpkin3.core.widgets.default.logger_manager import LoggerManager
|
||||||
|
|
||||||
class Widget(Qt.QObject):
|
class Widget(Qt.QObject):
|
||||||
def __init__(self):
|
def __init__(self):
|
@ -1,4 +1,4 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from collections import OrderedDict
|
from collections import OrderedDict
|
||||||
from functools import partial
|
from functools import partial
|
||||||
from threading import Thread
|
from threading import Thread
|
||||||
@ -7,16 +7,16 @@ from scapy.all import *
|
|||||||
import logging
|
import logging
|
||||||
#from plugins.analyzers import *
|
#from plugins.analyzers import *
|
||||||
|
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
from core.common.platforms import setup_logger
|
from wifipumpkin3.core.common.platforms import setup_logger
|
||||||
from core.servers.proxy.proxymode import *
|
from wifipumpkin3.core.servers.proxy.proxymode import *
|
||||||
from core.utility.collection import SettingsINI
|
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||||
# from core.widgets.docks.dockmonitor import (
|
# from core.widgets.docks.dockmonitor import (
|
||||||
# dockTCPproxy,dockUrlMonitor
|
# dockTCPproxy,dockUrlMonitor
|
||||||
# )
|
# )
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
from plugins.analyzers import *
|
from wifipumpkin3.plugins.analyzers import *
|
||||||
from core.widgets.docks.dock import DockableWidget
|
from wifipumpkin3.core.widgets.docks.dock import DockableWidget
|
||||||
|
|
||||||
class TCPProxyDock(DockableWidget):
|
class TCPProxyDock(DockableWidget):
|
||||||
id = "TCPProxy"
|
id = "TCPProxy"
|
@ -1,4 +1,4 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from collections import OrderedDict
|
from collections import OrderedDict
|
||||||
from functools import partial
|
from functools import partial
|
||||||
from threading import Thread
|
from threading import Thread
|
||||||
@ -7,16 +7,16 @@ from scapy.all import *
|
|||||||
import logging
|
import logging
|
||||||
#from plugins.analyzers import *
|
#from plugins.analyzers import *
|
||||||
|
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
from core.common.platforms import setup_logger
|
from wifipumpkin3.core.common.platforms import setup_logger
|
||||||
from core.servers.proxy.proxymode import *
|
from wifipumpkin3.core.servers.proxy.proxymode import *
|
||||||
from core.utility.collection import SettingsINI
|
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||||
# from core.widgets.docks.dockmonitor import (
|
# from core.widgets.docks.dockmonitor import (
|
||||||
# dockTCPproxy,dockUrlMonitor
|
# dockTCPproxy,dockUrlMonitor
|
||||||
# )
|
# )
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
from plugins.analyzers import *
|
from wifipumpkin3.plugins.analyzers import *
|
||||||
from core.widgets.docks.dock import DockableWidget
|
from wifipumpkin3.core.widgets.docks.dock import DockableWidget
|
||||||
|
|
||||||
class TCPProxyDock(DockableWidget):
|
class TCPProxyDock(DockableWidget):
|
||||||
id = "TCPProxy"
|
id = "TCPProxy"
|
@ -1,6 +1,6 @@
|
|||||||
from os import path
|
from os import path
|
||||||
from PyQt5.QtCore import QSettings
|
from PyQt5.QtCore import QSettings
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
"""
|
"""
|
||||||
Description:
|
Description:
|
||||||
This program is a module for wifi-pumpkin.py.
|
This program is a module for wifi-pumpkin.py.
|
||||||
@ -28,6 +28,7 @@ class SettingsINI(object):
|
|||||||
if path.isfile(filename):
|
if path.isfile(filename):
|
||||||
self.psettings = QSettings(filename,QSettings.IniFormat)
|
self.psettings = QSettings(filename,QSettings.IniFormat)
|
||||||
|
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def getInstance():
|
def getInstance():
|
||||||
if SettingsINI._instance is None:
|
if SettingsINI._instance is None:
|
@ -1,4 +1,4 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
|
|
||||||
class ComponentBlueprint(object):
|
class ComponentBlueprint(object):
|
||||||
Name = "GenericComponent"
|
Name = "GenericComponent"
|
@ -23,6 +23,8 @@ Copyright:
|
|||||||
|
|
||||||
dir_of_executable = os.path.dirname(__file__)
|
dir_of_executable = os.path.dirname(__file__)
|
||||||
dir_path = os.getcwd()
|
dir_path = os.getcwd()
|
||||||
|
user_config_dir = os.path.expanduser("~")
|
||||||
|
|
||||||
# window constants
|
# window constants
|
||||||
GEOMETRYH = 820
|
GEOMETRYH = 820
|
||||||
GEOMETRYW = 500
|
GEOMETRYW = 500
|
||||||
@ -67,25 +69,26 @@ NETWORKMANAGER = '/etc/NetworkManager/NetworkManager.conf'
|
|||||||
IPFORWARD = '/proc/sys/net/ipv4/ip_forward'
|
IPFORWARD = '/proc/sys/net/ipv4/ip_forward'
|
||||||
|
|
||||||
#logging
|
#logging
|
||||||
LOG_PUMPKINPROXY = 'logs/AccessPoint/pumpkin-proxy.log'
|
LOG_PUMPKINPROXY = user_config_dir+ '/.config/wifipumpkin3/logs/AccessPoint/pumpkin-proxy.log'
|
||||||
LOG_URLCAPTURE = 'logs/AccessPoint/urls.log'
|
LOG_URLCAPTURE = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/urls.log'
|
||||||
LOG_CREDSCAPTURE = 'logs/AccessPoint/credentials.log'
|
LOG_CREDSCAPTURE = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/credentials.log'
|
||||||
LOG_TCPPROXY = 'logs/AccessPoint/tcp-proxy.log'
|
LOG_TCPPROXY = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/tcp-proxy.log'
|
||||||
LOG_RESPONDER3 = 'logs/AccessPoint/responder3.log'
|
LOG_RESPONDER3 = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/responder3.log'
|
||||||
LOG_BDFPROXY = 'logs/AccessPoint/bdfproxy.log'
|
LOG_BDFPROXY = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/bdfproxy.log'
|
||||||
LOG_DNS2PROXY = 'logs/AccessPoint/dns2proxy.log'
|
LOG_DNS2PROXY = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/dns2proxy.log'
|
||||||
LOG_SSLSTRIP = 'logs/AccessPoint/injectionPage.log'
|
LOG_SSLSTRIP = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/injectionPage.log'
|
||||||
LOG_DNSSPOOF = 'logs/AccessPoint/dnsspoof.log'
|
LOG_DNSSPOOF = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/dnsspoof.log'
|
||||||
LOG_PHISHING = 'logs/Phishing/requests.log'
|
LOG_PHISHING = user_config_dir+'/.config/wifipumpkin3/logs/Phishing/requests.log'
|
||||||
LOG_DHCP = 'logs/AccessPoint/dhcp.log'
|
LOG_DHCP = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/dhcp.log'
|
||||||
LOG_HOSTAPD = 'logs/AccessPoint/hostapd.log'
|
LOG_HOSTAPD = user_config_dir+'/.config/wifipumpkin3/logs/AccessPoint/hostapd.log'
|
||||||
LOG_ALL = 'logs/everything.log'
|
LOG_ALL = user_config_dir+'/.config/wifipumpkin3/logs/everything.log'
|
||||||
|
|
||||||
|
|
||||||
#APP SETTINGS
|
#APP SETTINGS
|
||||||
CONFIG_INI = 'core/config/app/config.ini'
|
CONFIG_INI = user_config_dir+'/.config/wifipumpkin3/config/app/config.ini'
|
||||||
CONFIG_TP_INI = 'core/config/app/tcpproxy.ini'
|
CONFIG_TP_INI = user_config_dir + '/.config/wifipumpkin3/config/app/tcpproxy.ini'
|
||||||
CONFIG_PP_INI = 'core/config/app/proxy.ini'
|
CONFIG_PP_INI = user_config_dir +'/.config/wifipumpkin3/config/app/proxy.ini'
|
||||||
|
|
||||||
TEMPLATES = 'templates/fakeupdate/Windows_Update/Settins_WinUpdate.html'
|
TEMPLATES = 'templates/fakeupdate/Windows_Update/Settins_WinUpdate.html'
|
||||||
TEMPLATE_PH = 'templates/phishing/custom/index.html'
|
TEMPLATE_PH = 'templates/phishing/custom/index.html'
|
||||||
TEMPLATE_CLONE = 'templates/phishing/web_server/index.html'
|
TEMPLATE_CLONE = 'templates/phishing/web_server/index.html'
|
@ -1,5 +1,5 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
import weakref
|
import weakref
|
||||||
from loguru import logger
|
from loguru import logger
|
||||||
import sys
|
import sys
|
@ -1,4 +1,4 @@
|
|||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
from PyQt5.QtCore import pyqtSignal
|
from PyQt5.QtCore import pyqtSignal
|
||||||
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
import weakref
|
import weakref
|
||||||
|
|
||||||
class SessionConfig(TabsWidget):
|
class SessionConfig(TabsWidget):
|
@ -1,11 +1,11 @@
|
|||||||
import urwid,time,threading
|
import urwid,time,threading
|
||||||
from tabulate import tabulate
|
from tabulate import tabulate
|
||||||
from netaddr import EUI
|
from netaddr import EUI
|
||||||
from core.utility.collection import SettingsINI
|
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
from beautifultable import BeautifulTable
|
from beautifultable import BeautifulTable
|
||||||
import fcntl, termios, struct, os
|
import fcntl, termios, struct, os
|
||||||
from core.common.platforms import hexdump
|
from wifipumpkin3.core.common.platforms import hexdump
|
||||||
from multiprocessing import Process
|
from multiprocessing import Process
|
||||||
|
|
||||||
palette = [
|
palette = [
|
@ -1,4 +1,4 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
import weakref
|
import weakref
|
||||||
from os import (
|
from os import (
|
||||||
system, path, getcwd,
|
system, path, getcwd,
|
||||||
@ -8,10 +8,10 @@ from pwd import getpwnam
|
|||||||
from grp import getgrnam
|
from grp import getgrnam
|
||||||
from time import asctime
|
from time import asctime
|
||||||
from subprocess import check_output,Popen,PIPE,STDOUT,CalledProcessError,call
|
from subprocess import check_output,Popen,PIPE,STDOUT,CalledProcessError,call
|
||||||
from core.controls.threads import ProcessHostapd, ProcessThread
|
from wifipumpkin3.core.controls.threads import ProcessHostapd, ProcessThread
|
||||||
from core.wirelessmode.wirelessmode import Mode
|
from wifipumpkin3.core.wirelessmode.wirelessmode import Mode
|
||||||
from core.common.uimodel import *
|
from wifipumpkin3.core.common.uimodel import *
|
||||||
from core.utility.printer import display_messages
|
from wifipumpkin3.core.utility.printer import display_messages
|
||||||
|
|
||||||
|
|
||||||
class Static(Mode):
|
class Static(Mode):
|
@ -1,11 +1,11 @@
|
|||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from re import *
|
from re import *
|
||||||
from os import (
|
from os import (
|
||||||
system,path,getcwd,
|
system,path,getcwd,
|
||||||
popen,listdir,mkdir,chown
|
popen,listdir,mkdir,chown
|
||||||
)
|
)
|
||||||
from shutil import move
|
from shutil import move
|
||||||
from core.widgets.default.session_config import *
|
from wifipumpkin3.core.widgets.default.session_config import *
|
||||||
|
|
||||||
|
|
||||||
class Mode(Qt.QObject):
|
class Mode(Qt.QObject):
|
@ -2,7 +2,7 @@ import os
|
|||||||
import pkgutil
|
import pkgutil
|
||||||
import sys
|
import sys
|
||||||
import importlib
|
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
|
# https://stackoverflow.com/questions/3365740/how-to-import-all-submodules
|
||||||
def import_submodules(package, recursive=True):
|
def import_submodules(package, recursive=True):
|
@ -1,11 +1,11 @@
|
|||||||
from core.common.terminal import ModuleUI
|
from wifipumpkin3.core.common.terminal import ModuleUI
|
||||||
from core.config.globalimport import *
|
from wifipumpkin3.core.config.globalimport import *
|
||||||
from core.utility.printer import display_messages,setcolor
|
from wifipumpkin3.core.utility.printer import display_messages,setcolor
|
||||||
from random import randrange
|
from random import randrange
|
||||||
import time,signal,sys
|
import time,signal,sys
|
||||||
from multiprocessing import Process
|
from multiprocessing import Process
|
||||||
from scapy.all import *
|
from scapy.all import *
|
||||||
from core.common.platforms import Linux
|
from wifipumpkin3.core.common.platforms import Linux
|
||||||
from tabulate import tabulate
|
from tabulate import tabulate
|
||||||
|
|
||||||
PROBE_REQUEST_TYPE = 0
|
PROBE_REQUEST_TYPE = 0
|
@ -2,9 +2,9 @@ from re import findall
|
|||||||
import logging
|
import logging
|
||||||
from sys import stdout
|
from sys import stdout
|
||||||
from scapy.all import hexdump
|
from scapy.all import hexdump
|
||||||
from core.utility.collection import SettingsINI
|
from wifipumpkin3.core.utility.collection import SettingsINI
|
||||||
from PyQt5.QtCore import pyqtSignal
|
from PyQt5.QtCore import pyqtSignal
|
||||||
import core.utility.constants as C
|
import wifipumpkin3.core.utility.constants as C
|
||||||
|
|
||||||
class PSniffer(object):
|
class PSniffer(object):
|
||||||
''' plugins data sniffers'''
|
''' plugins data sniffers'''
|
@ -1,5 +1,5 @@
|
|||||||
from scapy.all import *
|
from scapy.all import *
|
||||||
from plugins.analyzers.default import PSniffer
|
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||||
|
|
||||||
class Stealing_emails(PSniffer):
|
class Stealing_emails(PSniffer):
|
||||||
''' capture POP3,IMAP,SMTP '''
|
''' capture POP3,IMAP,SMTP '''
|
@ -1,5 +1,5 @@
|
|||||||
from scapy.all import *
|
from scapy.all import *
|
||||||
from plugins.analyzers.default import PSniffer
|
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||||
|
|
||||||
class ftp(PSniffer):
|
class ftp(PSniffer):
|
||||||
''' this script capture credentials of service ftp request HTTP '''
|
''' this script capture credentials of service ftp request HTTP '''
|
@ -1,5 +1,5 @@
|
|||||||
from scapy.all import *
|
from scapy.all import *
|
||||||
from plugins.analyzers.default import PSniffer
|
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||||
import sys
|
import sys
|
||||||
from io import StringIO
|
from io import StringIO
|
||||||
|
|
@ -1,6 +1,6 @@
|
|||||||
from scapy.all import *
|
from scapy.all import *
|
||||||
from scapy_http import http
|
from scapy_http import http
|
||||||
from plugins.analyzers.default import PSniffer
|
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||||
import re
|
import re
|
||||||
|
|
||||||
"""
|
"""
|
@ -1,6 +1,6 @@
|
|||||||
from random import randint
|
from random import randint
|
||||||
from scapy.all import *
|
from scapy.all import *
|
||||||
from plugins.analyzers.default import PSniffer
|
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||||
from os.path import splitext
|
from os.path import splitext
|
||||||
from string import ascii_letters
|
from string import ascii_letters
|
||||||
|
|
@ -1,5 +1,5 @@
|
|||||||
from scapy.all import *
|
from scapy.all import *
|
||||||
from plugins.analyzers.default import PSniffer
|
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||||
|
|
||||||
class Kerberos(PSniffer):
|
class Kerberos(PSniffer):
|
||||||
_activated = False
|
_activated = False
|
@ -1,5 +1,5 @@
|
|||||||
from scapy.all import *
|
from scapy.all import *
|
||||||
from plugins.analyzers.default import PSniffer
|
from wifipumpkin3.plugins.analyzers.default import PSniffer
|
||||||
from dns import resolver
|
from dns import resolver
|
||||||
|
|
||||||
class Summary(PSniffer):
|
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