/evillimiter

Tool that limits bandwidth of devices on the same network without access.

Primary LanguagePythonMIT LicenseMIT

Evil Limiter

License Badge Compatibility Maintenance HitCount Open Source Love

A tool to limit the bandwidth (upload/download) of devices connected to your network without physical or administrative access.
evillimiter employs ARP spoofing and traffic shaping to throttle the bandwidth of hosts on the network. This is explained in detail below.

Requirements

  • Linux distribution
  • Python 3 or greater

Possibly missing python packages will be installed during the installation process.

Installation

git clone https://github.com/bitbrute/evillimiter.git
cd evillimiter
sudo python3 setup.py install

Alternatively, you can download a desired version from the Release page.

Usage

Type evillimiter or python3 bin/evillimiter to run the tool.

evillimiter will try to resolve required information (network interface, netmask, gateway address, ...) on its own, automatically.

Command-Line Arguments

Argument Explanation
-h Displays help message listing all command-line arguments
-i [Interface Name] Specifies network interface (resolved if not specified)
-g [Gateway Address] Specifies gateway IP address (resolved if not specified)
-n [Netmask Address] Specifies netmask (resolved if not specified)
-f Flushes current iptables and tc configuration. Ensures that packets are dealt with correctly.
--colorless Disables colored output

evillimiter Commands

Command Explanation
scan Scans your network for online hosts. One of the first things to do after start.
hosts Displays all the hosts/devices previously scanned and basic information. Shows ID for each host that is required for interaction.
limit [ID1,ID2,...] [Rate] Limits bandwidth of host(s) associated to specified ID. Rate determines the internet speed.
Valid rates: bit, kbit, mbit, gbit, tbit
For example: limit 4,5,6 200kbit or limit all 1gbit
block [ID1,ID2,...] Blocks internet connection of host(s) associated to specified ID.
free [ID1,ID2,...] Unlimits/Unblocks host(s) associated to specified ID. Removes all further restrictions.
add [IP] (--mac [MAC]) Adds custom host to host list. MAC-Address will be resolved automatically or can be specified manually.
For example: add 192.168.178.24 or add 192.168.1.50 --mac 1c:fc:bc:2d:a6:37
clear Clears the terminal window.
?, help Displays command information similar to this one.

Restrictions

  • Limits IPv4 connctions only, since ARP spoofing requires the ARP packet that is only present on IPv4 networks.

Disclaimer

Evil Limiter is provided by bitbrute "as is" and "with all faults". The provider makes no representations or warranties of any kind concerning the safety, suitability, lack of viruses, inaccuracies, typographical errors, or other harmful components of this software. There are inherent dangers in the use of any software, and you are solely responsible for determining whether Evil Limiter is compatible with your equipment and other software installed on your equipment. You are also solely responsible for the protection of your equipment and backup of your data, and the provider will not be liable for any damages you may suffer in connection with using, modifying, or distributing this software.

License

Copyright (c) 2019 by bitbrute. Some rights reserved.
Evil Limiter is licensed under the MIT License as stated in the LICENSE file.