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
UltraViolet — Selbstgehostete Netzwerkerkennungs- und Suchmaschine mit kontinuierlichem Port-Scanning, tiefer Protokollanalyse über ~100 Dienste, lokaler CVE-Abgleich und Volltextsuche für Inventarisierung der Infrastruktur und Risikoüberwachung. | Kitploit
Tools/GitHubGitHub/yakushstanislav/ultraviolet
AufklärungSchwachstellenscannerIoT-SicherheitNetzwerkkartierungPort-ScanningSCADA/ICS-SicherheitBedrohungsanalyseIncident ResponseDNS-Analyse
GitHubyakushstanislav/ultraviolet

UltraViolet

Selbstgehostete Netzwerkerkennungs- und Suchmaschine mit kontinuierlichem Port-Scanning, tiefer Protokollanalyse über ~100 Dienste, lokaler CVE-Abgleich und Volltextsuche für Inventarisierung der Infrastruktur und Risikoüberwachung.

43vor 2 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
Repository anzeigen

UltraViolet

Selbstgehostete Netzwerkerkennung & Suche – Ihr eigenes Shodan, auf Ihrer Hardware.

TCP/UDP-Scanning · ~100 Protokoll-Sonden · TLS/JARM-Fingerabdrücke · CVE-Abgleich · Volltextsuche · Delta-Verfolgung · Benachrichtigungen


Go React PostgreSQL Docker CI License: MIT

Schnellstart · Funktionen · Architektur · Dokumentation · Produktion


Wichtig. Scannen Sie nur Netzwerke, die Ihnen gehören oder für die Sie eine schriftliche Genehmigung haben. UltraViolet führt passive Diensterkennung durch – es nutzt keine Schwachstellen aus.

Warum UltraViolet

Anwendungsfall

Einzelmandant, ein Docker Compose Stack, volle Kontrolle über Ihre Daten.

✨ Funktionen

Erkennung

  • TCP-Connect-Scanner mit masscan oder zmap als Erkennungs-Engine
  • UDP-Sonden auf konfigurierbaren Ports
  • Eingeschränkt durch SCAN_ALLOWED_CIDRS mit Host- und Port-Limits

Tiefensonden (~100 Protokolle)

  • Web: HTTP/HTTPS, HTTP/3, GraphQL, Favicon-Hash, robots.txt, security.txt, Tech-Stack
  • TLS: Zertifikatsketten, JARM, JA3S/JA4S, Konfigurationsbewertung
  • Mail & Verzeichnisse: SMTP, POP3/IMAP, LDAP, IPMI
  • Datenbanken & Warteschlangen: MySQL, PostgreSQL, MongoDB, Redis, Kafka, MQTT, NATS, AMQP…
  • ICS/SCADA: Modbus, BACnet, DNP3, IEC 104, S7Comm, ENIP, OPC UA…
  • IoT & Medien: ONVIF, RTSP, Chromecast, AirPlay, UPnP…
  • Vollständige Liste in der Protokolldokumentation

Anreicherung

  • Reverse-DNS, GeoIP (MMDB), ASN
  • Optionales Forward-DNS und CT-Log-Erkennung

CVE & Risiko

  • Lokaler NVD-Spiegel mit Hintergrundsynchronisation und Fingerprint-basiertem Abgleich
  • CISA KEV und FIRST EPSS

Betrieb

  • RBAC (viewer / operator / admin), JWT + Refresh-Tokens
  • Scan-Zeitpläne, Pause/Fortsetzen, Waisenrückgewinnung nach Worker-Neustart
  • Prometheus /metrics, optionales Grafana-Profil
  • Audit-Log, Ratenbegrenzung, Aufbewahrungsrichtlinien

🏗 Architektur

root@kitploit:~
flowchart TB
  Browser["Browser"]
  FE["service-frontend<br/>React + nginx"]
  API["uv-api<br/>REST · WS · metrics"]
  PG[("PostgreSQL 16")]
  SCAN["uv-scanner<br/>probe pipeline"]

  Browser --> FE
  FE -->|"/api"| API
  FE -->|"/realtime"| API
  API <--> PG
  SCAN <--> PG
  API -.->|LISTEN/NOTIFY| API

Das Release-UI-Bild proxyt /api/ und /realtime an uv-api – Single Origin, kein Frontend-Neubau pro API-URL.

Backend-Entwicklungsregeln: CLAUDE.md.

