Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
spoonmap — Python-Wrapper um masscan und nmap für Port-Erkennung im großen Maßstab, Host-Erkennung, Banner-Grabbing und NSE-basierte Schwachstellen-Scans in internen oder externen Netzwerken. | Kitploit
Tools/GitHubGitHub/trustedsec/spoonmap
DefensivwerkzeugeAufklärungSchwachstellenscannerNetzwerkkartierungPort-ScanningScripting & AutomatisierungInformationsbeschaffungNetzwerksicherheitPenetrationstestsDienstprogramme & Frameworks
GitHub
208437vor 3 TagenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
trustedsec/spoonmap

spoonmap

Python-Wrapper um masscan und nmap für Port-Erkennung im großen Maßstab, Host-Erkennung, Banner-Grabbing und NSE-basierte Schwachstellen-Scans in internen oder externen Netzwerken.

Repository anzeigen
Teilen

SpooNMAP

CI

Abhängigkeiten

Dieses Skript ist ein Wrapper für masscan und nmap. nmap übernimmt die Host-Erkennung und (bei kleineren Scans) die Port-Erkennung, das Abgreifen von Service-Bannern und NSE-Skripte. Masscan wird für die Port-Erkennung im großen Maßstab eingesetzt, wo rohe Geschwindigkeit zählt. Installiere beide über deinen bevorzugten Paketmanager oder aus dem Quellcode.

Python 3.8+ ist erforderlich (requires-python in pyproject.toml; CI-Untergrenze ist 3.8).

Installation

SpooNMAP kann direkt aus einem Checkout heraus ausgeführt werden — kein Installationsschritt erforderlich, siehe „Usage" unten — oder als eigenständiger Befehl mit uv installiert werden:

uv tool install git+https://github.com/trustedsec/spoonmap

Dadurch wird eine ausführbare Datei spoonmap in deinem PATH abgelegt, sodass du sie als spoonmap aus jedem Verzeichnis aufrufen kannst, anstatt das Repository zu klonen und ./spoonmap.py auszuführen. Es gibt kein PyPI-Paket — dieses Projekt wurde nie auf pypi.org veröffentlicht, und der obige Befehl installiert direkt aus dem Git-Repository. Verwende die vollständige git+https://...-Form oben, nicht ein bloßes uv tool install spoonmap; was auch immer dieser Name auf PyPI auflöst, jetzt oder in Zukunft, ist nicht dieses Projekt.

Um auf den neuesten Commit zu aktualisieren:

uv tool upgrade spoonmap

