>

The (Completely Automated Public Turing test to tell Computers and Humans Apart), foi originalmente projetado para evitar que bots, malware e inteligência artificial (IA) interajam com uma página web. Na década de 90, isto significava prevenir os bots de spam. Hoje em dia, as organizações usam, numa tentativa de prevenir ataques automatizados mais sinistros como o enchimento de credenciais.

Almost assim que foi introduzido, no entanto, os cibercriminosos desenvolveram métodos eficazes para contorná-lo. Os bons responderam com s “endurecidos” mas o resultado permanece o mesmo: o teste que tenta parar a automação é contornado com automação.

Existem múltiplas formas de ser derrotados. Um método comum é utilizar um serviço de resolução, que utiliza mão-de-obra humana de baixo custo nos países em desenvolvimento para resolver imagens. Os criminosos cibernéticos assinam um serviço de soluções, que se agilizam em suas ferramentas de automação via APIs, preenchendo as respostas no site alvo. Estes empreendimentos sombrios são tão onipresentes que muitos podem ser encontrados com uma rápida pesquisa no Google, incluindo:

  • Deathby
  • 2
  • Kolotibablo
  • ProTypers
  • Antigate

Este artigo irá usar 2 para demonstrar como os atacantes integram a solução para orquestrar ataques de recheio de credenciais.

2

Upon acessando o site 2.com, o visualizador é saudado com a imagem abaixo, perguntando se o visitante quer 1) trabalhar para 2 ou 2) comprar 2 como serviço.

Opção 1 – Trabalhar para 2

Trabalhar para 2, basta se cadastrar em uma conta, fornecendo um endereço de e-mail e uma conta PayPal para depósitos de pagamento. Durante um teste, uma conta foi validada em minutos.

Novos trabalhadores devem fazer um curso de treinamento único que os ensina a resolver rapidamente s. Também fornece dicas, como quando o caso faz e não importa. Após completar o treinamento com precisão suficiente, o trabalhador pode começar a ganhar dinheiro.

Após selecionar “Start Work”, o trabalhador é levado para a tela do espaço de trabalho, que é mostrada acima. Em seguida, o trabalhador recebe uma e é solicitado a apresentar uma solução. Uma vez resolvido correctamente, o dinheiro é depositado numa “bolsa” electrónica, e o trabalhador pode solicitar o pagamento sempre que quiser. Aparentemente não há fim para o número de s que aparecem no espaço de trabalho, indicando uma demanda constante pelo serviço.

2 trabalhadores são incentivados a submeter soluções corretas, assim como um motorista Uber é incentivado a fornecer excelentes classificações de serviço ao cliente. 2 clientes classificam a precisão das soluções que receberam. Se a classificação de 2 trabalhadores for inferior a um determinado limite, ela será expulsa da plataforma. Por outro lado, os trabalhadores com a classificação mais alta serão recompensados durante períodos de baixa demanda, recebendo prioridade na distribuição.

Opção 2 – 2 como um serviço

Para usar 2 como um serviço, um cliente (ou seja um atacante) integra a 2 API em seu ataque para criar uma cadeia de suprimentos digital, alimentando automaticamente quebra-cabeças do site alvo e recebendo soluções para entrada no site alvo.

2 fornece exemplos de scripts para gerar chamadas de API em diferentes linguagens de programação, incluindo C#, JavaScript, PHP, Python, e mais. O código de exemplo escrito em Python foi reproduzido abaixo:

Integrando 2 em um ataque automatizado

Como um atacante usaria 2 em um ataque de enchimento de credenciais? O diagrama abaixo mostra como as diferentes entidades interagem em um processo de bypass:

Processo técnico:

  1. Attacker solicita a fonte iframe e URL usada para incorporar a imagem do site alvo e salva-a localmente
  2. Attacker solicita o token API do 2 site
  3. Attacker envia o token para o 2 serviço usando HTTP POST e recebe um ID, que é um ID numérico atribuído com a imagem que foi submetida ao 2. O ID é usado no passo 5 para uma requisição da API GET a 2 para recuperar o .
  4. 2 resolvido atribui o a um trabalhador que então o resolve e submete a solução a 2.
  5. Attacker programa script para ping 2 usando o ID (a cada 5 segundos até ser resolvido). 2 envia então a solução resolvida . Se a solução ainda estiver sendo resolvida, o atacante recebe um post de 2 indicando “_NOT_READY” e o programa tenta novamente 5 segundos depois.
  6. Attacker envia um pedido de login para o site alvo com os campos preenchidos (ou seja, um conjunto de credenciais de uma lista roubada) junto com a solução.
  7. Attacker iteratiza este processo com cada imagem.

Combinado com frameworks de testes web como Selenium ou PhantomJS, um atacante pode parecer interagir com o site alvo de uma forma semelhante à humana, contornando eficazmente muitas medidas de segurança existentes para lançar um ataque de enchimento de credenciais.

Monetização &Ecosistema Criminal

Com uma solução tão elegante no lugar, como é o ecossistema financeiro, e como é que cada um faz dinheiro?

Monetização: solver

O trabalho como solver está longe de ser lucrativo. Com base nas métricas fornecidas no site da 2, é possível calcular o seguinte pagamento:

