Kamerka: Construyendo un mapa interactivo de cámaras desde Shodan

camara

Kamerka es un script que crea un mapa con cámaras basado en su geolocalización o dirección exacta. Utiliza la API de Shodan para buscar cámaras, Geopy para encontrar direcciones y medir distancias, y Folium para dibujar un mapa. El script puede ser descargado desde: https://github.com/woj-ciech/kamerka

Kamerka es una prueba de concepto para visualizar cámaras desde la API de Shodan en un mapa real. Algunas de las cámaras se dejan abiertas sin autenticación, por lo que no es necesario tener ninguna habilidad de hacking para obtener acceso y, dependiendo de la ubicación de la cámara, puede obtener una vista interesante en algunos casos. Con mucha suerte, puede ayudarlo con las investigaciones OSINT o la geolocalización de fotos. Imagina que tienes una foto para geolocalizar y encontraste una cámara abierta que apunta exactamente a este lugar, o en algún lugar cercano, lo que puede darte una pista.

Los puntos más significativos en el script son: Shodan API, GeoPy y Folium library.

Shodan nos permite encontrar cualquier dispositivo en una ubicación determinada en función de la longitud, la latitud y el radio, responsable de esto es el filtro "geo". A continuación, se agrega el filtro "dispositivo" para mostrar solo cámaras web. Todo el comando se ve así: "geo: 37.235, -115.811111,5 device: webcam".

Gracias a Geopy, puede buscar por dirección o edificio en particular. Además, mide la distancia entre la cámara y el objetivo inicial.

Folium es una increíble biblioteca GIS (Sistema de Información Geográfica) con muchas opciones prácticas y se ve realmente genial. Los resultados de Shodan se pasan a Folium para crear un mapa con marcadores que se refieren a cada cámara web. Los marcadores están en dos colores: rojo significa que la cámara probablemente tenga alguna forma de autenticación y no devuelve 200 códigos OK, mientras que el color verde indica que está abierto o muestra algún panel de inicio de sesión.

Además, los marcadores están agrupados, en caso de que haya muchos en un solo lugar. Después de hacer clic en cualquiera, se muestra información como IP, modelo y distancia.

Antes de iniciar, dejamos claro que este script solo funciona si usted posee un plan de paga en Shodan. Vea https://developer.shodan.io/billing/signup

Este artículo es con fines netamente educativos. No pruebe ninguna cámara web si no es el propietario del dispositivo.

· Instalación

Kamerka puede ser instalado en cualquier distribución GNU/Linux que tenga el intérprete de Python2 instalado. Para hacerlo, ejecutamos las siguientes órdenes en su terminal:

# Clonar el script desde Github y cambiar el directorio al de descarga
$ git clone https://github.com/woj-ciech/kamerka.git && cd kamerka

# Instalar los módulos de python2 requeridos para el script
$ pip install -r requirements.txt --user

Para poder usar Kamerka, necesitamos añadir nuestra API KEY de shodan en la línea "API_KEY" dentro de kamerka.py

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import folium
import shodan
from folium.plugins import MarkerCluster
import argparse
from geopy.geocoders import Nominatim
from colorama import Fore
import sys
from geopy import distance
from argparse import RawTextHelpFormatter

API_KEY = 'Aquí debemos colocar nuestra API KEY de Shodan' 

· Uso de Kamerka

Kamerka se usa desde la línea de comandos Linux y tiene dos modalidades de uso:

- Búsqueda por dirección

Para realizar la búsqueda por dirección, basta con teclear lo siguiente en nuestra terminal:

# Búsqueda por dirección
$ python2 kamerka.py --address "White House"

Con eso, estaríamos buscando cámaras que se encuentren en un radio de 2 kilómetros a la Casa Blanca, por ejemplo.

casa blanca

- Busqueda por coordenadas

Para realizar la búsqueda por coordenadas basta con ejecutar;

# Búsqueda por coordenadas
$ python2 kamerka.py --coordinates "coordenadas" --dark

Las siguientes coordenadas son del último dump de Wikileaks y muestra cámaras cerca de uno de los almacenes secretos de Amazon.

amazon

El tema oscuro se puede configurar con la opción "--dark". Si tiene problemas para procesar OpenStreetMap, debe usar un tema oscuro.

· Conclusión

Por lo general, a las personas no les importa la seguridad de IoT y dejan sus cámaras abiertas o no actualizadas. Como resultado, se agregan a las botnets y son responsables de los ataques DDoS. Pero también se puede utilizar en técnicas de espionaje y reconocimiento. Puede buscar en todo el mundo y comprobar si hay alguna cámara abierta en un lugar sensible, que pueda registrar los mismos eventos o edificios que no deberían verse.

Síguenos en FacebookTwitterunete a nuestro chat en Discord y no olvides compartirnos en las redes sociales. También puede hacernos una donación o comprar nuestros servicios.

Acerca del autor

Especialista en Seguridad Informática bajo certificación OSCP, experto en técnicas de privacidad y seguridad en la red, desarrollador back-end, miembro de la FSF y Fundador de Security Hack Labs. Desarrollador de la distribución de hacking BlackArch Linux. Twitter: @edu4rdshl XMPP/Email: [email protected]