🚀 Schnellstart

Anforderungen: Docker Engine ≥ 24, ~4 GB RAM, Linux amd64 für Produktionsimages.

root@kitploit:~
git clone https://github.com/yakushstanislav/UltraViolet.git
cd UltraViolet/service-env

cp .env.example .env
mkdir -p secrets
openssl rand -hex 32 > secrets/postgres_password
openssl rand -hex 32 > secrets/auth_jwt_secret

cd ..
make dev
URLZweck
http://localhost:3000UI (API über nginx /api/)
http://localhost:8080API direkt

Dev-Bootstrap: admin / admin (nur wenn APP_ENV≠production).

📖 Dokumentation

Vollständiger Leitfaden – VitePress in service-documentation-frontend/docs/:

root@kitploit:~
make docs-dev    # → http://localhost:5173

In der Produktion das docs-Profil aktivieren:

root@kitploit:~
cd service-env && docker compose --profile docs up -d
# → http://localhost:${UV_DOCUMENTATION_PORT:-3002}

Wichtige Abschnitte: Installation · Scannen · API · Bereitstellung · Offline-Installation.

🛠 Entwicklung

Vollständiger Docker

root@kitploit:~
make dev    # compose prod + dev override, hot-rebuild

Hybrid-Modus (schnellere Backend-Iteration)

root@kitploit:~
make dev-db   # PostgreSQL nur auf :5432

cd service-api && make build
export LOGGER_NAME=uv-api LOGGER_DEBUG=true
export SERVER_ADDR=0.0.0.0 SERVER_PORT=8080
export METRICS_ADDR=0.0.0.0 METRICS_PORT=9090
export REALTIME_ADDR=0.0.0.0 REALTIME_PORT=8081
export POSTGRES_ADDR=localhost POSTGRES_PORT=5432
export POSTGRES_USERNAME=ultraviolet
export POSTGRES_PASSWORD="$(cat ../service-env/secrets/postgres_password)"
export POSTGRES_DATABASE=ultraviolet
export POSTGRES_SCHEMA_PATH="$(pwd)/deploy/migrations"
export AUTH_JWT_SECRET="$(cat ../service-env/secrets/auth_jwt_secret)"
./bin/uv-api

Frontend: cd service-frontend && npm run dev (Vite proxyt /api → :8080, /realtime → :8081).

GeoIP & CVE

root@kitploit:~
cd service-env && make geoip-download      # IPLocate MMDB → geoip/
make -C service-env cve-catalog-dump       # CVE-Dump (erfordert laufendes Postgres)

Bauen ohne Docker

root@kitploit:~
make build && make lint && make frontend-build && make docs-build

📦 Veröffentlichung & Installation

Zielplattform: linux/amd64. Auf Apple Silicon setzen Sie DOCKER_PLATFORM=linux/amd64 für Offline-Archive.

root@kitploit:~
git tag v0.1.0
make release VERSION=v0.1.0
make release-promote VERSION=v0.1.0   # :latest – separater Schritt
ArchivInhalt
ultraviolet-vX.Y.Z.tar.gzcompose, Skripte, .env.example (~50 KB, online)
ultraviolet-vX.Y.Z-offline.tar.gz+ amd64 Docker-Images
ultraviolet-vX.Y.Z-offline-full.tar.gz+ CVE-Seed + GeoIP-MMDB

Online: Entpacken → cp .env.example .env → ./install.sh (Pull vom Registry).

Offline: ./install.sh (docker load, kein Pull). Upgrade: .env, secrets/ und das Postgres-Volume behalten → ./upgrade.sh.

Variablen: UV_REGISTRY (Standard docker.io/ultraviolet), DRY_RUN=1 – lokaler Smoke-Build ohne Push.

Offline-Installation – Schritt für Schritt
root@kitploit:~
# vom Build-Rechner aus
scp dist/ultraviolet-v0.1.0-offline.tar.gz user@host:~/

# auf dem Server (Docker ≥ 24, amd64)
tar xzf ultraviolet-v0.1.0-offline.tar.gz && cd ultraviolet-v0.1.0
cp .env.example .env
./install.sh

Upgrade (Daten erhalten):

root@kitploit:~
docker compose -f docker-compose.yml down
# .env + secrets/ sichern, das neue Archiv entpacken, ./upgrade.sh ausführen