Assumindo que leva 6 segundos por , um trabalhador pode submeter 10 s por minuto ou 600 s por hora. Em um dia de 8 horas são 4800 s. Com base no que foi ganho durante nosso teste como funcionário por 2 (aproximadamente $0,0004 por solução), isto equivale a $1,92 por dia.

Esta é uma perda de tempo para indivíduos em países desenvolvidos, mas para aqueles que vivem em locais onde alguns dólares por dia podem ir relativamente longe, resolver serviços é uma maneira fácil de ganhar dinheiro.

Monetização: Atacante

O atacante paga a terceiros, 2, por soluções em pacotes de 1000. Os atacantes licitam as soluções, pagando entre $1 e $5 por pacote.

Muitos atacantes usam serviços de -solução como componente de um ataque de enchimento de credenciais maior, o que justifica a despesa. Por exemplo, suponha que um atacante está lançando um ataque para testar um milhão de credenciais do Pastebin em um site alvo. Neste cenário, o atacante precisa contornar um com cada conjunto de credenciais, o que custaria cerca de $1000. Assumindo uma taxa de reutilização de credenciais de 1,5% de sucesso, o atacante pode pegar mais de 15.000 contas, que podem ser todas monetizadas.

Monetização: 2

2 recebe pagamento do Atacante em uma base por 1000. Como mencionado acima, os clientes (ou seja, atacantes) pagam entre $1 e $5 por 1000 s. Serviços como 2, em seguida, pegue uma parte do preço do lance e faça o resto para a sua força de trabalho humana. Como os serviços de solução são usados como uma solução em escala, os lucros somam muito bem. Mesmo que 2 só recebam $1 por 1000 s resolvidos, eles lucram um mínimo de 60 centavos por pacote. Os proprietários destes sites estão frequentemente nos próprios países em desenvolvimento, pelo que a receita aparentemente baixa é substancial.

E o re?

Em Março deste ano, o Google lançou uma versão melhorada do seu re chamado “Invisible re”. Ao contrário de “no re”, que exigia que todos os usuários clicassem no famoso botão “Eu não sou um Robô”, Invisible re permite que usuários humanos conhecidos passem por ele enquanto servem apenas um desafio de re imagem para usuários suspeitos.

Você pode pensar que isso iria atacar os atacantes porque eles não seriam capazes de ver quando eles estavam sendo testados. No entanto, apenas um dia depois que o Google introduziu o Invisible re, 2 escreveu um post no blog sobre como derrotá-lo.

A forma como o Google sabe que um usuário é humano é se o usuário já visitou anteriormente a página solicitada, o que o Google determina ao verificar os cookies do navegador. Se o mesmo usuário começou a usar um novo dispositivo ou limpou seu cache recentemente, o Google não tem essa informação e é forçado a emitir um re desafio.

Para um atacante automatizar um ataque de recheio de credenciais usando 2, ele precisa garantir um desafio. Assim, uma forma de contornar o Invisible re é adicionar uma linha de código ao script de ataque que limpa o browser a cada pedido, garantindo um re challenge.

O que é um pouco complicado no Invisible re é que o desafio está escondido, mas há uma solução. O pode ser “encontrado” usando a ferramenta “inspeccionar elemento” do browser. Então o atacante pode enviar um POST para 2 que inclui um parâmetro detalhando onde o escondido está localizado. Uma vez que o atacante recebe a solução de 2, Invisible re pode ser derrotado via automação de uma das duas maneiras:

  1. JavaScript action that calls a function to supply the solved token with the page form submit
  2. HTML code change directly in the webpage to replace a snippet of normal code with the solved token input.

O fato de que Invisible re pode ser contornado não é porque houve uma falha fatal no design do mais novo . É que qualquer teste de Turing reverso é inerentemente vencido quando as condições de passe são conhecidas.

Enquanto houver, haverá serviços como 2 porque a economia joga tão bem nas mãos do criminoso. O aproveitamento do trabalho humano de baixo custo minimiza o custo de fazer negócios e permite que os criminosos cibernéticos obtenham lucros que podem subir de milhões de dólares em escala. E sempre haverá regiões do mundo com custos de mão-de-obra barata, portanto a demanda constante garante uma oferta constante do lado de 2.

O mundo não precisa desenvolver um melhor, já que toda essa abordagem tem limitações fundamentais. Ao invés disso, devemos reconhecer essas limitações e implementar defesas onde as condições do passe são desconhecidas ou pelo menos difíceis de serem verificadas pelos atacantes.

Fontes

Holmes, Tamara E. “Prepaid Card and Gift Card Statistics”. CreditCards.com. Creditcards.com, 01 Dez. 2015. Web.

Caça, Troy. “Quebrando com Humanos Automatizados.” Postagem no blog. Caça ao Tróia. Troy Hunt, 22 Jan. 2012. Web.

Motoyama, Marti, Kirill Levchenko, Chris Kanich, e Stefan Savage. Re: s-Understanding -solving Services in an Economic Context. Proc. do 19º USENIX Security Symposium, Washington DC. Print.

Aprenda Mais

Veja o vídeo, “Learn How Cybercriminals Defeat”

admin

Deixe uma resposta

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

lg