
Ein SNMPv3-Benutzer-Enumerator- und Angriffstool
SNMPwn ist ein SNMPv3-Benutzersammel- und Angriffstool. Es ist ein legitimes Sicherheitstool, das für Sicherheitsexperten und Penetrationstester entwickelt wurde, um es gegen Hosts einzusetzen, die du testen darfst. Es nutzt die Tatsache aus, dass SNMPv3-Systeme mit „Unbekannter Benutzername“ antworten, wenn ein SNMP-Benutzer nicht existiert, sodass wir große Benutzerlisten durchgehen können, um die vorhandenen zu finden.
Entwickelt und getestet auf Kali Linux 2.x rolling. Sollte auf jeder Linux-Plattform funktionieren, funktioniert aber derzeit nicht auf Mac OSX; das wird noch nachgereicht. Dies liegt an den unterschiedlichen stdout-Meldungen von snmpwalk auf OSX. Dieses Skript kapselt im Wesentlichen snmpwalk. Die verwendete snmpwalk-Version war 5.7.3.
git clone https://github.com/hatlord/snmpwn.git
cd snmpwn
gem install bundler
bundle install
./snmpwn.rb
Entwickelt für Ruby 2.3.x. Ältere Ruby-Versionen könnten funktionieren, aber älter als 1.9 wahrscheinlich nicht.
Du musst dem Skript eine Liste von Benutzern, eine Hostliste, eine Passwortliste und eine Liste mit Verschlüsselungspasswörtern bereitstellen. Grundlegende users.txt- und passwords.txt-Dateien sind enthalten. Du könntest passwords.txt auch als Verschlüsselungsliste verwenden. Ich empfehle, eine spezifische für die Organisation zu generieren, die du pentestest.
Die Kommandozeilenoptionen sind wie immer über --help verfügbar und sollten selbsterklärend sein. Nur zu diesen möchte ich eine spezifische Anmerkung machen:
--showfail – Zeigt alle Passwortangriffsversuche an, sowohl erfolgreiche als auch fehlgeschlagene. Es überlädt jedoch die Konsolenausgabe. Wenn du diese Option nicht wählst, erhältst du stattdessen einen sich drehenden Fortschrittsindikator.
--timeout – Dies ist das Timeout in Millisekunden für die Befehlsantwort, hier für snmpwalk. Standard ist 0,3, also 300 Millisekunden. Wenn du Hosts über eine langsame Verbindung testest, solltest du dies erhöhen. Ich würde persönlich nicht unter 300 gehen, da die Ergebnisse sonst unzuverlässig werden könnten.
./snmpwn.rb --hosts hosts.txt --users users.txt --passlist passwords.txt --enclist passwords.txt