Wenn Sie auf diese Weise installieren, wird SpooNMAP nicht zu einem eigenständigen Scanner: masscan und nmap sind weiterhin separate Systemwerkzeuge, die unabhängig installiert werden müssen (siehe „Abhängigkeiten" oben), genau wie beim Ausführen aus einem Checkout — uv tool install packt nur SpooNMAPs eigenen Python-Code und seine mitgelieferten NSE-Skripte, nicht die externen Binärdateien, die es aufruft.

Das Eine, das es wert ist, vor der Installation auf diese Weise zu verstehen: Das Python-Modul eines installierten spoonmap liegt dort, wo uv seine verwaltete Tool-Umgebung abgelegt hat — nicht in einem Verzeichnis, in dem Sie jemals nach einer Konfigurationsdatei oder Scan-Ausgabe suchen würden. Genau das ist das Szenario, um das es im Abschnitt „Wo Dateien liegen" unten geht — lesen Sie diesen Abschnitt, um zu erfahren, was relativ zu Ihrem aktuellen Verzeichnis aufgelöst wird und warum; die Installation über uv tool install ändert die Regel nicht, sie macht die Regel nur relevant, da kein Checkout- Verzeichnis mehr übrig ist, auf das ein Konfigurations- oder Ausgabepfad aus Gewohnheit zurückfallen könnte.

Verwendung

Wenn Sie das Skript einfach ausführen, werden Sie nach allen erforderlichen Optionen gefragt.

config.json, Ziel-/Ausschlussdateien und Scan-Ausgabe werden alle relativ zu dem Verzeichnis aufgelöst, aus dem Sie den Befehl ausführen — siehe „Wo Dateien liegen" unten, wenn Ihre Ausgabe nicht dort ist, wo Sie sie erwarten, insbesondere wenn Sie es gewohnt sind, SpooNMAP per Pfad von außerhalb seines eigenen Verzeichnisses aufzurufen.

Wenn Sie uv verwenden, können Sie ohne eine separate virtuelle Umgebung ausführen:

uv run spoonmap.py

Oder direkt aufrufen, wenn das Skript ausführbar ist:

# ./spoonmap.py

________                   _____   _______  _________________
__  ___/______________________  | / /__   |/  /__    |__  __ \
_____ \___  __ \  __ \  __ \_   |/ /__  /|_/ /__  /| |_  /_/ /
____/ /__  /_/ / /_/ / /_/ /  /|  / _  /  / / _  ___ |  ____/
/____/ _  .___/\____/\____//_/ |_/  /_/  /_/  /_/  |_/_/
       /_/


Service Categories (comma-separated numbers, default: All)
	(1) Web          [80, 443, 7001, 7002, 8000, 8080, 8081, 8443, 8888, 9090, 10443]
	(2) Database     [1433, U:1434, 1521, 3306, 5432, 6379, 9200, 27017]
	(3) Remote Management  [22, 23, 3389, 5900, 5901, 6129, 1723, 5985, 5986]
	(4) Email        [25, 110, 143, 465, 587, 993, 995]
	(5) LDAP         [389, 636]
	(6) Network Infrastructure  [53, 179, U:500, U:161, U:623, U:631, U:1194, 1194]
	(7) File Transfer      [21, 111]
	(8) SMB          [445, 135, 139, U:137]
	(9) Specialized  [1090, 3300, 4786, 6970, 2375, 4243, 9100, 8530, 8531]
	(10) Containers & Debuggers  [2377, 10250, 8001, 9229, 2345, 5005, 61616, 8009, 6000]
	(11) Local LLM  [11434, 1234, 7860, 5000, 5001, 1337, 3000, 8000, 8080]
	(12) Full Port Scan  [1-65535, TCP only — no UDP]
	(c) Custom Port Scan  [enter your own comma-separated ports]

(The Full Port Scan number increments automatically with the number of categories.)

**Full Port Scan is TCP only.** It sweeps TCP 1-65535 and runs no UDP discovery at
all, so every `U:` port listed in the categories above — SNMP (U:161), IKE (U:500),
IPMI (U:623), IPP (U:631), OpenVPN (U:1194), NetBIOS (U:137), SQL Browser (U:1434) —
is skipped, along with the NSE scripts and findings that depend on them. It is
*wider* than All on TCP and *narrower* on UDP. For both, run All and Full as two
passes, or use the Custom option with the UDP ports appended
(e.g. `1-65535,U:161,U:500,U:623`).

Which categories would you like to scan (e.g. 1,3 — default: All)?

Would you like to enumerate service banners for any identified services (default: Yes)?

Would you like to run NSE security scripts on identified services (default: No)?

Target Scan
	(1) External
	(2) Internal

Is this an internal or external scan (default: External)?

How fast would you like to scan (default: 20000 packets/second)?

Please enter the full path for the file containing target hosts (default: /opt/spoonmap/ranges.txt):

Would you like to exclude any hosts? (default: No)

Run host discovery before port scanning (default: Yes)?

Tune advanced settings (nmap threads, masscan batch size, nmap work-unit threshold)? (default: No)

Du kannst auch eine config.json-Datei erstellen (basierend auf config.json.sample), um alle Eingabeaufforderungen zu überspringen:

{
    "scan_categories": ["Web", "Database", "Remote Management"],
    "banner_scan": "True",
    "script_scan": "False",
    "host_discovery": "True",
    "target_scan": "Internal",
    "max_rate": "2000",
    "target_file": "ranges.txt",
    "output_path": "./",
    "exclusions_file": "exclusions.txt",
    "nmap_threads": 5,
    "masscan_batch_size": 5,
    "nmap_threshold": 5000000
}

Um alle Kategorien zu scannen, setzen Sie "scan_categories": "All". Um alle 65535 TCP-Ports zu scannen, setzen Sie "scan_categories": "Full" — beachten Sie, dass dies nur TCP ist und keine UDP-Erkennung durchführt. Für eine vollständig benutzerdefinierte Portliste lassen Sie scan_categories weg und verwenden stattdessen "dest_ports": ["80","443","U:53"]. UDP-Ports werden mit dem Präfix U: angegeben (z. B. "U:53").

Wenn Sie die interaktiven Eingabeaufforderungen beantworten, werden die ausgewählten Optionen in config.json geschrieben, bevor der Scan beginnt. Die generierte Datei dokumentiert jedes editierbare Feld auf dieselbe Weise wie config.json.sample und enthält einen __generated_by_prompts__-Markierungsschlüssel. Das bedeutet, dass ein unterbrochener interaktiver Scan auf dieselbe Weise fortgesetzt werden kann wie ein konfigurationsgesteuerter — führen Sie ihn einfach erneut mit --resume aus, und alle Eingabeaufforderungen werden übersprungen.

Wenn die Ausgabe eines vorherigen Scans in output_path erkannt wird, bietet das Tool drei Optionen an: [d]elete (die vorherige Ausgabe entfernen und neu beginnen), [a]ppend (die vorherige Ausgabe behalten, aber alle Phasen erneut ausführen) oder [r]esume (die vorherige Ausgabe behalten und bereits abgeschlossene Arbeit überspringen, genau wie es das --resume-Flag tut).

Tool herunterladen