18 Punkte von GN⁺ 2026-03-10 | 5 Kommentare | Auf WhatsApp teilen
  • Verschiedene Echtzeitdaten wie Flugzeuge, Schiffe, Satelliten, Erdbeben, Konflikte, CCTV und GPS-Störungen werden in einer einzigen geoinformationsbasierten Oberfläche zusammengeführt
  • Erstellt mit Next.js, MapLibre GL, FastAPI und Python, sodass Analysten und Forschende globale Aktivitäten auf einem einzigen Bildschirm visualisieren können
  • Bietet detaillierte Tracking-Funktionen in sechs Hauptbereichen: Luftfahrt, Seefahrt, Weltraum, Geopolitik, Überwachung und Signalaufklärung; jede Ebene lässt sich einzeln steuern
  • Dank einfacher Bereitstellung auf Basis von Docker/Podman und automatisierter API-Integration sind Self-Hosting und die Einrichtung der Entwicklungsumgebung unkompliziert
  • Alle Daten werden aus öffentlichen OSINT-Quellen gesammelt, und es wird ausdrücklich darauf hingewiesen, dass die Nutzung nur zu Bildungs- und Forschungszwecken zulässig ist

Überblick

  • ShadowBroker ist ein domänenübergreifendes Dashboard für Open-Source-Informationen in Echtzeit (Real-Time OSINT), das Dutzende öffentliche Datenfeeds integriert und in einer einzigen Dark-Map-Oberfläche anzeigt
    • Verfolgt in Echtzeit Flugzeuge, Schiffe, Satelliten, Erdbeben, Konfliktgebiete, CCTV-Netzwerke, GPS-Störungen und geopolitische Ereignisse
  • Es basiert auf Next.js, MapLibre GL, FastAPI und Python und wurde als Visualisierungstool für Analysten, Forschende und OSINT-Enthusiasten entwickelt

Wichtige Anwendungsfälle

  • Verfolgung von Privatjets von Milliardären
  • Überwachung von Satellitenüberflügen
  • Beobachtung des weltweiten Seeverkehrs
  • Erkennung von GPS-Störgebieten
  • Echtzeitbeobachtung von Erdbeben und Katastrophen

Funktionsübersicht

🛩️ Flugverfolgung (Aviation Tracking)

  • Echtzeit-Positionsanzeige von mehr als etwa 5.000 Verkehrsflugzeugen über das OpenSky Network
  • Separate Klassifizierung von Privat- und Militärflugzeugen sowie Verfolgung von Business Jets mit Eigentümerinformationen
  • Unterstützt Detailfunktionen wie Akkumulation von Flugrouten, Erkennung von Warteschleifen und Anzeige des Bodenstatus
  • Stellt präzise SVG-Symbole für verschiedene Flugzeugtypen bereit

🚢 Schiffsverfolgung (Maritime Tracking)

  • Echtzeitdaten von mehr als 25.000 Schiffen über aisstream.io WebSocket
  • Farbkodierung nach Schiffstyp (Frachtschiffe, Tanker, Passagierschiffe, Kriegsschiffe usw.)
  • OSINT-basierte Positionsschätzung für 11 Flugzeugträger der US Navy und automatisiertes GDELT-News-Scraping
  • Unterstützt eigene Layer für Kreuzfahrt- und Passagierschiffe sowie Cluster-Anzeige je nach Zoomstufe

🛰️ Weltraum & Satelliten (Space & Satellites)

  • Echtzeit-Orbitalanzeige von mehr als 2.000 Satelliten auf Basis von CelesTrak TLE + SGP4
  • Farbkodierung nach Missionstyp: militärische Aufklärung (rot), SAR (türkis), SIGINT (weiß), Navigation (blau), Frühwarnung (magenta), kommerzielle Bildgebung (grün), Raumstationen (gold)

🌍 Geopolitik & Konflikte (Geopolitics & Conflict)

  • Erfasst auf Basis von GDELT rund 1.000 Konfliktereignisse aus den letzten 8 Stunden
  • Echtzeitdaten zur Front in der Ukraine aus der DeepState Map
  • Bietet SIGINT/RISINT-Newsfeeds und ein regionales Informationspanel
    • Einschließlich Bevölkerung, Hauptstadt, Sprache, Währung und Fläche eines Landes, Regierungsform, Staatsoberhaupt-Informationen (Wikidata) und Wikipedia-Zusammenfassung

📷 Überwachung (Surveillance)

  • Integration von mehr als 2.000 Verkehrs-CCTV-Livestreams
    • darunter London (TfL), Austin (TxDOT), New York (NYC DOT) und Singapur (LTA)
  • Unterstützt automatische Feed-Erkennung und Rendering sowie zoomabhängige Cluster-Anzeige

