Smart male chastity lock cock-up

TL;DR

  • Smart Bluetooth masculino castidade bloqueio, projetado para o usuário dar de controle remoto para um confiáveis 3ª festa usando o mobile app/API
  • Vários API falhas significava que qualquer um poderia bloquear remotamente todos os dispositivos e impedir que os usuários de lançar-se
  • Remoção, em seguida, requer uma rebarbadora, ou similar, usada, em estreita proximidade com a delicada e sensível áreas
  • localização Precisa do utilizador dados também vazou pela API, incluindo informações pessoais e conversas privadas
  • Fornecedor inicialmente sensível, em seguida, perdeu três de remediação prazos que eles mesmos definiram mais de 6 meses período
  • , em Seguida, finalmente recusou-se a interagir mais, mesmo que a maioria dos problemas foram resolvidos na migração para a API v2, ainda API v1 inexcusably esquerda disponível
  • Este post é publicado em coordenação com Internet de Dongs
  • 27/01/2021 Eles afirmam que o móvel e a API de problemas já foram resolvidos.

Smart adult toys and us

We haven’t written about smart adult toys in a long time, but the Qiui Cellmate chastity cage was simply too interesting to pass by. Fomos avisados sobre o dispositivo de castidade para adultos, concebido para trancar o apêndice do utilizador.

Existem outros dispositivos de castidade masculina disponíveis, mas este é um mecanismo de bloqueio e grampo Bluetooth (BLE) habilitado com um aplicativo móvel companheiro. A ideia é que o utilizador pode dar o controlo da fechadura a outra pessoa.não estamos no ramo da vergonha. As pessoas devem poder utilizar estes dispositivos de forma segura e segura, sem o risco de fuga de dados pessoais sensíveis.

a segurança do campo teledildonics é interessante por si só. Vale a pena notar que as vendas de brinquedos inteligentes para adultos aumentaram significativamente durante o recente bloqueio.

Qual é o risco para os utilizadores?

descobrimos que atacantes remotos poderiam impedir que o bloqueio Bluetooth fosse aberto, bloqueando permanentemente o usuário no dispositivo. Não há destranca física. O tubo é travado em um anel usado em torno da base dos genitais, tornando as coisas inacessíveis. Um moedor de ângulo ou outra ferramenta pesada adequada seria necessária para cortar o usuário livre.

localização, senha de texto simples e outros dados pessoais também vazaram, sem necessidade de autenticação, pela API.

tivemos problemas particulares durante o processo de divulgação, como normalmente pediríamos ao fornecedor para retirar uma API Vazante enquanto a remediação estava sendo implementada. No entanto, qualquer pessoa que atualmente usa o dispositivo quando a API foi desligada também seria permanentemente bloqueado!como você verá no cronograma de divulgação no final deste post, algumas questões foram corrigidas, mas outras não, e o fornecedor simplesmente parou de responder a nós, jornalistas e varejistas. Dada a natureza trivial de encontrar algumas dessas questões, e que a empresa está trabalhando em outro dispositivo que coloca ainda maior potencial dano físico (um dispositivo de castidade “interno”), nós nos sentimos obrigados a publicar essas descobertas neste momento.

as questões

nós editamos detalhes significativos aqui.

app móvel

encontrámos uma grave vulnerabilidade à privacidade muito rapidamente com o app móvel: todos os parâmetros da API não foram autenticados usando apenas um “memberCode” de longo prazo para fazer pedidos. O próprio memberCode é um pouco determinístico e é baseado na data em que um usuário se inscreveu para o serviço, no entanto, encontramos uma maneira ainda mais fácil usando um “código amigo”mais curto.

Um pedido com isso, seis dígitos “amigo” código retornado uma enorme quantidade de informação sobre o usuário, incluindo informações confidenciais, tais como seu nome, número de telefone, data de aniversário, a exata coordenadas de onde o aplicativo foi aberto, a sua mais “memberCode” valor, e o usuário da senha de texto sem formatação (não precisamos).

não levaria mais de dois dias para um atacante extrair toda a base de dados de usuários e usá-la para chantagem ou phishing.

Números e dados de localização vazados

fomos capazes de amostrar algumas IDs aleatoriamente, mostrando locais de usuário no momento das inscrições do aplicativo. Tenha em mente que este é apenas um pequeno subconjunto de usuários a partir dos dados disponíveis. Deitamos fora qualquer informação pessoal imediatamente.

