Volver a actualizaciones
Nuevo releaseJul 26, 2026

cameradar v6.2.1

Cameradar se infiltra en cámaras de videovigilancia RTSP

Compartir

Cameradar

Coverage Status

Herramienta de acceso a streams RTSP

Cameradar escanea endpoints RTSP en objetivos autorizados y utiliza ataques de diccionario para forzar sus credenciales y rutas.

Lo que hace Cameradar

  • Detecta hosts RTSP abiertos en objetivos accesibles.
  • Detecta el modelo de dispositivo que transmite el feed RTSP.
  • Intenta el descubrimiento basado en diccionarios de rutas de stream (por ejemplo, /live.sdp).
  • Intenta el descubrimiento basado en diccionarios de credenciales de la cámara.
  • Produce un informe de hallazgos.

Tabla de contenidos


Inicio rápido con Docker

Instale Docker y ejecute:

docker run --rm -t --net=host ullaakut/cameradar --targets <target>

Ejemplo:

docker run --rm -t --net=host ullaakut/cameradar --targets 192.168.100.0/24

Esto escanea los puertos 554, 5554 y 8554 en la subred objetivo. Intenta enumerar los streams RTSP. Para todas las opciones, consulte Referencia de configuración.

  • Los objetivos pueden ser CIDRs, IPs, rangos de IP o un nombre de host.

    • Subred: 172.16.100.0/24
    • IP: 172.16.100.10
    • Host: localhost
    • Rango: 172.16.100.10-20
  • Para usar diccionarios personalizados, móntelos y pase ambas banderas:

    docker run --rm -t --net=host \
        -v /path/to/dictionaries:/tmp/dictionaries \
        ullaakut/cameradar \
        --custom-routes /tmp/dictionaries/my_routes \
        --custom-credentials /tmp/dictionaries/my_credentials.json \
        --targets 192.168.100.0/24
    

Instalar el binario

Use esta opción si Docker no está disponible o si desea una compilación local.

Dependencias

  • Go 1.25 o posterior

Pasos

  1. go install github.com/Ullaakut/cameradar/v6/cmd/cameradar@latest

El binario cameradar ahora está en su $GOPATH/bin. Para las banderas disponibles, consulte Referencia de configuración.

Instalar en Android (Termux)

Estos pasos resumen una configuración funcional de Termux para Android. Use Termux 117 desde F-Droid o el sitio oficial de Termux, no Google Play.

1) Configurar Termux y Alpine

Instale los paquetes necesarios en Termux:

pkg update
pkg install mc wget git nmap proot-distro

Instale Alpine e inicie sesión:

proot-distro install alpine
proot-distro login alpine

2) Instalar herramientas de compilación en Alpine

apk add wget git go gcc clang musl-dev make

3) Compilar Cameradar

Cree una ruta de módulo y clone el repositorio:

mkdir -p go/pkg/mod/github.com/Ullaakut
cd go/pkg/mod/github.com/Ullaakut
git clone https://github.com/Ullaakut/cameradar.git
cd cameradar/cmd/cameradar
go install

4) Ejecutar Cameradar

Copie los diccionarios y ejecute el binario:

mkdir -p /tmp
cp -r ../../dictionaries /tmp/dictionaries
/go/bin/cameradar --targets=<target> --custom-credentials=/tmp/dictionaries/credentials.json --custom-routes=/tmp/dictionaries/routes --ui=plain --debug 

Reemplace <target> con una IP, rango, host o subred que esté autorizado a probar.

Configuración

Los puertos predeterminados son 554, 5554, 8554, http, 322 y 8322. Si no especifica puertos, Cameradar usa esos.

Ejemplo de escaneo de puertos personalizados:

docker run --rm -t --net=host \
    ullaakut/cameradar \
    --ports "18554,19000-19010" \
    --targets localhost

Puede reemplazar los diccionarios predeterminados con sus propios archivos de rutas y credenciales. El repositorio proporciona diccionarios base en la carpeta dictionaries.

docker run --rm -t --net=host \
    -v /my/folder/with/dictionaries:/tmp/dictionaries \
    ullaakut/cameradar \
    --custom-routes /tmp/dictionaries/my_routes \
    --custom-credentials /tmp/dictionaries/my_credentials.json \
    --targets 172.19.124.0/24

RTSPS y certificados TLS

Use URLs rtsps:// para acceder a streams RTSPS.

  • Si el certificado del stream es emitido por una AC pública de confianza, no se necesita configuración adicional.
  • Si el certificado del stream es autofirmado o emitido por una AC privada, el almacén de confianza del sistema operativo puede rechazarlo.
  • En ese caso, apunte SSL_CERT_FILE al certificado de la AC (o al certificado del servidor para una configuración autofirmada) al ejecutar Cameradar.

Ejemplo con binario local:

SSL_CERT_FILE=/path/to/ca-or-server.crt \
        cameradar \
        --targets localhost \
        --ports 8322 \
        --skip-scan \
        --custom-routes routes.txt \
        --custom-credentials credentials.json

Ejemplo con Docker:

docker run --rm -t --net=host \
        -e SSL_CERT_FILE=/tmp/certs/server.crt \
        -v /path/to/certs:/tmp/certs:ro \
        ullaakut/cameradar \
        --targets localhost \
        --ports 8322

Si prefiere no usar SSL_CERT_FILE, agregue su certificado AC al almacén de confianza del sistema utilizado por su entorno de ejecución.

Omitir descubrimiento con --skip-scan

Si ya conoce los endpoints RTSP, puede omitir el descubrimiento y tratar cada objetivo y puerto como un candidato a stream. Este modo no ejecuta descubrimiento y puede ser útil en redes restringidas o cuando desee atacar un inventario conocido.

Omitir el descubrimiento significa:

  • Cameradar no ejecuta descubrimiento y no detecta modelos de dispositivos.
  • Los objetivos se resuelven en direcciones IP. Los nombres de host se resuelven mediante DNS.
  • Los bloques CIDR y los rangos IPv4 se expanden a cada dirección en el rango.
  • Los rangos grandes crean muchos objetivos, así que úselos con cuidado.

Ejemplo:

Categorías