
Simulation de shell sur Net-SNMP avec la fonctionnalité extend
Voici un aperçu :
Si votre cible dispose d'une instance Net-SNMP avec la fonctionnalité "extend", et que vous avez une chaîne de communauté SNMP qui vous donne un accès en écriture, vous pouvez utiliser cet outil pour automatiser l'envoi de commandes avec le RCE SNMP.
L'outil vous place automatiquement dans votre chemin pour simuler un véritable shell.
Vous pouvez également utiliser toutes les commandes imaginables, à l'exception de celles nécessitant un shell entièrement interactif (MySQL, Vim, Nano, etc.)
Non compatible Windows, désolé.
sudo apt install snmp snmp-mibs-downloader rlwrap -y
git clone https://github.com/mxrch/snmp-shell
cd snmp-shell
sudo python3 -m pip install -r requirements.txt
$ rlwrap python shell.py <IP> -c <community string>
Si vous devez envoyer des chaînes plus longues, comme votre clé publique SSH, veuillez utiliser la version legacy.py.
La limite de caractères à envoyer est courte (Limitation SNMP).
Astuce : utilisez une clé publique SSH ed25519, pas une RSA, elle est plus courte.
Usage: shell.py [OPTIONS] IP
Simulates a terminal over Net-SNMP "extend" functionality. Be sure your
SNMP Community String has write access.
Options:
-c, --communitystring TEXT Community string for SNMP
-v, --version TEXT SNMP version (1/2c/3)
-ss, --snmpset TEXT Path for the snmpset binary
-sw, --snmpwalk TEXT Path for the snmpwalk binary
-h, --help Show this message and exit.