D-Link DCS-8000LH - notas para convertir una cámara en la nube en una cámara IP administrada localmente
(github.com/bmork)- Registro de trabajo y conjunto de herramientas para convertir la D-Link DCS-8000LH en una cámara IP administrada localmente sin registrarla en la app ni en el servicio en la nube de mydlink
- El firmware original 2.01.03 está atado a la app y al servicio en la nube de mydlink, y no ofrece una API HTTP local compatible con NIPCA ni streaming de video por HTTP·HTTPS·RTSP
- Las funciones principales logradas incluyen configuración de red y de contraseña de administrador por Bluetooth LE, streaming directo MPEG-TS por HTTP·HTTPS, streaming directo por RTSP y una implementación de la API NIPCA que admite ajustes como LED y
nightmode - El archivo incluido
dcs8000lh-configure.pyusa el PIN Code de la etiqueta de la cámara y la dirección MAC de Bluetooth para buscar redes WiFi, configurar WiFi, mostrar información de red, volcar información del sistema, ejecutar comandos en la cámara, habilitar telnetd·lighttpd·RTSP y permitir firmware sin firmar - El cambio completo requiere modificar uno de los sistemas de archivos dentro de la cámara, y existe el riesgo de dejarla inutilizable si algo sale mal
- Los objetivos de prueba y desarrollo son los firmwares v2.01.03 y v2.02.02, y el procedimiento final completo solo fue probado en v2.02.02
- El entorno necesario es una PC Linux con controlador Bluetooth, Python 3, bluepy, WiFi WPA2-PSK y su contraseña,
mksquashfsdesquashfs-tools, y un servidor tftp para respaldo o un servidor web que reciba subida de archivos - Después de la modificación, se puede acceder al streaming HTTP·HTTPS en
https://카메라IP/video/mpegts.cgiohttps://카메라IP/video/flv.cgi, y la autenticación usa el usuarioadminy como contraseña el PIN Code de la cámara - Si solo se necesita RTSP, se puede habilitar acceso RTSP permanente en el firmware original de D-Link sin modificarlo usando la opción Bluetooth
--rtsp - La partición
userdatase usa para las herramientas en la nube de mydlink, y la actualización de firmware de ejemplo solo cambia esta partición, dejando intactos el kernel y el rootfs del sistema operativo de la cámara D-Link - El respaldo es necesario antes de hacer cambios; la partición
pibcontiene datos específicos de esa cámara, como número de modelo, revisión de hardware, dirección MAC, bits de funciones, clave privada, PIN Code y contraseña - El servidor web local no ofrece una GUI web, sino una API directa de administración de la cámara que requiere autenticación, y con la API NIPCA se pueden controlar la mayoría de los ajustes de la cámara desde herramientas de línea de comandos como
curl
1 comentarios
Comentarios en Hacker News
Con casi cualquier cámara IP o cámara USB también se puede armar algo parecido, con menor latencia y con la máxima calidad que soporte la cámara
Si interesa, podría resumir rápido este tipo de configuración o armar un repositorio con los archivos de configuración necesarios
No he podido encontrar enchufes inteligentes en el mercado que no se conecten a la nube para poder controlarlos desde cualquier lugar. No quiero controlarlos desde cualquier parte, solo quiero controlarlos dentro de mi LAN
Edit: al menos no pude encontrar ninguno en amazon.in
https://www.amazon.in/s?k=smart+plugs
Me regalaron una cámara IP china sin marca que ni siquiera aparece en búsquedas, y la uso como cámara de seguridad exterior. La cámara guarda de forma continua en una tarjeta SD y no uso la opción de nube de pago. Puedo ver el video en vivo por Internet con la app KP WIFICAM
También puedo ver o descargar desde el menú las grabaciones de los últimos días guardadas en la SD, pero están divididas en segmentos de 10 minutos, así que aunque quiera bajar solo un día completo, tengo que descargar manualmente casi 100 archivos
¿Cómo podría automatizar o simplificar la descarga de estos clips desde la tarjeta SD a mi laptop? ¿Cómo obtiene la app móvil la lista de grabaciones y cómo descarga los archivos?
Probé Agent-DVR y encontré el feed de la cámara en formato ONVIF. Así que supongo que la app móvil también usa este protocolo https://stackoverflow.com/questions/29159422/get-data-from-l..., pero ¿hay alguna herramienta usable en Linux para esto sin tener que pasar días instalando un entorno de desarrollo y escribiendo código yo mismo?
Mi pareja usa cuatro apps distintas, una por cada cámara, y todas tienen problemas absurdos, las tarjetas SD son demasiado pequeñas, y cobran precios ridículos por almacenamiento en la nube que no informan bien antes de la compra
Podríamos comprar cámaras nuevas, pero si compramos productos baratos es muy probable que repitamos por quinta vez el mismo error
Aunque el software costara 6 veces más que las cámaras, igual valdría la pena comprarlo
También estaría bien un servicio donde alguien en un país de bajos salarios vigile una pared de cámaras y las revise una por una en rotación. Es exactamente el servicio por el que las empresas de seguridad occidentales cobran miles de dólares al mes; es prácticamente un asalto
Es muy frustrante que para un producto tan importante como una cámara IP no exista ni un solo producto de consumo que se pueda usar en local sin la nube del fabricante
Sé que se puede montar algo con Raspberry Pi, pero también quiero funciones convenientes de productos normales, como control de motor y alertas de detección de movimiento de buen nivel
Si existiera un producto donde no tuviera que desarrollar todo eso por mi cuenta, pagaría sin problema 2 o 3 veces el precio actual de los productos de consumo
Yo ejecuto Synology Surveillance Station en un NAS local y controlo cámaras ReoLink. También pueden girar y tienen detección de movimiento
También hay muchos casos de uso más avanzados con cámaras IP locales. Ayer compré el NVR de “deep learning” de Synology, y además de las funciones estándar de zoom, paneo e inclinación en una cámara local Domar, soporta detección de personas, reconocimiento facial, reconocimiento de placas, etc.
Todas mis cámaras son modelos baratos de Aliexpress, nunca las he dejado conectarse a Internet y tampoco he instalado apps sospechosas del fabricante. Solo pongo en la misma VLAN el equipo donde corre Blue Iris y hago ahí todo lo relacionado con las cámaras
Soporta PTZ, detección de movimiento muy detallada, alertas y hasta disparadores para ejecutar apps externas, así que se puede integrar como quieras
El costo total es de unos 30 dólares por cámara PoE IP barata, y Blue Iris cuesta alrededor de 80 dólares
Lo único es que no se promocionan mucho en los canales minoristas para consumo
Se lo recomiendo a cualquiera que odie la nube o quiera una configuración de dos capas por razones válidas
Lo he usado durante 2 años junto con varias Wyze Cam V2 y, salvo que la sensibilidad en baja luz no es tan buena como la de la V3, ha sido una configuración bastante sólida y rápida, sin mayores problemas
https://github.com/EliasKotlyar/Xiaomi-Dafang-Hacks
Llevo tiempo buscando cámaras baratas de 20 a 30 dólares que se puedan usar con una configuración confiable como Dafang-hacks, pero todavía no he encontrado una alternativa decente
He pensado en reemplazar las cámaras en la nube, pero igual necesito grabación, alertas y almacenamiento fuera del sitio
¿Qué sería hoy lo mejor para una configuración así? ¿Correr Zoneminder en casa y usar Syncthing para guardar fuera del sitio en un VPS?
Este tutorial es extremadamente minucioso
Impresiona cuánto tiempo debió invertir Bjorn en desarrollar esta técnica y documentarla con tanto cuidado
Entiendo que es ingenioso y que tiene espíritu hacker, pero considerando la seriedad del caso de uso, solo me hace pensar “¿por qué?”
¿De verdad querrías depender de un hackeo de firmware en una cámara D-Link mediocre como único medio para impedir que un ladrón se robe tus cosas? Por unos cientos de dólares puedes comprar una cámara IP decente de Amcrest, Dahua o TP-Link y conectarla por PoE; al menos así tendrías alguna posibilidad de identificar a quien robó
Si no colocas cámaras de buena calidad en los lugares correctos, al final solo te quedará una foto borrosa de cómo se llevan tus cosas. Lo digo por experiencia
Una cámara sirve para vigilar un espacio y, en el mejor de los casos, grabar a alguien haciendo algo malo con suficiente detalle como para que sirva en un juicio. Si la calidad es suficiente y grabó bien el incidente, funcionalmente no hay mucha diferencia entre una D-Link hackeada y una cámara Nest
D-Link también está haciendo la descontinuación del servicio de varias cámaras, lo que significa apagar el servicio en la nube, volver inútiles las cámaras y obligarte a comprar algo nuevo
Estoy intentando hackear una DCS-5030L. Ya hice un volcado del firmware de la SPI EPROM y desensamblé u-boot con Ghidra para intentar parchear el arranque seguro
En la foto censuraron parcialmente el ID, pero no taparon el código de barras de abajo
No sé si esos valores son simplemente una forma codificada, pero vale la pena tenerlo en cuenta
[1] https://github.com/markusfisch/BinaryEye
Para acceso puramente local a la red con una cámara de red, he elegido productos con soporte ONVIF y los he conectado a Netcam Studio
https://www.netcamstudio.com/
Después, se bloquea el acceso externo a la red de la IP de la cámara para evitar que contacte a los servidores del fabricante
Simplemente uso una cámara USB normal y hago streaming HTTP de MJPEG con ustreamer
Funciona sorprendentemente bien, pero todo el procesamiento y almacenamiento tienes que implementarlo tú mismo. Lo único que obtienes es una URL de captura y una URL de streaming
Me gusta esta idea
Todas mis cámaras IP suben por FTP a mi servidor, y el servidor las sube de inmediato a Google Drive. Funciona perfectamente y es barato, pero igual sigue siendo una cámara china conectada a internet
¿Habrá una lista de cámaras que se puedan convertir de esta manera?
Originalmente quería USB→GDrive, pero descubrí que mi escáner Brother no permite sobreescribir la configuración de escaneo desde la pantalla cuando usas USB, mientras que por FTP sí
¿Qué usas tú para esa transferencia?
Crear una red separada solo para las cámaras, por ejemplo con un router Wi-Fi aparte
Averiguar la IP del servidor al que la cámara envía el video
Conectar una PC o una Raspberry Pi al puerto WAN de ese router Wi-Fi para cámaras
Asignar a esa PC o Raspberry Pi todas las IP de servidor de cámara que encontraste antes
Entonces deberías poder recibir todo el tráfico que vaya de la cámara al servidor, y luego procesarlo como quieras
Le cargué un firmware personalizado por sideload a una cámara Yi y la uso como una cámara Wi-Fi confiable. Esa VLAN no tiene acceso a internet en absoluto
Llevo mucho tiempo dando vueltas con algo así. Todo lo que encuentro carece de soporte FTP/SFTP y quiere mandar fotos por LTE a una dirección de correo
El objetivo es simplemente una cámara meteorológica. Basta con subir una imagen cada minuto. Algo simple, como una webcam vieja de los 2000
Me topé con un problema no resuelto con una rPi3 y una cámara Logitech, me frustré y casi me rendí