📡 Signalaufklärung (Signal Intelligence)

  • Erkennung von GPS-Störungen: Visualisierung von Störgebieten durch Analyse von NAC-P-Werten bei Flugzeugen
  • Funkabhör-Panel: bietet eine UI im Stil einer Funküberwachung

🌐 Zusätzliche Layer

  • Enthält USGS-Erdbebendaten (24 Stunden), Anzeige der Tag-Nacht-Grenze, Echtzeit-Finanzmarktindizes und Werkzeuge zur Distanz- und Richtungs­messung

Systemarchitektur

  • Frontend (Next.js): 2D-WebGL-Karte auf Basis von MapLibre GL, SIGINT-Newsfeed, Kontrollpanel, Markt- und Funkmodule
  • Backend (FastAPI): periodische Erfassung aus zahlreichen Datenquellen (OpenSky, adsb.lol, CelesTrak, USGS, GDELT, CCTV usw.)
  • Über eine REST API werden die Daten im Abstand von 60 bis 120 Sekunden an das Frontend übermittelt

Datenquellen und APIs

Quelle Daten Aktualisierungsintervall API-Schlüssel
OpenSky Network Verkehrs- und Privatflugzeuge ca. 60 Sekunden optional
adsb.lol Militärflugzeuge ca. 60 Sekunden nicht erforderlich
aisstream.io Schiffspositionen in Echtzeit erforderlich
CelesTrak Satellitenbahnen ca. 60 Sekunden nicht erforderlich
USGS Erdbeben ca. 60 Sekunden nicht erforderlich
GDELT Konfliktereignisse ca. 6 Stunden nicht erforderlich
DeepState Map Ukraine-Front ca. 30 Minuten nicht erforderlich
TfL, TxDOT, NYC DOT, LTA Verkehrs-CCTV ca. 5 Minuten teilweise erforderlich
RestCountries, Wikidata, Wikipedia Länder- und Karteninformationen auf Anfrage nicht erforderlich

Installation und Ausführung

Auf Basis von Docker/Podman

  • Nach git clone automatische Ausführung mit dem Befehl ./compose.sh up -d
  • Standardports: Frontend 3000, Backend 8000
  • Ports können über die Umgebungsvariable NEXT_PUBLIC_API_URL neu gesetzt werden

Entwicklungsumgebung für Codeänderungen

  • Erforderlich sind Node.js 18+ und Python 3.10~3.12
  • API-Schlüssel für aisstream.io ist Pflicht, Schlüssel für OpenSky und LTA sind optional
  • Gleichzeitiger Start von Frontend und Backend mit npm run dev

Steuerung der Daten-Layer

  • Alle Layer lassen sich einzeln umschalten, darunter Flugzeuge, Satelliten, Schiffe, Erdbeben, CCTV, Konflikte und GPS-Störungen
  • Standardmäßig aktiviert: Verkehrs- und Militärflugzeuge, Satelliten, Flugzeugträger, Erdbeben, Konflikte, GPS-Störungen und Tag-Nacht-Grenze

Performance-Optimierung

  • Effiziente Verarbeitung großer Echtzeit-Datenmengen durch Gzip-Komprimierung (92 %), ETag-Caching, Viewport-Culling, Cluster-Rendering und reduzierte Koordinatenpräzision (5 Nachkommastellen)
  • Minimierte Rendering-Last durch React.memo und Debounce (300 ms)

Umgebungsvariablen

  • Erforderlich: AIS_API_KEY
  • Optional: OPENSKY_CLIENT_ID, OPENSKY_CLIENT_SECRET, LTA_ACCOUNT_KEY

Haftungsausschluss und Lizenz

  • Alle Daten basieren auf öffentlichen OSINT-Quellen, ohne Nutzung nicht öffentlicher oder vertraulicher Informationen
  • Verbot der Nutzung für militärische oder nachrichtendienstliche Zwecke, beschränkt auf Bildungs- und Forschungszwecke
  • Die Nutzungsbedingungen der jeweiligen API-Anbieter müssen eingehalten werden

Projektstruktur

  • backend/: FastAPI-App, Scheduler für Datenerfassung, Verarbeitung von CCTV-, Flugzeugträger- und Konfliktdaten
  • frontend/: auf Next.js basierende Komponenten für Karte, Panels, Filter, News, Märkte und Funk
  • Enthält automatische Deployment-Skripte wie docker-compose.yml und compose.sh

Zusammenfassung

  • ShadowBroker ist eine Open-Source-Plattform zur integrierten Visualisierung weltweiter OSINT-Echtzeitdaten
  • Ermöglicht die Analyse mehrerer Bereiche wie Luftfahrt, Seefahrt, Weltraum, Geopolitik, Überwachung und Signale auf einer einzigen Karte
  • Bietet einfache Bereitstellung auf Docker-Basis, leistungsstarkes Rendering und ausschließliche Nutzung öffentlicher Daten
  • Ein nützliches Echtzeit-Intelligence-Tool für Sicherheits- und Informationsanalyse-Forschende sowie Data Engineers in Startups

