Paso 4: Cómo lo hicimos: Hacking Video
Como resulta, hacking video fue realmente muy sencillo - nos miró a las peticiones de la red y encontré una buena cantidad de las solicitudes de snapshot.cgi
. Entrar en uno de estos en cromo produce una imagen fija cada vez que se cargó la página. Aseado!
Pero queríamos algo un poco más eficiente: el vídeo que parecía recibir el objeto ActiveX. El propio objeto ActiveX no parece demasiado útil para desmontar (inversión código ensamblador es cierto sobrevalorado), así que en lugar de ello abrimos Wireshark. Nos filtran la captura hasta la IP de nuestra cámara (captura -> Opciones -> filtro de captura) y comenzó la captura, antes de recargar la página de control de ActiveX en el navegador. Lo que encontramos fueron dos las solicitudes de audiostream.cgi
y livestream.cgi
, probablemente para el audio y el video.
Dejando a un lado la url del audio por el momento, recurrimos a Google a ver si alguien había descifrado un flujo de video de cámaras IP antes. En una búsqueda de "secuencia HTTP IP cámara" encontramos un práctico pequeño script en python para conseguir todo en OpenCV. Todos tomó fue reemplazar URL de la secuencia de comandos con nuestro, y estábamos en el negocio!
A continuación, llegó el momento de interceptar el audio.