Halten Sie den Verzeichnisnamen (ultraviolet-v0.1.0) stabil – das Docker-Volume postgres-data ist daran gebunden.

✅ Produktions-Checkliste

  1. Secrets in secrets/ speichern, niemals in Git.
  2. CORS_ALLOWED_ORIGINS auf reale UI-Origins setzen.
  3. SCAN_ALLOWED_CIDRS sowie Host/Port-Limits konfigurieren.
  4. Bootstrap-Passwort und AUTH_JWT_SECRET ändern (install.sh lehnt Platzhalter ab).
  5. APP_ENV=production setzen – uv-api lehnt admin/admin und Passwörter kürzer als 8 Zeichen ab.
  6. TLS an einem Reverse-Proxy terminieren – Beispiel: service-env/examples/nginx-tls.conf.
  7. Hinter einem Proxy: AUDIT_TRUST_PROXY_HEADERS=true setzen.
  8. PostgreSQL sichern: service-env/scripts/backup.sh + Cron; upgrade.sh erstellt ebenfalls einen Dump.
HTTPS, Sub-Pfad-Bereitstellung, Backup-Cron

TLS-Terminierung auf externem nginx – die UI nur an Loopback binden:

root@kitploit:~
# docker-compose.override.yml
services:
  service-frontend:
    ports:
      - "127.0.0.1:3000:8080"
root@kitploit:~
CORS_ALLOWED_ORIGINS=https://ultraviolet.example.com
AUDIT_TRUST_PROXY_HEADERS=true

Sub-Pfad (/ultraviolet/):

root@kitploit:~
VITE_BASE_PATH=/ultraviolet/ make frontend-build
# UV_BASE_PATH=/ultraviolet/ in compose – muss VITE_BASE_PATH entsprechen

Backup-Cron (täglich, 14-tägige Aufbewahrung):

root@kitploit:~
0 3 * * * cd /opt/ultraviolet/service-env && ./scripts/backup.sh && find backups -name 'uv-*.dump' -mtime +14 -delete

GeoIP-Aktualisierung (1. des Monats):

root@kitploit:~
0 4 1 * * cd /opt/ultraviolet/service-env && ./scripts/geoip-refresh.sh >> /var/log/uv-geoip.log 2>&1

🔐 API & RBAC

Nach POST /v1/auth/login erhalten Sie ein access_token (Bearer) und ein refresh_token (/v1/auth/refresh).

RolleFähigkeiten
viewerHosts lesen, Suche, CVEs, Dashboard
operator+ Scans starten und verwalten
admin+ Benutzer, Audit, Einstellungen

GET /v1/me · GET /v1/version · GET /readyz (Health + Version + Commit).

🤝 Mitwirken

Siehe CONTRIBUTING.md. Sicherheitsmeldungen: SECURITY.md. Community-Standards: CODE_OF_CONDUCT.md.

📄 Lizenz

UltraViolet wird unter der MIT-Lizenz veröffentlicht.


UltraViolet – entdecken Sie, was Ihnen gehört, verstehen Sie, was sich geändert hat, behalten Sie es in Ihrem Netzwerk.

Tool herunterladen
Ergebnis
Perimeter & InventarKontinuierliche Erkennung offener Ports und Dienste über CIDR-Bereiche
Infrastruktur-SucheVolltextsuche über HTTP-Bodies, Banner, TLS, DNS und CVEs
Risiko & ComplianceLokaler NVD-Abgleich plus CISA KEV und EPSS – keine Cloud-Abhängigkeit
Luftspalt-BereitstellungenOffline-Archiv mit Docker-Images, CVE-Seed und GeoIP-MMDB auf der Festplatte
ÄnderungsverfolgungDeltas zwischen Scans, WebSocket-Ereignisse, Benachrichtigungen zu gespeicherten Suchen
VerzeichnisZweck
service-api/Go: uv-api (HTTP-API, WebSocket, Worker) + uv-scanner (Pipeline)
service-frontend/React 19 + Vite + RTK – Scans, Hosts, Suche, Dashboard
service-documentation-frontend/VitePress – Benutzer- und Bedienerdokumentation
service-env/docker-compose, Secrets, install.sh / upgrade.sh / Backup
http://localhost:9090/metrics
Prometheus
  • Metriken unter :9090/metrics; Grafana über das observability-Profil.
  • GeoIP aktualisieren: service-env/scripts/geoip-refresh.sh monatlich per Cron.