Smartphones NFC permitiram que pesquisadores hackeassem sistemas de pontos de venda e caixas eletrônicos

Smartphones com NFC habilitado permitiram que pesquisadores hackeassem sistemas de pontos de venda e caixas eletrônicos, obtendo execução de código personalizado em alguns deles.

Apesar de ser uma das únicas maneiras de sacar dinheiro de sua conta bancária em trânsito, os caixas eletrônicos tiveram notoriamente uma série de problemas de segurança ao longo dos anos. Mesmo agora, não há muita coisa que impeça um hacker de colocar um skimmer de cartão em um caixa eletrônico, já que a maioria das pessoas nunca notará que ele está lá. É claro que também ocorreram vários outros ataques ao longo dos anos que são mais complexos do que isso, mas, em geral, você deve sempre ter cuidado ao usar um caixa eletrônico. Agora existe uma nova maneira de hackear um caixa eletrônico, e tudo o que é necessário é um smartphone com NFC.

Como Com fio relatórios, José Rodríguez é pesquisador e consultor da IOActive, uma empresa de segurança com sede em Seattle, Washington, e passou o último ano encontrando vulnerabilidades em leitores NFC usados ​​em caixas eletrônicos e sistemas de pontos de venda. Muitos caixas eletrônicos em todo o mundo permitem que você toque em seu cartão de débito ou crédito para inserir seu PIN e sacar dinheiro, em vez de exigir que você o insira no próprio caixa eletrônico. Embora seja mais conveniente, também contorna o problema de um skimmer físico presente no leitor de cartão. Os pagamentos sem contato em sistemas de ponto de vendas também são onipresentes neste momento.

Fonte: Google

Hackeando leitores NFC

Rodriquez criou um aplicativo Android que dá ao seu telefone o poder de imitar comunicações de cartão de crédito e explorar falhas no firmware dos sistemas NFC. Passando o telefone pelo leitor NFC, ele pode encadear vários exploits para travar dispositivos de ponto de venda e hackeá-los. para coletar e transmitir dados de cartões, alterar o valor das transações e até bloquear os dispositivos com uma mensagem de ransomware.

Além disso, Rodriguez diz que pode até forçar pelo menos uma marca anônima de caixa eletrônico a distribuir dinheiro, embora isso só funcione em combinação com bugs que ele encontrou no software do caixa eletrônico. Isso é chamado de "jackpot", para o qual há muitas maneiras pelas quais os criminosos tentaram ao longo dos anos obter acesso a um caixa eletrônico para roubar dinheiro. Ele se recusou a especificar a marca ou os métodos devido a acordos de sigilo com os fornecedores de caixas eletrônicos.

“Você pode modificar o firmware e alterar o preço para um dólar, por exemplo, mesmo quando a tela mostra que você está pagando 50 dólares. Você pode inutilizar o dispositivo ou instalar uma espécie de ransomware. Há muitas possibilidades aqui", diz Rodriguez sobre os ataques aos pontos de venda que descobriu. “Se você encadear o ataque e também enviar uma carga especial para o computador de um caixa eletrônico, você pode ganhar dinheiro com o caixa eletrônico – como sacar, apenas tocando em seu telefone.”

Fonte: Josep Rodríguez

Os fornecedores afetados incluem ID Tech, Ingenico, Verifone, Crane Payment Innovations, BBPOS, Nexgo e um fornecedor de ATM não identificado, e todos eles foram alertados entre 7 meses e um ano atrás. No entanto, a maioria dos sistemas de ponto de venda não recebe atualizações de software ou raramente o faz, e é provável que muitos deles exijam acesso físico para fazê-lo. Portanto, é provável que muitos deles permaneçam vulneráveis. “Consertar fisicamente centenas de milhares de caixas eletrônicos é algo que exigiria muito tempo”, Diz Rodríguez.

Para demonstrar as vulnerabilidades, Rodriguez compartilhou um vídeo com Com fio mostrando-o passando um smartphone sobre o leitor NFC de um caixa eletrônico em Madri, fazendo com que a máquina exibisse uma mensagem de erro. Ele não mostrou o ataque de jackpot, pois só poderia testá-lo legalmente em máquinas obtidas como parte da consultoria de segurança da IOActive, o que violaria o acordo de confidencialidade. Rodriguez perguntou Com fio não publicar o vídeo por medo de responsabilidade legal.

