
Ultimatives Aufklärungswerkzeug für das Internet der Dinge/industrielle Kontrollsysteme.
Kamerka GUI ist ein auf Django basierendes Aufklärungs-Dashboard zum Erkennen, Überprüfen und Priorisieren von Internet-exponierten Systemen der industriellen Steuerungstechnik, des Internets der Dinge und medizinischen Geräten. Es kombiniert Shodan-Suchergebnisse, Google Maps-Visualisierung, Geräte-Screenshots, passive Intelligence-Anreicherung und ausgewählte Scan-/Exploit-Helfer in einer Web-Oberfläche.
Die App hilft, das Rauschen bei der Überprüfung zu reduzieren, indem sie einen Filter Honeypots-Schalter in Gerätetabellen bereitstellt. Dieser schließt Geräte aus, die Honeypot-ähnliche Indikatoren aufweisen, sodass Analysten sich zuerst auf wahrscheinlich echte Assets konzentrieren können. Kamerka zeigt außerdem ein Geräte-Indikator-Feld an, das aus geparsten Bannern, Protokollantworten, Screenshot-Labels und anderen Geräte-Metadaten erstellt wird, um zu erklären, warum ein Gerät markiert wurde oder wie es lokalisiert oder klassifiziert werden kann.
Verwenden Sie es nur für autorisierte Forschung, Bestandsaufnahme von Assets, defensives Exposure-Management und die Meldung an die entsprechenden Eigentümer oder CERT/CSIRT-Teams.






Dashboard: Übersichtszahlen, Shodan-Guthaben, letzte Suchanfragen, Diagramme, weltweite Abdeckung und Favoriten.Database: durchsuchbare Tabelle aller gefundenen Geräte mit Filterung nach wahrscheinlichen Honeypots.History: frühere Suchanfragen mit Ländernamen, ausgewählten Gerätekategorien und Links zu Ergebnissen.Map: globale geclusterte Google Map der gefundenen Geräte.Gallery: alle gesammelten Geräte-Screenshots mit Länderfilterung.Results: gerätebezogene Tabelle, Karte, Statistiken und exportähnliches Durchsuchen pro Suche.Device: Registerkarten für Lokalisierung, Intel und Exploit für ein einzelnes Gerät.GeoLite2-City.mmdb im Repository-Stammverzeichnis, wenn Sie Nmap-XML-Import-Geolokalisierung wünschen.Python-Abhängigkeiten sind in requirements.txt aufgeführt. Das Projekt zielt nun auf die Django 5.2 LTS-Linie, Celery 5.6 und begrenzte Python-Pakete ab, sodass Installationen aktuell bleiben, ohne auf inkompatible Hauptversionen springen zu müssen.
Klonen Sie das Repository und erstellen Sie eine virtuelle Umgebung:
git clone https://github.com/woj-ciech/Kamerka-GUI.git
cd Kamerka-GUI
python3.12 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -r requirements.txt
Falls python3.12 nicht verfügbar ist, verwenden Sie einen anderen Python 3.10-3.13-Interpreter. Vermeiden Sie die Wiederverwendung einer alten Python 3.8/3.9 virtuellen Umgebung, da der aktuelle Abhängigkeitssatz Python 3.10+ erfordert.
Datenbankschema erstellen:
python manage.py migrate
Erstellen Sie keys.json im Repository-Stammverzeichnis:
{
"keys": {
"shodan": "YOUR_SHODAN_API_KEY",
"google_maps": "YOUR_GOOGLE_MAPS_API_KEY",
"whoisxmlapi": "YOUR_WHOIS_XML_API_KEY"
}
}
Starten Sie Redis in einem separaten Terminal:
redis-server
Starten Sie einen Celery-Worker in einem anderen Terminal:
source .venv/bin/activate
celery --app kamerka worker --loglevel=info
Starten Sie den Django-Entwicklungsserver:
source .venv/bin/activate
python manage.py runserver
Öffnen Sie die App:
http://localhost:8000/
keys.json wird zur Laufzeit benötigt, da die App API-Schlüssel aus keys['keys'] liest.keys.json außerhalb der Versionskontrolle. Es enthält private Anmeldedaten.Die vollständige Liste der unterstützten Shodan-Abfragen wird in queries.md gepflegt.
Breite Kategorien umfassen: