Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
banrays — Gafas para detectar gafas inteligentes que tienen cámaras. Ray-BANNED | Kitploit
Herramientas/GitHubGitHub/nullpxl/banrays
Seguridad de Sistemas EmbebidosOSINT (Inteligencia de Fuentes Abiertas)ReconocimientoSeguridad BluetoothSeguridad IoTSeguridad InalámbricaPrivacidadSeguridad de HardwarePapers e InvestigaciónAprendizaje y Educación
GitHubnullpxl/banrays

banrays

3135hace 19 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Gafas para detectar gafas inteligentes que tienen cámaras. Ray-BANNED

Ver Repositorio

Ban-Rays

Gafas para detectar gafas inteligentes que tienen cámaras

Estoy experimentando con 2 enfoques principales:

  • Óptica: clasificar la cámara mediante reflejos de luz.
  • Redes: análisis de bluetooth y wi-fi.

Hasta ahora, la identificación de dispositivos específicos basada en bluetooth (BLE) parece ser el enfoque más fácil y fiable. La imagen de abajo es la primera versión, que reproduce el sonido de 'secreto encontrado' de The Legend of Zelda cuando detecta un anuncio BLE de las Meta Raybans.

Básicamente estoy tratando este README como un cuaderno de bitácora, por lo que contendrá mis enfoques/ideas actuales.

Óptica

Al enviar IR a las lentes de las cámaras, podemos aprovechar el hecho de que el sensor CMOS de una cámara refleja la luz directamente hacia la fuente (llamado 'retroreflectividad' / 'efecto ojo de gato') para identificar cámaras.

Esto no es exactamente una idea nueva. Algunos investigadores en 2005 usaron esta propiedad para crear 'entornos resistentes a la captura' cuando los teléfonos inteligentes con cámaras estaban ganando popularidad.

  • https://homes.cs.washington.edu/~shwetak/papers/cre.pdf

Incluso hay investigaciones recientes (2024) que descubrieron cómo clasificar cámaras individuales basándose en sus retroreflexiones.

  • https://opg.optica.org/oe/fulltext.cfm?uri=oe-32-8-13836

Ahora tenemos una situación similar a la de aquellos investigadores de 2005, donde las gafas inteligentes con cámaras ocultas parecen estar ganando popularidad. Así que quiero crear un par de gafas para identificarlas. Desafortunadamente, por lo que puedo decir, la mayoría de las investigaciones existentes en este ámbito registran datos con una cámara y luego usan ML, un montón de ángulos controlados, etc., para diferenciar entre superficies reflectantes normales y cámaras.

Me sentiría bastante tonto si mi solución usara su propia cámara. Así que evitaré eso. En cambio, creo que probablemente tendré que confiar en ser consistente con mis 'barridos' y crear un buen clasificador basado en datos de señal. Por ejemplo, puedes ver aquí que la cámara trasera de mi teléfono inteligente parece producir picos rápidos y grandes, mientras que la pantalla brillante crea una onda más prolongada.

Después de probar unas Meta Raybans, descubrí que esta configuración no va a ser suficiente. Aquí hay una prueba de algunos barridos del área de la cámara + la misma área cuando la lente está cubierta. Puedes ver que la forma de onda es similar a la que vi en la prueba anterior (pico corto para la cámara, más ancho en otros casos), pero es extremadamente inconsistente y la fuerza de la señal es muy débil. Esto fue desde aproximadamente 4 pulgadas de distancia de los LED. No noté mucha diferencia al intercambiar entre LED de 940nm y 850nm.

Así que al menos con el hardware actual al que tengo fácil acceso, esto probablemente no sea suficiente para diferenciar con precisión.

Otra idea que tuve es crear un 'patrón' de barrido designado. El usuario (usando las gafas detectoras) realizaría un patrón de escaneo específico del objetivo. Usando las formas de onda capturadas de estos datos, tal vez podamos identificar de manera más precisa las raybans. Por ejemplo, barriendo las gafas del objetivo en un enfoque de 'izquierda, derecha, arriba, abajo'. Probé esto comparando los resultados de las Meta raybans con unas aviadoras que tenía por aquí. Creo que la idea detrás de este enfoque es sólida (en realidad es luz), pero podría necesitar más trabajo.

Circuito IR

Para prototipado, estoy usando:

  • Arduino uno
  • un montón de LED IR de 940nm y 850nm
  • un fotodiodo como receptor
  • un transistor 2222A

Pendientes IR:

  • experimentar con patrones de barrido
  • centrarse en la información espectral, intentar combinar datos de algunas longitudes de onda diferentes
  • ¿colimación?
  • trevor (autor del artículo de clasificación de cámaras) mencionó en noviembre que si las gafas tienen LiDAR, podría simplemente buscar esos pulsos. los ray-bans no parecen tener esto, pero otras gafas inteligentes podrían. este blog publicado en diciembre tiene una investigación interesante sobre la detección de cámaras de iPhone con este enfoque: https://www.atredis.com/blog/2025/11/20/designing-a-passive-lidar-detection-sensor

