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
knockpy — Knock Subdomain-Scan | Kitploit
Tools/GitHubGitHub/guelfoweb/knockpy
OSINT (Open-Source-Intelligence)AufklärungInformationsbeschaffungPenetrationstestsSubdomain-EnumerationDNS-Analyse
GitHubguelfoweb/knockpy

knockpy

Knock Subdomain-Scan

Repository anzeigen
4.2k873vor 6 MonatenVon 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

🔍 Knockpy Subdomain-Scan v9.0

✅ Schnell & Async • 🔐 Recon + Brute • 🔧 Einfach erweiterbar

KnockPy ist ein modulares Python-3-Tool zur Auflistung von Subdomains durch passive Aufklärung und Brute-Force, jetzt mit async/await-Unterstützung, verbesserter Leistung und modernem HTTP/TLS-Handling.


🚀 Funktionen (v9)

  • ✅ Async-Scanning mit httpx und DNS-Auflösung
  • ✅ Modular: Neue passive Quellen leicht einsteckbar
  • 🔍 Unterstützt passive Aufklärung, Brute-Force oder beides
  • 🎨 Formatierte Terminalausgabe mit Rich (Tabellen, Fortschritt, Panels)
  • 📜 Validiert HTTP/HTTPS-Status, TLS-Zertifikat und IP
  • ⚠️ Erkennt veraltete TLS-Unterstützung (TLS 1.0/1.1) als Warnung in CLI/verbose/HTML-Bericht
  • 🧾 Überprüft AXFR (Zonentransfer) auf der Root-Domain während Domain-Modus-Scans
  • 🔎 --verbose Einzel-Domain-Diagnose (DNS/TCP/TLS/Weiterleitungsketten/Anfragefehler + Sicherheitsprüfungen)
  • 💡 Unterstützt Wildcard-DNS-Erkennung
  • 🧪 SQLite-Berichte mit interaktivem Katalog (show/delete/export/search)
  • 🔐 Unterstützt VirusTotal und Shodan API
  • 🚀 Optimierte Brute-Force-Laufzeit mit TLS-Probe-Endpunkt-Caching (keine Timeout-Änderungen erforderlich)

📦 Installation

Aus dem GitHub-Quellcode (empfohlen)

root@kitploit:~
git clone https://github.com/guelfoweb/knockpy.git
cd knockpy
# recommended: install in a virtual environment
python3 -m venv .venv
. .venv/bin/activate
python3 -m pip install -U pip
pip install .

# alternative: install for the current user (no venv)
# python3 -m pip install --user .

⚠️ Empfohlene Python-Version: 3.9+

🧱 Projektstruktur

Die Codebasis ist nach Zuständigkeiten organisiert, mit stabilen Fassaden für Abwärtskompatibilität:

root@kitploit:~
knockpy/
  cli.py                   # CLI entrypoint (facade/orchestration)
  cli_parts/
    status.py              # runtime/status panel rendering
    setup.py               # interactive setup and persisted runtime defaults
    report.py              # interactive report mode
    scan_flow.py           # exclude rules, recon-test, wildcard helpers
  core.py                  # public core facade (compatibility)
  engine/
    runtime.py             # scanning engine implementation
  storage.py               # public storage facade (compatibility)
  storage_parts/
    db.py                  # SQLite persistence/settings
    export.py              # report export orchestration
    html_report.py         # HTML report rendering
  output.py                # terminal output rendering
  server_versions.py       # web-server versions catalog
  knockpy.py               # compatibility module exports

Hinweis zur Kompatibilität:

  • Bevorzugte externe Importe: import knockpy oder from knockpy import KNOCKPY.
  • Interne Module sind in engine/, cli_parts/ und storage_parts/ aufgeteilt.

Verwendung von pip

Erst nach Veröffentlichung der stabilen Version auf GitHub

root@kitploit:~
pip install knock-subdomains

🧪 Verwendung

root@kitploit:~
knockpy -d domain.com [options]

Optionen

Leistungsoptimierung: --threads und --timeout

Diese beiden Optionen haben den größten Einfluss auf die Laufzeit bei großen Scans.

  • --threads steuert die Parallelität (wie viele Ziele parallel verarbeitet werden)
  • --timeout steuert, wie lange jeder Netzwerkschritt wartet, bevor er aufgibt

Kompromiss:

  • höhere threads = schnellere Scans, aber mehr Last auf CPU/Netzwerk/DNS und höheres Risiko von Remote-Rate-Limits
  • niedrigerer timeout = schnellere Scans, aber höheres Risiko, langsame aber gültige Ziele zu übersehen (falsch Negative)

Empfohlene Profile:

  • kleiner/genauer Scan (wenige Domains): --threads 50 --timeout 5
  • ausgeglichener Scan: --threads 150 --timeout 4
  • großer Scan (10k+ Domains): starten mit --threads 250 --timeout 3

Wenn Sie sowohl Geschwindigkeit als auch Vollständigkeit bei sehr großen Listen benötigen, verwenden Sie eine 2-Durchlauf-Strategie:

  1. schneller Durchlauf: --threads 250 --timeout 3
  2. Wiederholungsdurchlauf nur bei fehlenden/unsicheren Zielen: --threads 80 --timeout 5 (oder höher)

Hinweise:

  • CLI-Werte überschreiben immer gespeicherte Einrichtungswerte
  • gespeicherte Einrichtungswerte (--setup) überschreiben integrierte Standardwerte
  • aktuelle integrierte Standardwerte sind threads=250, timeout=3

