Skip to main content

Local network clients scanner with deauth feature

Project description

clients-scanner

Local network clients scanner with deauth feature

Info

  • while creating app I was inspired by Android Fing application
  • application shows local network devices
  • discovered devices are stored in clients.json file under home directory
  • application allows to perform deauthentication(disconnecting devices connected over WiFi)
  • deauthentication bases on: https://github.com/roglew/wifikill
  • icons by Icons8: https://icons8.com/
  • sounds comes from: https://mixkit.co/

Install

.. code-block:: python

pip install clients-scanner

or

.. code-block:: bash

pip install git+https://github.com/streanger/clients-scanner.git

Important: scapy requires Npcap (https://npcap.com/#download) or Winpcap (https://www.winpcap.org/install/) on Windows and libpcap on Linux. Please install needed package manually

Windows:

.. code-block:: bash

# Npcap -> https://npcap.com/#download
# Winpcap -> https://www.winpcap.org/install/
# or Npcap included in nmap using command:
choco install nmap -y

Linux

.. code-block:: bash

sudo apt-get install libpcap-dev

Important: you may need to run script as sudo under Linux to work properly

Usage

Main scanner gui

.. code-block:: python

# from Python
from clients_scanner import scanner
scanner()

.. code-block:: bash

# from command-line
scanner

ScapyScanner

.. code-block:: python

from clients_scanner import ScapyScanner
scapy_scanner = ScapyScanner()

# get clients directly
clients = scapy_scanner.get_clients('192.168.0.1/24', timeout=2)
for (IP, mac) in clients:
    print(IP, mac)

# get enriched clients data from queue
scapy_scanner.run()
while True:
    item = scapy_scanner.clients_queue.get()
    print(item)
    # Client(mac='XXXX', ip='XXXX', bssid='XXXX', ssid='XXXX', time=XXXX)

Deauthenticator

.. code-block:: python

from clients_scanner import Deauthenticator
deauth = Deauthenticator(gateway_ip='192.168.0.1', gateway_mac='aa:bb:cc:dd:ee:ff')
deauth.run()
victim_ip = '192.168.0.123'
victim_mac = 'aa:bb:cc:dd:ee:ff'
status = False
deauth.deauth_queue.put((victim_mac, victim_ip, status))

Example view

.. image:: https://raw.githubusercontent.com/streanger/clients-scanner/master/images/scanner.png

Changelog

  • v. 0.1.2

    • reshaped gui
    • night mode
    • scan on/off mode
    • debug mode
    • "removing clients" feature
    • scrollable area
    • more friendly sound
    • config files in user home directory
  • v. 0.1.0 - 0.1.1

    • gui with limited rows number
    • deauth feature

Issues

If you encounter anny issue, error, bug or you want to enchant project, please describe it in issues section <https://github.com/streanger/clients-scanner/issues>_

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

clients_scanner-0.1.2-py2.py3-none-any.whl (219.8 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page