CamTRON - Escáner de Cámaras

Una herramienta automatizada para detectar dispositivos de vigilancia (cámaras) en redes.
Características
- Detección multimarca: Compatible con más de 30 marcas de cámaras, incluyendo Hikvision, Dahua, Axis, CCTV y más
- Escaneo de alto rendimiento: Escaneo concurrente con número de hilos configurable
- Entrada flexible: Escanea IPs individuales, URLs, rangos CIDR o archivos con listas de objetivos
- Detección inteligente: Utiliza múltiples métodos de detección (títulos, cabeceras, hashes MD5 de favicon, contenido del cuerpo)
- Exportación CSV: Opción para guardar resultados en un archivo CSV
- Progreso en tiempo real: Visualización de progreso en vivo con salida codificada por colores
- Resiliente: Maneja de forma elegante los tiempos de espera de red y las respuestas malformadas
Instalación
Requisitos previos
Desde el código fuente
git clone https://github.com/K3ysTr0K3R/camtron.git
cd camtron
go build -o camtron main.go
Instalación rápida
go install github.com/K3ysTr0K3R/camtron@latest
Uso
Tutoriales básicos de escaneo
Escanear una sola URL
./camtron -u http://192.168.1.1
Escanear una sola IP
./camtron -ip 192.168.1.100
Escanear un rango CIDR
./camtron -ip 192.168.1.0/24
Escanear objetivos desde un archivo
Aumentar el número de hilos (predeterminado: 50)
./camtron -f targets.txt -t 100
Guardar resultados en CSV
./camtron -f targets.txt -o results.csv
Añadir resultados a un CSV existente
./camtron -f targets.txt -o results.csv -append
Opciones de línea de comandos
-u string Escanea una sola URL
-ip string Escanea una sola IP/CIDR
-f string Archivo con objetivos (uno por línea)
-t int Hilos (predeterminado: 50)
-o string Archivo CSV de salida (opcional)
-append Añadir al CSV de salida en lugar de sobrescribir
Crea un archivo de texto con un objetivo por línea:
192.168.1.1
192.168.1.100
10.0.0.0/24
http://example.com
Marcas compatibles
- Avtech — Páginas de inicio de sesión y detección de favicon
- Axis — Detección de favicon MD5
- CCTV — Múltiples métodos de detección
- Dahua — Múltiples patrones y detección de favicon
- D-Link DCS — Detección basada en cabeceras
- DVR — Detección de página de inicio de sesión
- Geovision — Detección basada en título
- Hikvision — Detección exhaustiva (cabeceras, títulos, contenido del cuerpo)
- Instar — Detección basada en título
- IP Camera — Detección basada en cabeceras
- Netwave — Detección basada en cabeceras
- Nuuo — Detección basada en título
- Reecam — Detección basada en cabeceras
- Tenda — Múltiples variantes de página de inicio de sesión
- Uniview — Detección de favicon y logotipo
- Xiongmai — Detección basada en título
Métodos de detección
CamTRON utiliza múltiples técnicas de detección:
- Coincidencia de títulos: Comprueba la
<title> del HTML para buscar firmas de marca
- Análisis de cabeceras: Examina las cabeceras de respuesta HTTP en busca de identificadores
- Contenido del cuerpo: Busca cadenas conocidas en el cuerpo del HTML
- Hash de favicon: Hash MD5 de
favicon.ico
- Códigos de estado: Detecta patrones específicos de respuesta HTTP
Rendimiento
- Hilos predeterminados: 50 escaneos concurrentes
- Tiempo de espera: 2 segundos por solicitud
- Agrupación de conexiones: Reutiliza conexiones HTTP
- Caché de DNS: Reduce las búsquedas DNS repetidas
- Seguimiento de progreso: Estadísticas de escaneo en tiempo real
Salida
Salida en consola
[15:04:05.123] [+] 192.168.1.100 : hikvision, dahua
[15:04:05.456] [+] 192.168.1.101 : axis
Salida CSV
Target,Brands
192.168.1.100,"hikvision, dahua"
192.168.1.101,"axis"
Compilar desde el código fuente
git clone https://github.com/yourusername/camtron.git
cd camtron
go build -o camtron .
go build -ldflags="-s -w" -o camtron .
Dependencias
- Biblioteca estándar de Go
- golang.org/x/net/html
Desarrollo
Añadir nuevas reglas
Añade reglas al segmento rules en main.go:
{"brandname", "/path", "condition=value", "", false}
Condiciones compatibles
title= — Coincidencia de título HTML
body= — Coincidencia de cuerpo HTML
headers= — Coincidencia de cabeceras HTTP
md5= — Coincidencia de favicon MD5
status_code= — Coincidencia de código de estado HTTP
Condiciones múltiples
{"brand", "/", "title=Login&&body=Camera System", "", false}
Aviso legal
Esta herramienta está pensada para:
- Profesionales de seguridad que prueban sus propias redes
- Compromisos de pruebas de penetración autorizadas
- Fines educativos
ADVERTENCIA: Escanear sin autorización redes que no posees o para las que no tienes permiso es ilegal. Obtén siempre la autorización adecuada. Los desarrolladores no asumen ninguna responsabilidad por el uso indebido o los daños.
Contribuciones
- Haz un fork del repositorio
- Crea una rama de funcionalidad
- Confirma tus cambios
- Sube la rama
- Abre una Pull Request
Soporte
- Consulta la página de Issues
- Abre un nuevo issue con información detallada
Nota: Esta herramienta es únicamente para fines legítimos de evaluación de seguridad.