Redes

¡Esto ha sido más complicado de lo que pensé inicialmente! Mi enfoque actual aquí es identificar las Meta Raybans mediante anuncios Bluetooth de baja energía (BLE). Pero, solo he podido detectar tráfico BLE durante 1) emparejamiento 2) encendido. A veces también veo el anuncio cuando se sacan del estuche (ya encendidas), pero no de manera consistente.

El objetivo es detectarlas durante su uso cuando se están comunicando con el teléfono emparejado, pero para ver este tipo de tráfico BLE dirigido, primero necesitaría ver el paquete CONNECT_REQ que contiene información sobre qué canales de comunicación saltar en sincronía (intervalo de salto, incremento de salto). Esto se puede hacer con un nRF52840 + el firmware ble-sniffer, pero eso no niega el hecho de que todavía necesitas ver esa conexión inicial para comenzar a esnifar.

Un poco más de contexto sobre BLE:

  • Opera en 40 canales, 3 de los cuales están dedicados solo para anuncios, mientras que los demás son para datos reales.
  • Los dispositivos modernos (como las meta ray-bans) tienen direcciones MAC públicas aleatorizadas por privacidad. Aunque IEEE asigna ciertos prefijos de dirección MAC (OUI, 'Organizationally Unique Identifier'), la aleatorización significa que esto no parece ser útil para la detección.
  • Para seguir una conversación en los canales de datos, necesitas haber observado el paquete de solicitud de conexión inicial que contiene la información requerida.
  • Los datos de anuncio contienen información útil, pero no se envían necesariamente con mucha frecuencia. Cuando se usa publicidad extendida para obtener un tamaño de carga útil mayor, los otros canales se pueden usar para ello.
  • https://academy.nordicsemi.com/courses/bluetooth-low-energy-fundamentals/lessons/lesson-2-bluetooth-le-advertising/topic/advertisement-packet/
  • Puedes enviar un SCAN_REQ a los dispositivos que están anunciando y ellos (pueden optar por) responder con más datos sobre sí mismos ('escaneo activo').

Cuando se encienden o se ponen en modo de emparejamiento (o a veces cuando se sacan del estuche), puedo detectar el dispositivo a través de los datos de fabricante anunciados y los UUID de servicio. Estas son partes de los datos de anuncio. 0x01AB es un ID asignado por SIG específico de Meta (asignado por el organismo de estándares Bluetooth), y 0xFD5F en el UUID de servicio también está asignado a Meta. En el código puedes ver los otros números que estoy usando para la identificación.

  • https://www.bluetooth.com/wp-content/uploads/Files/Specification/HTML/Assigned_Numbers/out/en/Assigned_Numbers.pdf

Para cualquier tráfico de bluetooth clásico (BTC), desafortunadamente el hardware parece un poco más complicado (léase: caro). Así que si quiero seguir por esta ruta, probablemente necesitaré una solución más ingeniosa aquí.

captura cuando las gafas están encendidas:

root@kitploit:~
[01:07:06] RSSI: -59 dBm
Address: XX:XX:XX:XX:XX:XX
Name: Unknown

META/LUXOTTICA DEVICE DETECTED!
  Manufacturer: Meta (0x01AB)
  Service UUID: Meta (0xFD5F) (0000fd5f-0000-1000-8000-00805f9b34fb)

Manufacturer Data:
  Company ID: Meta (0x01AB)
  Data: 020102102716e4

Service UUIDs: ['0000fd5f-0000-1000-8000-00805f9b34fb']

Pendientes de REDES:

  • Leer: https://dl.acm.org/doi/10.1145/3548606.3559372 y cualquier otro artículo reciente
  • Cosas de Wi-Fi Direct con esp32
  • ver si el nrf52840 ve algo en adv que el esp32 no ve.
    • Compré el chip (xiao nrf52840) para probar el esnifado, pero debería haber comprado el dongle o un kit de desarrollo. el firmware nordic ble-sniffer no está hecho para él, por lo que está tomando más esfuerzo.
  • ¿Anunciarán los teléfonos con más frecuencia y mostrarán servicios específicos? ¿Algo que el teléfono pueda hacer de manera diferente cuando está emparejado con un dispositivo activo que pueda usar como canal secundario?
  • leer más sobre los modos PHY

NOTA: las ray-bans que estaba usando para las pruebas no están disponibles actualmente, así que estoy un poco bloqueado :(


Gracias a Trevor Seets y Junming Chen por sus consejos en óptica y BLE (respectivamente). También a Sohail por prestarme las meta raybans para probar.


CC BY-NC-SA 4.0

Este trabajo está licenciado bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 4.0 Internacional.

CC BY-NC-SA 4.0

Descargar herramienta