5 Kommentare

 
ryudaewan 2026-03-10

ShadowBroker! Das hat mich nach langer Zeit wieder an Mass Effect 2 erinnert. https://masseffect.fandom.com/wiki/Shadow_Broker_(enemy)

 
xguru 2026-03-10

Ich musste bei den Hacker-News-Kommentaren laut lachen.

„Im ersten Commit wurden ./frontend/.env.local und ./backend/.env in der ZIP-Datei offengelegt.“

„Deshalb heißt es OSINT (Open Source Intelligence). Alles ist öffentlich.“

 
girr311 2026-03-10

Ich habe es heruntergeladen, und es ist tatsächlich da.

 
zihado 2026-03-10

Haha, das ist schon ein bisschen lustig. :D

 
GN⁺ 2026-03-10
Hacker-News-Kommentare
  • Ich frage mich, ob es wirklich sinnvoll ist, sich auf diese Weise übermäßig vieler Daten bewusst zu sein, bei denen man ohnehin nichts unternehmen kann, oder ob das am Ende nur zu Stress und einem geringeren Gefühl von Selbstwirksamkeit führt

  • Es war ein wirklich spannendes und fesselndes Projekt, einige GeoJSONs für Live-Tiles zu optimieren
    Würde mich interessieren, ob du diese Projekte schon gesehen hast → PMTiles, Martin

    • Ich mag beide Projekte wirklich sehr. ShadowBroker ist derzeit auf Live-Radar-Tracking optimiert (GeoJSON-Streaming alle 60 Sekunden vom FastAPI-Backend zu MapLibre)
      Dadurch bekommen wir auf der Karte Bewegungen, die fast auf dem Niveau einer 60-fps-Animation liegen
      Wenn wir später Luftfahrt- und AIS-Daten auf PostGIS-Basis archivieren, wäre ein Wechsel zu Martin wahrscheinlich sinnvoll, aber wegen des Echtzeit-Ziels müssten wir den Tile-Cache ständig invalidieren, daher wäre das im Moment übertrieben
    • Protomaps ist auch nützlich, wenn man auf einfache Weise Karten auf Länderebene bereitstellen will. In der CLI ist fast alles enthalten, was man braucht → Protomaps-CLI-Dokumentation
      Ich habe das früher für ein Landwirtschaftsprojekt eingerichtet und gute Erfahrungen damit gemacht
  • Dieses Projekt sieht monitor-the-situation.com ähnlich

  • Die Beschreibung „ShadowBroker is a real-time, full-spectrum geospatial intelligence dashboard“ wirkt etwas übertrieben
    Eine Formulierung wie „Air and Space domain awareness“ wäre vermutlich treffender
    Geospatial intelligence meint normalerweise informationsgewinnende Arbeit auf Basis von Satellitenbildern, und „spectrum“ bezieht sich oft auf das Lichtspektrum

  • Im ersten Commit waren in ShadowBroker_v0.1.zip ./frontend/.env.local und ./backend/.env geleakt

    • Deshalb heißt es OSINT (Open Source Intelligence). Alles ist offen einsehbar
    • Da fiel der Witz, dass das echte OSINT in den Kommentaren steckt
    • Ich frage mich, warum du das überhaupt überprüft hast
  • Tolles Projekt. Es erinnert mich an diesen Link

    • Ich habe auch an etwas Ähnlichem gearbeitet → cimple-gis-Projekt
      Ich muss es noch fertigstellen, habe aber bisher keine Zeit dafür
    • Es sah riskant zum Anklicken aus, war aber in Ordnung
  • Tolle Datenaggregation. Es wäre aber gut, dem Feed-Workflow ein Staleness-Signal hinzuzufügen
    Einige Quellen (vor allem Threat-Feeds) werden nicht alle paar Sekunden, sondern nur alle paar Stunden aktualisiert. Wenn man für jede Quelle den Zeitpunkt des letzten Updates anzeigen würde, ließe sich die Aktualität der Daten besser einschätzen

  • Wirklich großartig. Danke fürs Teilen.
    Mich würde interessieren, wie hoch die API-Kosten wären, wenn man das einen Monat lang täglich ein paar Stunden laufen ließe. Ich würde gern wissen, ob das in einem bezahlbaren Rahmen bleibt

    • Angeblich ist alles kostenlos
  • Sehr cooles Projekt. Das Konzept, die Feeds und das gesamte Design erinnern allerdings stark an worldmonitor.app
    Zur Einordnung: Das ist ebenfalls bereits als Live-Service deployed