As descobertas são "excelente pesquisa sobre a vulnerabilidade de software executado em dispositivos embarcados", diz Karsten Nohl, fundador da empresa de segurança SRLabs e hacker de firmware, que revisou o trabalho de Rodriguez. Nohl também mencionou que existem algumas desvantagens para os ladrões do mundo real, incluindo que um NFC hackeado o leitor permitiria apenas que um invasor roubasse dados de cartão de crédito com tarja magnética, não o PIN ou dados do EMV salgadinhos. O ataque ao jackpot do ATM também requer uma vulnerabilidade no firmware do ATM, o que é uma grande barreira.

Mesmo assim, obter acesso para executar código nessas máquinas é uma grande falha de segurança por si só, e muitas vezes é o primeiro ponto de entrada em qualquer sistema, mesmo que não seja mais do que acesso no nível do usuário. Depois de passar pela camada externa de segurança, muitas vezes acontece que os sistemas de software internos estão longe de ser tão seguros.

O CEO e cientista-chefe da Red Balloon, Ang Cui, ficou impressionado com as descobertas. "Acho muito plausível que, depois de executar o código em qualquer um desses dispositivos, você consiga obter direto para o controlador principal, porque aquela coisa está cheia de vulnerabilidades que não foram corrigidas há mais de um década," Cui diz. "De lá," ele adiciona, "você pode controlar absolutamente o dispensador de cassetes" que retém e libera dinheiro para os usuários.

Execução de código personalizado

A capacidade de executar código personalizado em qualquer máquina é uma vulnerabilidade importante e dá ao invasor a capacidade de investigar sistemas subjacentes em uma máquina para encontrar mais vulnerabilidades. O Nintendo 3DS é um excelente exemplo disso: um jogo chamado Ninja Cúbico foi notoriamente uma das primeiras maneiras de explorar o 3DS e executar o homebrew. A exploração, apelidada de “Ninjhax”, causou um buffer overflow que desencadeou a execução de código personalizado. Embora o jogo em si só tivesse acesso de nível de usuário ao sistema, Ninjhax se tornou a base de outras explorações para executar firmware personalizado no 3DS.

Fonte: nuvemflare

Para simplificar: um buffer overflow é acionado quando o volume de dados enviados excede o armazenamento alocado para esses dados, o que significa que o excesso de dados é então armazenado em regiões de memória adjacentes. Se uma região de memória adjacente puder executar código, um invasor poderá abusar disso para preencher o buffer com dados inúteis e, em seguida, anexe o código executável ao final deles, onde será lido em arquivos adjacentes memória. Nem todos os ataques de buffer overflow podem executar código, e muitos simplesmente travam um programa ou causam comportamento inesperado. Por exemplo, se um campo puder receber apenas 8 bytes de dados e um invasor forçar a entrada de 10 bytes, os 2 bytes adicionais no final transbordarão para outra região da memória.

Leia mais: "PSA: Se o seu PC roda Linux, você deve atualizar o Sudo agora"

Rodriguez observa que são possíveis ataques de buffer overflow em leitores NFC e dispositivos de ponto de venda, já que ele comprou muitos deles no eBay no ano passado. Ele destacou que muitos deles sofriam da mesma falha de segurança: não validavam o tamanho dos dados enviados via NFC de cartão de crédito. Fazendo um aplicativo que enviava dados centenas de vezes maiores do que o leitor espera, foi possível desencadear um buffer overflow.

Quando Com fio entrou em contato com as empresas afetadas para comentar, ID Tech, BBPOS e Nexgo não responderam aos pedidos de comentários. A ATM Industry Association também não quis comentar. A Ingenico respondeu em um comunicado que as mitigações de segurança significavam que o buffer overflow de Rodriguez só poderia travar dispositivos, e não obter execução de código personalizado. Rodriguez duvida que eles teriam realmente evitado a execução do código, mas não criou uma prova de conceito para demonstrar. A Ingenico disse que “considerando a inconveniência e o impacto para nossos clientes”, estava emitindo uma correção de qualquer maneira.

A Verifone disse que encontrou e corrigiu as vulnerabilidades nos pontos de venda em 2018, antes de serem relatadas, embora isso apenas mostre como esses dispositivos nunca são atualizados. Rodriguez diz que testou seus ataques NFC em um dispositivo Verifone em um restaurante no ano passado, descobrindo que ele ainda permanecia vulnerável.

“Essas vulnerabilidades estão presentes no firmware há anos e usamos esses dispositivos diariamente para lidar com nossos cartões de crédito e nosso dinheiro”, Diz Rodríguez. "Eles precisam ser protegidos." Rodriguez planeja compartilhar detalhes técnicos dessas vulnerabilidades em um webinar nas próximas semanas.