Um script foi desenvolvido para roubar um código PIN por meio de um navegador de smartphone


Vários métodos de entrada afetam os ângulos de inclinação, mas a rede neural reconhece o código PIN em qualquer caso após a coleta de dados pelo script

Como você sabe, qualquer smartphone possui muitos sensores - GPS, luz, sensores de orientação, sensores de movimento e cerca de 20 sensores - todos eles fornecem dados continuamente para que o smartphone possa interagir com o mundo físico circundante. Os desenvolvedores têm várias maneiras de acessar informações desses sensores, inclusive por meio de um navegador móvel, de acordo com a API Javascript oficial .

Este método abre um amplo campo de possibilidades para hackers remotos. Por exemplo, especialistas da Escola de Ciência da Computação da Universidade de Newcastle desenvolveram o script PINlogger.js , com o qual você pode determinar, através do navegador, quais botões o usuário clica no teclado na tela. O script lê informações dos sensores de inclinação do dispositivo móvel a cada clique. Surpreendentemente, em alguns navegadores (Safari), o script iniciado no navegador continua a coletar dados mesmo de uma tela bloqueada. Funciona da mesma maneira, se em uma guia vizinha você digitar uma senha no banco on-line sem fechar a guia anterior.

Esse método é adequado para roubar um código PIN por meio de um site mal-intencionado com um script e de qualquer aplicativo móvel que tenha acesso às informações dos sensores. A precisão do reconhecimento dos dígitos do PIN é bastante alta. Um código PIN de quatro dígitos é reconhecido na primeira tentativa com uma probabilidade de 70%, na segunda - 86%, na terceira - 94% e na quinta tentativa - com uma probabilidade de 98% para diferentes usuários ou 99% para um usuário.


Os vetores de ataque das guias vizinhas (b) funcionam apenas no Chrome e Dolphin para iOS e o ataque a partir do quadro (a) funciona em todos os navegadores populares, incluindo Safari, Chrome, Firefox, Opera e Dolphin

Para uma demonstração prática do ataque, uma interface especial foi desenvolvida para inserir códigos PIN de quatro dígitos. A parte do cliente enviou ao servidor leituras de sensores de orientação e movimento. A parte do servidor foi implementada no Node.js e as leituras do sensor foram armazenadas no banco de dados MobgoLab.

Nesta demonstração, foi fácil para os pesquisadores identificarem eventos do teclado usando o evento onkeydown . Os autores do trabalho científico chamam a atenção para o fato de que uma abordagem semelhante é usada em outros programas para coletar códigos PIN para informações de sensores, como TouchLogger e TapLogger . Se você precisar detectar cliques na tela bloqueada, pode ser necessário um cenário mais complexo para segmentar os dados do sensor, a fim de isolar os dados necessários. Por exemplo, isso pode ser feito medindo as amplitudes de pico do sinal e usando sensores adicionais, como mostrado em trabalhos científicos anteriores . O código para inserir dados é publicado no GitHub .

O banco de dados acumula informações sobre cliques e leituras de sensores no momento da pressão. Cada um dos 10 voluntários inseriu cinco vezes 50 códigos PIN de quatro dígitos (um total de 2488 códigos PIN corretamente inseridos). Esse conjunto de dados foi usado para extrair características e treinar a rede neural (70% dos dados foram usados ​​para treinamento, 15% para testes e 15% para testes).

A julgar pelos resultados de testes comparativos, o PINlogger.js é muito melhor em reconhecer códigos PIN de informações de sensores de movimento do que desenvolvimentos semelhantes anteriores. Além disso, este é o primeiro sistema a roubar códigos PIN por meio de um navegador, e não por um aplicativo instalado em um smartphone.



Os pesquisadores observam que a maioria dos usuários não está ciente do perigo de vazamento de dados pessoais ao coletar dados de sensores. Uma pesquisa com usuários mostrou que a maioria deles vê a ameaça no GPS ou na câmera, e não no que representa uma ameaça mais real - em sensores internos de movimento, inclinação e outros. O número 25 não é acidental: eram tantos sensores que os pesquisadores contavam em um smartphone padrão. O diagrama abaixo mostra os resultados da pesquisa - em qual dos 25 usuários de sensores vê a maior ameaça.



Os usuários não apenas desconhecem a ameaça. Muitos nem sequer entendem que tipo de informação a maioria dos 25 sensores coleta. As pessoas nem ouviram falar de alguns sensores.



O problema é que essas informações não estão protegidas no nível do sistema operacional. É facilmente acessível para aplicativos e sites, por meio de navegadores - sem permissão. Apenas alguns sensores requerem permissão explícita para fornecer informações, incluindo uma câmera e GPS. O restante fornece as informações completamente abertamente.

Usando esses dados abertos, você pode não apenas coletar códigos e senhas PIN, mas também monitorar o usuário. Qualquer site pode determinar quando uma pessoa recebe uma chamada e desliga,



... quando uma pessoa se senta, caminha ou corre.



Novamente, todas essas informações estão disponíveis em qualquer site e aplicativo sem permissão. Os sites o utilizam usando JavaScript padrão.

Os especialistas em segurança e os principais players do setor móvel estão bem cientes desse problema de segurança, mas até agora não chegaram a um consenso sobre como resolvê-lo.

O trabalho científico foi publicado em 7 de abril de 2017 na revista International Journal of Information Security (doi: 10.1007 / s10207-017-0369-x), em domínio público.

Source: https://habr.com/ru/post/pt403109/


All Articles