
EvilLimiter Next Generation : surveiller, analyser et limiter la bande passante

Un outil pour surveiller, analyser et limiter la bande passante (envoi/réception) des appareils sur votre réseau local sans accès physique ou administratif.
evillimiter-ng utilise l'ARP spoofing et le traffic shaping pour limiter la bande passante des hôtes sur le réseau.
Nouveau dans la version 3.0 : Utilisez le code comme une bibliothèque au lieu d'une CLI
Les éventuels paquets Python manquants seront installés lors du processus d'installation.
pip install evillimiter-ng
En utilisant l'AUR, le paquet peut être installé manuellement :
git clone https://aur.archlinux.org/evillimiter-ng.git
cd evillimiter-ng
makepkg -si
Ou en utilisant des assistants AUR :
# En utilisant KPA (https://github.com/KevinCrrl/kpa)
kpa Ins evillimiter-ng
# Ou en utilisant yay (https://github.com/Jguer/yay)
yay -S evillimiter-ng
Apprenez à utiliser l'API de la bibliothèque pour vos propres projets, écrivez moins de code, tirez parti de l'architecture basée sur des listes d'IP avec des identifiants assignés, et découvrez d'autres utilisations du code au-delà du programme en terminal : Documentation de la bibliothèque
Après l'installation, vous pouvez commencer à utiliser l'outil avec le flux de travail de base suivant.
evillimiter-ng -i wlan0
scan
limit 3 200kbit
# Scanne le réseau, liste les hôtes, bloque tout le monde pendant 20 secondes, puis restaure la connexion.
echo "scan && hosts && block all && sleep 20 && free all && exit" | evillimiter-ng
# Scanne le réseau et enregistre les résultats dans un fichier JSON encodé en base64
scan && export-json my_network.json
Avec cela, vous pouvez restaurer ces résultats sans un nouveau scan dans une future session :
import-json my_network.json
🛑 AVERTISSEMENT DE SÉCURITÉ CRITIQUE
Le Base64 n'est PAS du chiffrement (comme PGP). Il ne fait qu'obfusquer les données sensibles (IP locales, adresses MAC) pour qu'elles ne soient pas visibles à l'œil nu. N'importe quel utilisateur ou programme peut facilement décoder ce fichier.
- Permissions : Le fichier est protégé en lecture et en écriture (root uniquement) pour éviter toute corruption.
- Risque : Même si un utilisateur malveillant obtient un accès root, il ne peut pas déchiffrer ce qui n'a jamais été chiffré, mais il peut lire, corrompre ou détruire les informations. Ne comptez pas sur ce fichier pour la confidentialité.
evillimiter-ngVous pouvez utiliser la commande -h pour voir le menu d'aide général, de plus, chaque commande dispose d'un sous-menu généré par argparse, vous pouvez consulter l'aide de celles-ci en tapant :
>>> <COMMAND_NAME> -h
Par exemple :
>>> scan -h
usage: scan [-h] [-r RANGE] [-i INTENSITY]
options:
-h, --help show this help message and exit
-r, --range RANGE
-i, --intensity INTENSITY
# Autre exemple :
>>> watch --help
usage: watch [-h] {add,remove,set} ...
positional arguments:
{add,remove,set}
add Adds host to the reconnection watchlist. e.g.: watch add 3,4
remove Removes host from the reconnection watchlist. e.g.: watch remove all
set Changes reconnect watch settings. e.g.: watch set interval 120 watch set intensity 1
options:
-h, --help show this help message and exit
Ce tableau présente toutes les commandes disponibles :
Veuillez lire l'avertissement légal complet ici :
Copyright (c) 2026 par KevinCrrl.
Sous licence GPL-2.0-only License.
Pour une liste détaillée des auteurs originaux, des dépendances et de leurs licences respectives, consultez le fichier CREDITS.
| Argument | Explication |
|---|
-h | Affiche le message d'aide listant tous les arguments de ligne de commande |
-s | Active un mode shell pour taper des commandes et masque les bannières et éléments visuels |
-i [Interface Name] | Spécifie l'interface réseau (résolue si non spécifiée) |
-g [Gateway IP Address] | Spécifie l'adresse IP de la passerelle (résolue si non spécifiée) |
-m [Gateway MAC Address] | Spécifie l'adresse MAC de la passerelle (résolue si non spécifiée) |
-n [Netmask Address] | Spécifie le masque de sous-réseau (résolu si non spécifié) |
| Commande | Explication |
|---|
scan (--range [IP Range]) (--intensity [(1,2,3)]) | Scanne votre réseau pour trouver les hôtes en ligne. L'une des premières choses à faire après le démarrage.--range vous permet de spécifier une plage IP personnalisée.--intensity vous permet de spécifier l'intensité / vitesse du scan (1 = rapide, 2 = normal (standard), 3 = intense).Exemple : scan --range 192.168.178.1-192.168.178.40 --intensity 1 ou simplement scan. |
hosts | Affiche tous les hôtes scannés et les informations de base. |
limit [ID1,ID2,...] [Rate] (--upload) (--download) | Limite la bande passante du ou des hôtes associés à l'ID spécifié. |
block [ID1,ID2,...] (--upload) (--download) | Bloque la connexion internet du ou des hôtes. |
free [ID1,ID2,...] | Supprime les restrictions de bande passante. |
add [IP] (--mac [MAC]) | Ajoute manuellement un hôte personnalisé. |
monitor (--with-id [ID1,ID2,...]) (--interval [time in ms]) | Surveille l'utilisation de la bande passante du ou des hôtes. |
analyze [ID1,ID2,...] (--duration [time in s]) | Analyse l'utilisation du trafic. |
watch | Affiche l'état actuel de la surveillance. |
watch add [ID1,ID2,...] | Ajoute le ou les hôtes à la liste de surveillance. |
watch remove [ID1,ID2,...] | Retire le ou les hôtes de la liste de surveillance. |
watch set [Attribute] [Value] | Modifie les paramètres de surveillance. |
clear | Efface la fenêtre du terminal. |
exit | Quitte l'application. |
sleep | Attend secondes. |
-h, --help | Affiche l'aide de la commande. |
import-json, export-json [JSON_FILE_PATH] | Importe/Exporte un fichier JSON contenant des adresses IP et des adresses MAC encodées en base64. |