memberCode dados = ms-DoS para o usuário

Agora temos o mais memberCode podemos buscar todos os dispositivos associados a essa pessoa:

GET /list?memberCode=20200409xxxxxxxx HTTP/1.1Host: qiuitoy.comConnection: close "deviceId": 0, "deviceCode": "201909xxxxxxxxxx", "deviceName": "Cellmatexxxx", "deviceNick": "Cellmatexxxx", "deviceNumber": "QIUIxxxxxxxxx", "deviceType": 2, "deviceBlue": null, "deviceBlueAddr": "F9:34:02:XX:XX:XX", "isEncrypt": 1,

E assim temos que, podemos trabalhar as permissões que essa pessoa tem mais que de bloqueio (de modo que eles podem desbloquear-se ou ter que pedir a alguém):

GET /wear?memberCode=20200409xxxxxxx&deviceCode=20191204xxxxxx HTTP/1.1Host: qiuitoy.com

E se eles podem, nós podemos flip que então eles estão agora bloqueadas do dispositivo:

POST /binding HTTP/1.1Host: qiuitoy.comConnection: closememberName=Pwned&memberCode=20200409xxxxxx&deviceCode=20191204xxxxxx

E podemos fazer isso para todos, muito rapidamente, o bloqueio de todos, ou de fora. Também não há nenhuma função de anulação de emergência, por isso, se estiveres trancado, não há saída. Isto pode ou não ser considerado um recurso!

emissões de BLE

a implementação de BLE em si requer um pedido de API para gerar um comando de desbloqueio baseado num token previamente escrito no lock. É possível que poderíamos analisar as solicitações e respostas para gerar a chave certa, ou fazer engenharia reversa do bloqueio de hardware em si…

O acima é obtido a partir da descompilado aplicativo para Android e ligando-a com Frida podemos ver o notifica o (36f6) e escreve (36f5) associado a verificar o nível da bateria primeiro e, em seguida, o desbloqueio (a terceira gravação):

 BluetoothGattCallback constructor called from com.apicloud.uzble.AndroidBle$2 UUID: 000036f5-0000-1000-8000-00805f9b34fb data: 0x56f3430769ddd6e1603xxx UUID: 000036f6-0000-1000-8000-00805f9b34fb data: 0xe01012b3074d111c98bxxx UUID: 000036f5-0000-1000-8000-00805f9b34fb data: 0x25f8a92325fd9cfc7ea79xxx UUID: 000036f6-0000-1000-8000-00805f9b34fb data: 0x2717dd996ab4a017a6ceexxx UUID: 000036f5-0000-1000-8000-00805f9b34fb data: 0x9ee90373a2d3f156b3557xxx UUID: 000036f6-0000-1000-8000-00805f9b34fb data: 0xbcdaea06fa1cb94f3f1c2596xxx UUID: 000036f5-0000-1000-8000-00805f9b34fb data: 0x9ee90373a2d3f156b3557d52xxxx UUID: 000036f6-0000-1000-8000-00805f9b34fb data: 0xc04dab04c54c818d808a78c79adef839

But wait, that hex from the Android app, and the BLE characteristics look horrivelmente familiar. É exatamente a mesma implementação que o Nokelock que vimos, exceto que o nome do dispositivo anunciado é “OKGSS101”.

a chave de encriptação por bloqueio AES é devolvida na chamada da API listando os dispositivos que fizemos anteriormente. Está a libertar alguém?trancado? Aqui está uma solução

Se você se encontrar bloqueado, você provavelmente está se perguntando como você pode sair sem ferramentas pesadas ou uma visita à sala de emergência…

O projeto do pino de travamento usa um motor de retirá-la e, infelizmente, não ferrosos, de modo nenhum fácil utilização de magnetos, nem é “bater” aberto (como você vai usá-lo). Eu tive um pouco de sucesso com um shim feito de uma lata de corte, mas a idéia de metal pontiagudo perto de qualquer coisa importante não é ideal.

O “melhor” alternativa é arrombar a placa de circuito área onde o botão frontal e a luz é:

É colado, mas saiu sem muito esforço ou danos. 3 volts (duas baterias AA) aplicadas aos fios brancos e amarelos é suficiente para conduzir o motor desbloqueado diretamente( branco = negativo, amarelo = positivo), uma técnica conhecida como “spiking”.seu departamento de emergência local provavelmente terá as ferramentas certas para cortar o metal com segurança e seria o seu melhor primeiro porto de escala!