📌 Beispiele

🔎 Recon + Brute-Force

root@kitploit:~
knockpy -d example.com --recon --bruteforce

🧪 Recon-Dienste-Test

root@kitploit:~
knockpy -d example.com --recon --test

🔄 Webserver-aktuellste-Versionen-Katalog aktualisieren

root@kitploit:~
knockpy --update-versions

🆕 Auf Knockpy-Updates prüfen

root@kitploit:~
knockpy --check-update

⚙️ Konfiguration der Recon-Quellen (bearbeitbar)

Beim ersten Start erstellt KnockPy:

root@kitploit:~
~/.knockpy/recon_services.json

Sie können Quellen hinzufügen/deaktivieren, indem Sie das services-Array bearbeiten. Sie können auch auf einen benutzerdefinierten Dateipfad verweisen, ohne Code zu ändern:

root@kitploit:~
export KNOCK_RECON_SERVICES=/path/to/recon_services.json

Jeder Dienst unterstützt:

  • name
  • enabled (true/false)
  • parser
  • url_template (unterstützt {domain}, {virustotal_key}, {shodan_key})
  • requires_api (virustotal oder shodan, optional)

Unterstützte Parser:

  • csv_first_column
  • rapiddns_html_td
  • json_list
  • virustotal_subdomains
  • shodan_subdomains

📥 Domain von stdin

root@kitploit:~
echo "example.com" | knockpy -d

🧠 API-Schlüssel (optional)

root@kitploit:~
export API_KEY_VIRUSTOTAL=your-virustotal-api-key
export API_KEY_SHODAN=your-shodan-api-key

Sie können eine .env-Datei verwenden:

root@kitploit:~
API_KEY_VIRUSTOTAL=your-virustotal-api-key
API_KEY_SHODAN=your-shodan-api-key

💾 Berichte (SQLite + interaktiver HTML-Export)

root@kitploit:~
knockpy -d example.com --recon --bruteforce
knockpy --report list
knockpy --report latest
knockpy --report

Interaktives Berichtsmenü:

  • 1 anzeigen
  • 2 löschen
  • 3 exportieren
  • 4 suchen
  • 0 DB zurücksetzen (fragt explizite Bestätigung)

Berichtsmodus beenden:

  • Drücken Sie Enter bei leerer Aktionsaufforderung
  • oder drücken Sie CTRL+C

🔍 Einzel-Domain-Diagnose

root@kitploit:~
knockpy -d forum.example.com --verbose

🧪 Nur Wildcard-Test

root@kitploit:~
knockpy -d example.com --wildcard

🧬 Python-API-Nutzung

KnockPy kann als Python-Modul verwendet werden:

root@kitploit:~
import knockpy

result = knockpy.KNOCKPY("example.com", timeout=5.0, threads=20)
print(result["domain"], result["ip"])

oder:

root@kitploit:~
from knockpy import KNOCKPY

domain = 'example.com'

results = KNOCKPY(
    domain,
    dns="8.8.8.8",
    useragent="Mozilla/5.0",
    timeout=5,
    threads=10,
    recon=True,
    bruteforce=True,
    wordlist=None,
    silent=False
)

for entry in results:
    print(entry['domain'], entry['ip'], entry['http'], entry['cert'])

📂 Wortliste

Eine Standard-Wortliste ist in knockpy/wordlist/wordlist.txt enthalten. Sie können Ihre eigene mit --wordlist bereitstellen.

Test

root@kitploit:~
python3 -m pytest

# (optional) smoke-run example script
python3 examples/poc.py

📖 Lizenz

Lizenziert unter der GPLv3-Lizenz.

Gianni Amato (@guelfoweb)

Tool herunterladen
FlagBeschreibung
-d, --domainZiel-Domain (oder stdin, wenn ohne Wert verwendet)
-f, --fileDatei mit einer Liste von Domains
--reconPassive Aufklärung aktivieren
--bruteforce, --bruteBrute-Force mit Wortliste aktivieren
--exclude TYPE VALUETreffer ausschließen (status, length/lenght, body)
--verboseTiefe Diagnose nur für Einzel-Domain-Scans
--wildcardWildcard-DNS testen und beenden
--testMit --recon jede Recon-Quelle testen (fehlgeschlagen/leer/Daten)
--setupInteraktive Einrichtung (Laufzeit-Standardwerte + API-Schlüssel in DB)
--update-versionsLokalen Katalog der neuesten Webserver-Versionen aktualisieren
--report [ID|latest|list]Berichtsmodus (interaktiv anzeigen/löschen/exportieren/suchen/DB zurücksetzen, HTML exportieren)
--check-updateOnline prüfen, ob eine neuere Knockpy-Version auf PyPI verfügbar ist
--wordlistLaufzeit-Überschreibung für Wortliste
--dnsLaufzeit-Überschreibung für DNS-Resolver
--useragentLaufzeit-Überschreibung für HTTP-User-Agent
--timeoutLaufzeit-Überschreibung für Timeout (Sekunden)
--threadsLaufzeit-Überschreibung für gleichzeitige Worker
--silentFortschrittsbalken ausblenden
--jsonNur JSON-Ausgabe (erzwingt --silent)
--statusLaufzeitstatus anzeigen und fortfahren
-h, --helpHilfemeldung anzeigen