Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
banrays — Óculos para detectar smart-glasses que têm câmeras. Ray-BANNED | Kitploit
Ferramentas/GitHubGitHub/nullpxl/banrays
Segurança de Sistemas EmbarcadosOSINT (Inteligência de Fontes Abertas)ReconhecimentoSegurança BluetoothSegurança IoTSegurança Sem FioPrivacidadeSegurança de HardwarePapers e PesquisaAprendizado e Educação
GitHubnullpxl/banrays
313523há 1 mêsRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

banrays

Óculos para detectar smart-glasses que têm câmeras. Ray-BANNED

Ver Repositório

Ban-Rays

Óculos para detectar óculos inteligentes que possuem câmeras

Estou experimentando 2 abordagens principais:

  • Óptica: classificar a câmera usando reflexos de luz.
  • Redes: análise de bluetooth e wi-fi.

Até agora, identificar dispositivos específicos com base no bluetooth (BLE) parece ser a abordagem mais fácil e confiável. A imagem abaixo é a primeira versão, que toca o jingle 'segredo encontrado' de The Legend of Zelda quando detecta um anúncio BLE dos Meta Raybans.

Estou essencialmente tratando este README como um diário de bordo, então ele terá minhas abordagens/ideias atuais.

Óptica

Ao enviar IR para as lentes das câmeras, podemos aproveitar o fato de que o sensor CMOS em uma câmera reflete a luz diretamente de volta à fonte (chamado de 'retrorefletividade' / 'efeito olho de gato') para identificar câmeras.

Isso não é exatamente uma ideia nova. Alguns pesquisadores em 2005 usaram essa propriedade para criar 'ambientes resistentes à captura' quando os smartphones com câmeras estavam ganhando popularidade.

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

Há até algumas pesquisas recentes (2024) que descobriram como classificar câmeras individuais com base em suas retroreflexões.

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

Agora temos uma situação semelhante à daqueles pesquisadores de 2005 em mãos, em que óculos inteligentes com câmeras ocultas parecem estar ficando mais populares. Então quero criar um par de óculos para identificá-los. Infelizmente, pelo que posso perceber, a maioria das pesquisas existentes nessa área registra dados com uma câmera e depois usa ML, muitos ângulos controlados, etc. para diferenciar superfícies refletivas normais de câmeras.

Eu me sentiria bem bobo se minha solução usasse sua própria câmera. Então vou evitar isso. Em vez disso, acho provável que terei que contar com consistência nas minhas 'varreduras' e criar um bom classificador com base nos dados do sinal. Por exemplo, você pode ver aqui que a câmera traseira do meu smartphone parece produzir picos rápidos e grandes, enquanto a tela brilhante cria uma onda mais prolongada.

Depois de testar alguns Meta Raybans, descobri que essa configuração não será suficiente. Aqui está um teste de algumas varreduras da área da câmera + a mesma área quando a lente está coberta. Você pode ver que a forma de onda é semelhante à que vi no teste anterior (pico curto para a câmera, mais largo caso contrário), mas é extremamente inconsistente e a força do sinal é muito fraca. Isso foi a cerca de 10 cm dos LEDs. Não notei muita diferença ao alternar entre LEDs de 940nm e 850nm.

Outra ideia que tive é criar um 'padrão' de varredura designado. O usuário (vestindo os óculos detectores) realizaria um padrão de varredura específico no alvo. Usando as formas de onda capturadas desses dados, talvez possamos identificar os raybans com mais precisão. Por exemplo, varrendo os óculos do alvo em uma abordagem 'esquerda, direita, cima, baixo'. Testei isso comparando os resultados dos Meta raybans com alguns aviadores que tinha por perto. Acho que a ideia por trás dessa abordagem é sólida (na verdade, é leve), mas pode precisar de mais ajustes.

Circuito IR

Para prototipagem, estou usando:

  • Arduino uno
  • um monte de LEDs IR de 940nm e 850nm
  • um fotodiodo como receptor
  • um transistor 2222A

TODOs de IR:

  • experimentar padrões de varredura

  • focar na informação espectral, tentar combinar dados de alguns comprimentos de onda diferentes

  • colimação?

  • trevor (autor do artigo sobre classificação de câmeras) mencionou em novembro que, se os óculos tiverem LiDAR, eu poderia simplesmente procurar por esses pulsos. os ray-bans não parecem ter isso, mas outros óculos inteligentes podem ter. este blog postado em dezembro tem algumas pesquisas interessantes sobre detectar câmeras de iphone com essa abordagem: https://www.atredis.com/blog/2025/11/20/designing-a-passive-lidar-detection-sensor

Redes

Isso tem sido mais complicado do que eu pensava! Minha abordagem atual aqui é identificar os Meta Raybans por meio de anúncios Bluetooth low-energy (BLE). Mas, só consegui detectar tráfego BLE durante 1) pareamento 2) inicialização. Às vezes também vejo o anúncio quando eles são retirados do estojo (já ligados), mas não de forma consistente.

O objetivo é detectá-los durante o uso, quando estão se comunicando com o telefone pareado, mas para ver esse tipo de tráfego BLE direcionado, eu precisaria primeiro ver o pacote CONNECT_REQ, que contém informações sobre para qual dos canais de comunicação saltar em sincronia (intervalo de salto, incremento de salto). Isso pode ser feito com um nRF52840 + o firmware ble-sniffer, mas isso não nega o fato de que você ainda precisa ver essa conexão inicial para começar a farejar.

Um pouco mais de contexto sobre BLE:

  • opera em 40 canais, 3 dos quais são dedicados apenas a anúncios, enquanto os outros são para dados reais.
  • dispositivos modernos (como os meta ray-bans) têm endereços MAC públicos randomizados por privacidade. Mesmo que a IEEE atribua certos prefixos de endereço MAC (OUI, 'Organizationally Unique Identifier'), a randomização significa que isso não parece ser útil para detecção.
  • para seguir uma conversa nos canais de dados, você precisa ter observado o pacote de solicitação de conexão inicial, que contém as informações necessárias.
  • os dados de anúncio contêm coisas boas, mas não são necessariamente enviados com muita frequência. quando anúncio estendido é usado para obter um tamanho de payload maior, os outros canais podem ser usados para isso.
  • https://academy.nordicsemi.com/courses/bluetooth-low-energy-fundamentals/lessons/lesson-2-bluetooth-le-advertising/topic/advertisement-packet/
  • você pode enviar um SCAN_REQ para dispositivos que estão fazendo anúncios e eles (podem escolher) responder com mais dados sobre si mesmos ('varredura ativa')

Quando ligados ou colocados em modo de pareamento (ou às vezes quando retirados do estojo), consigo detectar o dispositivo por meio dos dados do fabricante anunciados e UUIDs de serviço. Essas são partes dos dados de anúncio. 0x01AB é um ID atribuído pela SIG específico da Meta (atribuído pelo órgão de padrões Bluetooth), e 0xFD5F no UUID de serviço também é atribuído à Meta. No código você pode ver os outros números que estou usando para identificação.

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

Para qualquer tráfego bluetooth clássico (BTC), infelizmente o hardware parece um pouco mais complexo (leia-se: caro). Então, se eu quiser seguir por esse caminho, provavelmente precisarei de uma solução mais engenhosa.

Baixar ferramenta