conclusão

para uma ameaça realista, o risco de fuga de dados pessoais parece mais provável de ser explorado e dar recompensa a um atacante.vários países têm leis opressivas que podem expor os usuários desses tipos de dispositivos a interesses injustificados da aplicação da lei e dos fanáticos.além disso, é provável que os utilizadores queiram manter a sua vida privada. Eles devem esperar privacidade por padrão e segurança por design. Se alguém quiser compartilhar informações muito privadas, então isso deve ser por intenção explícita do Usuário.muitos vendedores de brinquedos adultos têm mostrado quase total desrespeito pela privacidade e segurança nos últimos anos. Felizmente, projectos como a Internet dos Dongs ajudaram a orientar muitos para uma maior segurança. Claramente Qiui não tinha recebido a mensagem.

Disclosure timeline

Disclosure was not as seamless as we might initially hoped:

April 20th 2020: we messaged them asking who to report the issue to. Eles responderam muito rapidamente. Fixe!

Nenhum problema, então nós tentamos novamente sem PGP:

Então, nós enviamos os detalhes. O silêncio reinou.26 de Maio de 2020: nós pressionamos um pouco mais, eles responderam, afirmando que eles iriam corrigir até 6 de junho.

11/06/2020: uma versão atualizada foi implantada para o App& Play Stores. Isso resolveu principalmente questões com pedidos agora sendo forçados a autenticar. No entanto, os pontos finais da API mais antigos foram deixados para cima, e as novas APIs ainda devolveram os locais exactos do utilizador.17 de junho de 2020: enviámos uma mensagem detalhando os problemas residuais, sem resposta.25 de junho de 2020: nós estendemos a mão novamente, através de um jornalista, Qiui disse que eles não queriam corrigir (ou não podiam) como eles “só” tinham US $50.000.

30 de junho de 2020: enviámos um e-mail de Seguimento (e twitter DM) com possíveis correcções para os problemas restantes (e traduzi-lo para Chinês apenas por precaução), sem resposta.10 de julho de 2020: contactámos dois retalhistas britânicos do dispositivo para os sensibilizar para as questões. Um deles retirou-o da venda e contactou os grossistas estabelecidos na UE. Qiui respondeu aos varejistas que as questões restantes seriam corrigidas “em agosto”.11 de setembro de 2020: RenderMan do @InternetOfDongs entrou em contato conosco também: ele havia ajudado outro pesquisador através do processo de Divulgação Com Qiui. @MikeTsenatek tinha encontrado um problema de reset de senha de forma independente e também estava lutando para ser ouvido pelo fornecedor. Por acaso, ele reparou num tweet meu há algum tempo, pensou que podíamos estar a olhar para este dispositivo e contactou-nos.tivemos um grande chamamento juntos, onde trocamos experiências muito semelhantes de interações com Qiui! A escrita dele está disponível aqui.isto reforçou a nossa decisão de publicar: é evidente que outros provavelmente considerariam estas questões independentes de nós, pelo que o caso de interesse público foi feito em nossas mentes.RenderMan definitivamente merece elogios por seus esforços contínuos para mediar conversas entre pesquisadores e vendedores na arena dos brinquedos adultos. Alguns fornecedores fizeram melhorias significativas na segurança de seus produtos e privacidade como resultado de seu trabalho árduo.4 de outubro de 2020: fomos contactados por um terceiro investigador com preocupações semelhantes.6 de outubro de 2020: publicamos em coordenação com as outras partes.

Update 27/01/2021

qiui ‘ s European distributor asked us to provide an update to this blog in light of developments. Contactaram-nos a 28 de dezembro, explicando que o problema era a aplicação móvel. Este não era o nosso entendimento, dado que as questões de segurança acima estão na API.

de qualquer forma, Nós pedimos evidências disso e foram enviados um relatório de teste da caneta do aplicativo móvel por um terceiro partido .

O Relatório era claramente do aplicativo móvel e tinha feito uma série de recomendações.voltamos ao distribuidor e pedimos uma cópia de um relatório de teste da caneta da API.isto chegou no dia 19 de Janeiro. Uma série de outras questões foram notadas, resultado de um teste de Caneta totalmente autorizado, que não tivemos Permissão para fazer durante a nossa pesquisa original.

eles afirmam que as questões móveis e API já foram resolvidas.

Deixe uma resposta

O seu endereço de email não será publicado.