
Un outil d'énumération d'utilisateurs SNMPv3 et d'attaque
SNMPwn est un outil d'attaque et d'énumération d'utilisateurs SNMPv3. C'est un outil de sécurité légitime conçu pour être utilisé par des professionnels de la sécurité et des testeurs d'intrusion contre des hôtes que vous avez l'autorisation de tester. Il exploite le fait que les systèmes SNMPv3 répondent par « Unknown user name » lorsqu'un utilisateur SNMP n'existe pas, ce qui permet de parcourir de grandes listes d'utilisateurs pour trouver ceux qui existent.
Construit et testé sur Kali Linux 2.x rolling. Devrait fonctionner sur toute plateforme Linux mais ne fonctionne actuellement pas sur Mac OSX, mais le fera quand j'aurai le temps. Cela est dû au fait que les messages stdout de snmpwalk sur OSX sont différents. Ce script est essentiellement un wrapper autour de snmpwalk. La version de snmpwalk que j'ai utilisée est la 5.7.3.
git clone https://github.com/hatlord/snmpwn.git
cd snmpwn
gem install bundler
bundle install
./snmpwn.rb
Construit pour Ruby 2.3.x. Des versions plus anciennes de Ruby peuvent fonctionner, mais les versions antérieures à 1.9 pourraient ne pas fonctionner.
Vous devez fournir au script une liste d'utilisateurs, une liste d'hôtes, une liste de mots de passe et une liste de mots de passe de chiffrement. Des fichiers users.txt et passwords.txt de base sont inclus. Vous pouvez utiliser passwords.txt pour votre liste de chiffrement également. Je recommanderais d'en générer un spécifique à l'organisation que vous testez.
Les options de ligne de commande sont disponibles via --help comme toujours et devraient être suffisamment claires. Les seules pour lesquelles je ferais un commentaire spécifique sont :
--showfail - Cela vous montrera toutes les tentatives d'attaque par mot de passe, réussies et échouées. Cela encombre la sortie console, donc si vous ne choisissez pas cette option, vous obtiendrez un indicateur de progression tournant à la place.
--timeout - Il s'agit du délai d'attente en millisecondes pour la réponse de la commande, qui dans ce cas est snmpwalk. Il est défini par défaut à 0,3, soit 300 millisecondes. Si vous testez des hôtes sur une liaison lente, vous voudrez l'augmenter. Personnellement, je ne descendrais pas en dessous de 300 sinon les résultats pourraient devenir peu fiables.
./snmpwn.rb --hosts hosts.txt --users users.txt --passlist passwords.txt --enclist passwords.txt


