CamTRON - Kamera-Scanner

Ein automatisiertes Tool zur Erkennung von Überwachungsgeräten (Kameras) in Netzwerken.
Funktionen
- Markenübergreifende Erkennung: Unterstützt 30+ Kameramarken, einschließlich Hikvision, Dahua, Axis, CCTV und mehr
- Hochleistungs-Scanning: Paralleles Scannen mit konfigurierbarer Thread-Anzahl
- Flexible Eingabe: Scannt einzelne IPs, URLs, CIDR-Bereiche oder Dateien mit Ziellisten
- Intelligente Erkennung: Verwendet mehrere Erkennungsmethoden (Titel, Header, Favicon-MD5-Hashes, Body-Inhalt)
- CSV-Export: Option, Ergebnisse in eine CSV-Datei zu speichern
- Echtzeit-Fortschritt: Live-Fortschrittsanzeige mit farbcodierter Ausgabe
- Robust: Behandelt Netzwerk-Timeouts und fehlerhafte Antworten elegant
Installation
Voraussetzungen
Aus dem Quellcode
git clone https://github.com/K3ysTr0K3R/camtron.git
cd camtron
go build -o camtron main.go
Schnellinstallation
go install github.com/K3ysTr0K3R/camtron@latest
Verwendung
Grundlegende Scan-Anleitungen
Einzelne URL scannen
./camtron -u http://192.168.1.1
Einzelne IP scannen
./camtron -ip 192.168.1.100
CIDR-Bereich scannen
./camtron -ip 192.168.1.0/24
Ziele aus einer Datei scannen
Thread-Anzahl erhöhen (Standard: 50)
./camtron -f targets.txt -t 100
Ergebnisse in CSV speichern
./camtron -f targets.txt -o results.csv
Ergebnisse an vorhandene CSV anhängen
./camtron -f targets.txt -o results.csv -append
Befehlszeilenoptionen
-u string Scan a single URL
-ip string Scan a single IP/CIDR
-f string File with targets (one per line)
-t int Threads (default: 50)
-o string Output CSV file (optional)
-append Append to output CSV instead of overwrite
Erstellen Sie eine Textdatei mit einem Ziel pro Zeile:
192.168.1.1
192.168.1.100
10.0.0.0/24
http://example.com
Unterstützte Marken
- Avtech — Anmeldeseiten und Favicon-Erkennung
- Axis — Favicon-MD5-Erkennung
- CCTV — Mehrere Erkennungsmethoden
- Dahua — Mehrere Muster und Favicon-Erkennung
- D-Link DCS — Header-basierte Erkennung
- DVR — Anmeldeseiten-Erkennung
- Geovision — Titelbasierte Erkennung
- Hikvision — Umfassende Erkennung (Header, Titel, Body-Inhalt)
- Instar — Titelbasierte Erkennung
- IP Camera — Header-basierte Erkennung
- Netwave — Header-basierte Erkennung
- Nuuo — Titelbasierte Erkennung
- Reecam — Header-basierte Erkennung
- Tenda — Mehrere Anmeldeseiten-Varianten
- Uniview — Favicon- und Logo-Erkennung
- Xiongmai — Titelbasierte Erkennung
Erkennungsmethoden
CamTRON verwendet mehrere Erkennungstechniken:
- Titelabgleich: Prüft HTML
<title> auf Markensignaturen
- Header-Analyse: Untersucht HTTP-Response-Header auf Identifikatoren
- Body-Inhalt: Durchsucht den HTML-Body nach bekannten Zeichenfolgen
- Favicon-Hashing: MD5-Hashing von
favicon.ico
- Statuscodes: Erkennt spezifische HTTP-Antwortmuster
Leistung
- Standard-Threads: 50 parallele Scans
- Timeouts: 2-Sekunden-Timeout pro Anfrage
- Verbindungspooling: Wiederverwendung von HTTP-Verbindungen
- DNS-Caching: Reduziert wiederholte DNS-Abfragen
- Fortschrittsverfolgung: Echtzeit-Scan-Statistiken
Ausgabe
Konsolenausgabe
[15:04:05.123] [+] 192.168.1.100 : hikvision, dahua
[15:04:05.456] [+] 192.168.1.101 : axis
CSV-Ausgabe
Target,Brands
192.168.1.100,"hikvision, dahua"
192.168.1.101,"axis"
Erstellen aus dem Quellcode
git clone https://github.com/yourusername/camtron.git
cd camtron
go build -o camtron .
go build -ldflags="-s -w" -o camtron .
Abhängigkeiten
- Go-Standardbibliothek
- golang.org/x/net/html
Entwicklung
Neue Regeln hinzufügen
Fügen Sie Regeln zum rules-Slice in main.go hinzu:
{"brandname", "/path", "condition=value", "", false}
Unterstützte Bedingungen
title= — HTML-Titelabgleich
body= — HTML-Body-Abgleich
headers= — HTTP-Header-Abgleich
md5= — Favicon-MD5-Abgleich
status_code= — HTTP-Statuscode-Abgleich
Mehrere Bedingungen
{"brand", "/", "title=Login&&body=Camera System", "", false}
Rechtlicher Hinweis
Dieses Tool ist vorgesehen für:
- Sicherheitsexperten, die ihre eigenen Netzwerke testen
- Autorisierte Penetrationstest-Aufträge
- Bildungszwecke
WARNUNG: Das unbefugte Scannen von Netzwerken, die Ihnen nicht gehören oder für die Sie keine Testerlaubnis haben, ist illegal. Holen Sie immer eine ordnungsgemäße Genehmigung ein. Die Entwickler übernehmen keine Verantwortung für Missbrauch oder Schäden.
Mitwirken
- Repository forken
- Feature-Branch erstellen
- Änderungen committen
- Branch pushen
- Pull-Request öffnen
Unterstützung
- Prüfen Sie die Issues-Seite
- Eröffnen Sie ein neues Issue mit detaillierten Informationen
Hinweis: Dieses Tool dient ausschließlich legitimen Sicherheitsbewertungen.