1 pontos por GN⁺ 2023-10-20 | 1 comentários | Compartilhar no WhatsApp
  • Explorando o hábito de confiar em anúncios de busca e sites oficiais, um anúncio do Google disfarçado de KeePass direcionava para um site falso capaz de enganar até usuários experientes em segurança
  • Após o clique, a barra de endereços mostrava algo parecido com ķeepass[.]info, mas o domínio real era xn--eepass-vbb[.]info, codificado em punycode, e distribuía o malware FakeBat
  • O anúncio ficou no ar de sábado a quarta-feira, e o anunciante aparecia como Digital Eagle, cuja identidade havia sido verificada pelo Google
  • A combinação de anúncio do Google, URL aparentemente legítima e certificado TLS válido dificultava identificar a falsificação apenas pela barra de endereços
  • Todos os cinco principais navegadores levam ao site de phishing ao digitar ķeepass[.]info; em caso de suspeita, é preciso digitar a URL diretamente em uma nova aba ou verificar o proprietário do certificado TLS

Combinação de anúncio do Google e site falso do KeePass

  • Um anúncio malicioso que parecia ser do KeePass foi veiculado no Google
  • O anúncio se passava por uma promoção do KeePass, gerenciador de senhas open source
  • Como era um anúncio do Google e se sabe que o Google analisa anúncios, usuários podiam confiar nele com mais facilidade
  • Ao clicar, a barra de endereços exibia ķeepass[.]info, parecendo o site real do KeePass
  • O site oficial real do KeePass é keepass.info

Domínio semelhante criado com punycode

  • O ķeepass[.]info exibido na barra de endereços na verdade representa xn--eepass-vbb[.]info, uma forma codificada
  • Esse site distribui uma família de malware rastreada como FakeBat
  • O golpe usa o esquema de codificação punycode
    • Punycode permite representar caracteres Unicode como texto ASCII padrão
    • Neste caso, foi usado um caractere com uma marca parecida com uma pequena vírgula abaixo do k
  • Como também conta com um certificado TLS válido, pode parecer um site legítimo ao olhar apenas para a barra de endereços

Informações de transparência do anúncio e ações do Google

  • O Google Ad Transparency Center mostra que o anúncio ficou ativo de sábado a quarta-feira
  • A entidade que pagou pelo anúncio aparece como uma organização chamada Digital Eagle
  • A página de transparência mostra que a Digital Eagle era um anunciante com identidade verificada pelo Google
  • Um representante do Google afirmou por e-mail, após a publicação, que a empresa removeu o anúncio de acordo com seus termos

Análise da Malwarebytes

  • Jérôme Segura, diretor de inteligência de ameaças da Malwarebytes, resumiu a estrutura como um golpe em duas etapas
    • Primeiro, o usuário é enganado por um anúncio do Google que parece totalmente legítimo
    • Em seguida, é enganado novamente por um domínio semelhante que parece um site legítimo
  • A Malwarebytes divulgou esse golpe em uma publicação na quarta-feira
  • A combinação de um anúncio do Google com um site cuja URL parece quase idêntica cria um forte efeito de falsificação

Casos anteriores de abuso de punycode

  • Golpes de malware que abusam de punycode existem há muito tempo
  • Dois anos antes, golpistas usaram anúncios do Google para levar usuários a um site quase idêntico a brave.com
    • Esse site distribuía uma versão falsa e maliciosa do navegador
  • Em 2017, um desenvolvedor de aplicações web criou um site de prova de conceito que parecia apple.com, fazendo a técnica de punycode ganhar ampla atenção

Como usuários podem verificar

  • Não há uma forma garantida de detectar anúncios maliciosos do Google ou URLs codificadas em punycode
  • Ao digitar ķeepass[.]info nos cinco principais navegadores, todos levam ao site de falsificação
  • Em caso de suspeita, é possível abrir uma nova aba do navegador e digitar a URL diretamente
  • Quando a URL é longa, digitá-la manualmente nem sempre é uma abordagem prática
  • Outra opção é inspecionar o certificado TLS para confirmar se o proprietário do certificado corresponde ao site mostrado na barra de endereços

1 comentários

 
GN⁺ 2023-10-20
Comentários do Hacker News
  • A identidade da Digital Eagle certamente deve ter sido verificada pelo Google. A verificação de identidade do Google funciona recebendo dinheiro; se você paga, está verificado
    O trecho “um representante do Google não respondeu imediatamente ao e-mail” também é questionável. Nem sei se há pessoas de verdade no Google respondendo a e-mails, e não vejo uma resposta há mais de 10 anos. Mesmo denunciando phishing e spam, fico em dúvida se algo é realmente processado
    Sinceramente, já está na hora de o mundo se afastar do Google. Há pelo menos mais de 2 anos que tem sido difícil usá-lo com segurança como mecanismo de busca
    Depois que clientes foram enviados a sites de phishing por meio de anúncios do Google, decidi bloquear os domínios abaixo em todas as redes que gerencio
    googlesyndication.com
    googleadservices.com
    googletagservices.com
    googletagmanager.com
    google-analytics.com

    • Sendo ainda mais sincero, para mim a capacidade de busca do Google vem piorando desde mais ou menos o fim dos anos 2000 e o começo dos anos 2010. Antes dava para encontrar coisas digitando uma frase literalmente; agora nem a busca com aspas funciona direito
      O ponto forte do Google foi sendo arruinado aos poucos ao longo dos anos. O Windows é parecido: marketing e publicidade estão estragando produtos que eram razoavelmente bons
    • Sobre “há mesmo alguém no Google que responde a e-mails?”, o Google sempre se concentrou em coisas escaláveis. Pessoas atenderem telefone ou responderem e-mails não escala, então não há suporte ao cliente voltado aos usuários
      O motivo de anúncios assim passarem parece parecido. Eles devem depender em grande parte de denúncias coletivas, e o link “denunciar problema” provavelmente é um dos principais mecanismos para filtrar anúncios ruins. Se mais anúncios estão passando, pode ser um sinal de que há pouca gente dedicando tempo a denúncias, quebrando o equilíbrio do modelo baseado em denúncias coletivas
    • Em 2007, publiquei em um fórum um texto que podia me identificar pessoalmente. Apaguei no fórum, mas ele permaneceu no resumo dos resultados de busca do Google; pedi a remoção por e-mail ao Google, e eles de fato removeram e alguém até respondeu “done”
      Era realmente outra época
    • Normalmente sou dos primeiros a criticar o Google, mas, depois de denunciar bastante phishing ao Google, pelo menos sites de phishing hospedados no Google costumam sair do ar bem rápido. Nunca recebi resposta e imagino que seja tudo automatizado, mas é muito melhor do que muitos outros provedores de hospedagem
      Quando você denuncia um site malicioso à namecheap, ele às vezes continua no ar por meses; eles também são ruins, mas há muitos lugares ainda piores no tratamento de denúncias de abuso. O Google também poderia fazer melhor, mas na prática é até bem razoável
      Dito isso, este caso é mais um motivo para todos bloquearem anúncios. Bloqueio de anúncios torna todo mundo mais seguro
    • Fico curioso se você já encontrou sites que deixam de funcionar ao fazer esse bloqueio
  • Intermediários de publicidade deveriam ser parcialmente responsabilizados por anúncios fraudulentos, ou os anúncios deveriam ser fortemente vinculados a identidades reais, ou ambos. Não gosto da obrigação alemã de impressum para publicações comuns, mas anúncios são outra coisa
    Isso porque anúncios se inserem agressivamente em outros sites de uma forma que o usuário não controla. Tirando o bloqueio total de anúncios, não há opção
    Ao clicar no canto de um anúncio, deveria ser possível ver o número de registro da empresa responsável e o endereço do estabelecimento. Anúncios “estrangeiros” vindos de outros países deveriam ser verificados com mais rigor. Se for fraude, é muito mais difícil obter reparação mesmo quando não há anonimato

  • Segundo a matéria, ķeepass[.]info, mesmo aparecendo assim na barra de endereços, na verdade era uma representação codificada que apontava para xn--eepass-vbb[.]info, e estava distribuindo o malware FakeBat. Combinado com um anúncio do Google e um site com URL quase idêntica, acabou virando um golpe praticamente perfeito
    Em 2017, dizia-se que o Google Chrome 59 havia corrigido o ataque de phishing com Punycode. Ex.: https://www.engadget.com/2017-04-17-google-chrome-phishing-u...
    Talvez um criminoso persistente tenha analisado o código-fonte do Chromium que verifica Punycode e encontrado uma brecha que permite ķ no lugar de k
    https://www.xn--80ak6aa92e.com/ --> o falso “аррӏе.com” exibe alerta de phishing
    https://xn--eepass-vbb.info/ --> o falso “ķeepass.info” não exibe alerta

    • Nas regras de domínios internacionalizados do Chrome relacionadas [1], a detecção de “caracteres parecidos de sistemas de escrita mistos” e “caracteres parecidos de sistema de escrita inteiro” parece ser o ponto central
      ķ (U+0137) pertence ao alfabeto latino [2], então acho que “ķeepass.info” não cairia na verificação de caracteres parecidos de sistemas de escrita mistos
      Também não vejo ķ na lista de glifos de “caracteres parecidos de sistema de escrita inteiro” [3]. Será que deveria ser incluído ali? Na seção de caracteres gregos desse arquivo há um comentário no sentido de que “variações como ά, έ, ή, ί são ignoradas”, então talvez exista uma regra geral de não tratar caracteres acentuados como caracteres parecidos
      Se for isso, até dá para entender em certa medida. Por exemplo, se nomes de domínio com é fossem exibidos em forma de Punycode, usuários franceses ficariam bem decepcionados
      [1] https://chromium.googlesource.com/chromium/src/+/main/docs/i...
      [2] https://www.compart.com/en/unicode/U+0137
      [3] https://source.chromium.org/chromium/chromium/src/+/main:com...
    • O primeiro “ataque Punycode” usava caracteres cirílicos etc. que eram totalmente indistinguíveis das letras “reais”. Provavelmente presumiram que o usuário conseguiria reconhecer e evitar caracteres com diacríticos, mesmo que fossem difíceis de distinguir de poeira na tela
      Afinal, ninguém entraria em “göogle.com”, certo?
  • Ao mesmo tempo em que o Google trava uma guerra contra bloqueadores de anúncios no YouTube, está mostrando de novo que não dá para confiar de forma alguma nele para cumprir a responsabilidade de exibir anúncios seguros
    Além disso, também mostra vídeos de guerra como anúncios para crianças pequenas

    • Continuo denunciando anúncios inadequados, fraudulentos ou claramente ilegais, mas normalmente eles voltam em 1 ou 2 semanas, ou nem chegam a ser removidos
      Meus favoritos em especial são o anúncio idiota de um carregador tipo tijolo que “desfragmenta magicamente o celular” e o anúncio de pistola micro Ghost
    • Enquanto isso, bloqueiam jornalistas de usar imagens de guerra fora de contexto
    • Um menino de sete anos continuava recebendo anúncios de kit de barbear que incluíam lâminas. Claro que o Google deve saber que o pai tem uma barba grande, mas, piadas à parte, eu não queria que a criança se interessasse por lâminas, então bloqueei anúncios na casa inteira
    • Exibir anúncios seguros significa que alguém precisa revisar esses anúncios. O prédio em que o Google coloca pessoas para assistir a anúncios do YouTube vai precisar de redes no estilo Foxconn
  • Eu me considero alguém atento à segurança, mas não sei se teria percebido isso. Mais um motivo para usar uBO sem arrependimento

    • Quando vi a captura de tela, meu único pensamento foi: “preciso limpar essa poeira do monitor”. Sem o uBO, eu teria caído 100%
    • uBlock Origin é bom, mas não sei o que ele tem a ver com ataques de similaridade em domínios internacionalizados. No meu ambiente, ele não bloqueou isso
    • O que é uBO?
  • “A empresa disse que remove anúncios fraudulentos imediatamente, o mais rápido possível, quando eles são denunciados”
    Se quisesse fazer parte da solução, teria verificado os anúncios antes de eles irem ao ar. Mas isso não escala, então as pessoas são enganadas, a sociedade sofre prejuízos e o Google ganha dinheiro em uma escala absurda. Uma troca bem justa...?
    Como várias pessoas disseram, bloquear anúncios na internet faz parte de um uso saudável e seguro da internet

    • A linha é sutil. Se o Google começar a revisar anúncios previamente e passar a bloquear até anúncios minimamente legítimos, também vai sair matéria sobre isso
      Moderação é um problema difícil de resolver. Queremos conveniência para o que é correto e bloqueio forte para qualquer coisa minimamente suspeita. Inevitavelmente uma coisa ou outra vai escapar
      O ponto central aqui é se isso é um caso excepcional ou se há um problema evidente de muitos casos assim sendo aprovados no Google Ads, mas a matéria não responde a isso
    • “A empresa disse que remove anúncios fraudulentos imediatamente, o mais rápido possível, quando eles são denunciados”
      O mesmo problema já existia um ano atrás, e o prefixo do nome de domínio também parece o mesmo
      https://www.bleepingcomputer.com/news/security/google-ad-for...
    • Não fazem moderação de conteúdo a menos que recebam dinheiro ou seja por uma boa causa. Anúncios do Google não são nenhuma das duas coisas
  • Se eu tenho que passar por todo tipo de procedimento por causa de KYC (conheça seu cliente), gostaria que as empresas tivessem que fazer o mesmo nesses casos que dificultam a vida
    Isso vale para anúncios enganosos, ligações de spam, produtos falsificados em lugares como a Amazon e até e-mails
    Parece que tudo foi feito para permitir que todos os golpistas do mundo cheguem 100% até mim, mas não há nenhuma forma de chegar às empresas que tornam isso possível

    • A assimetria de informação na base da economia dos golpes é realmente irritante
  • Essa é uma técnica bem esperta. Se eu tivesse visto o link em um contexto que não fosse um anúncio, talvez eu também tivesse caído
    Com substituições comuns por Unicode, aprendi a perceber porque as letras parecem minimamente estranhas, mas este caso foi diferente. Mesmo com a seta apontando, não vi o ponto embaixo do k; aos meus olhos parecia uma poeirinha ou sujeira no monitor
    Há muito disso na tela, e o sistema visual é bom em ignorar esse ruído

    • Acho que eu teria caído do mesmo jeito. Mas, como uso modo escuro, isso apareceria como um ponto branco sobre fundo preto, não como poeira na tela. Ficaria bem nítido
      Não seria poeira bloqueando luz, como um pixel preto, e sim um pixel branco brilhante. Nunca tinha pensado no modo escuro como um recurso de reforço de segurança :)
    • Há muitos caracteres extremamente difíceis de distinguir. O navegador deveria detectar esse tipo de coisa, mas nem sempre consegue
  • Punycode já tem uma finalidade meio suspeita desde o início. É verdade que estou olhando principalmente do ponto de vista de usuários do alfabeto latino, mas os vários sites de sistemas de escrita não latinos que visitei nos últimos 10 anos usavam todos domínios ASCII comuns
    Mesmo em nomes de usuário de sites que permitem Unicode, dá para ver que a maioria dos usuários de caracteres não latinos usa nomes de usuário em alfabeto latino
    Na prática, quase todo lugar onde Punycode é usado são domínios de spam. A maioria dos domínios em cirílico ou asiáticos também não usa Punycode
    Entendo o conceito do Punycode e ele é tecnicamente impressionante, mas em domínios virou uma enorme dor de cabeça de phishing

    • Apoio totalmente os idiomas de cada país, e ASCII não serve para uma grande parte da humanidade. Mas é claro que o Unicode atual não é adequado para aplicações sensíveis à segurança
      Mesmo eu, que uso vários idiomas europeus, preciso de menos de 10 caracteres Unicode; e, na verdade, cada um deles ainda é um código ISO 8859-15 de 8 bits. Ainda que sejam necessários, a maioria dos sites nem sequer registra domínios Punycode e usa uma versão ASCII deformada do nome
      Como medida prática, os navegadores deveriam perguntar ao usuário, na primeira vez que ele digitasse uma URL com caracteres não ASCII, se deseja permitir URLs de um idioma específico. Permitir apenas um ou dois idiomas já reduziria bastante a superfície de ataque para a maioria dos usuários
    • Um dos problemas dos domínios ASCII é o mapeamento fonético de idiomas CJK
      Por exemplo, hoje asahi.com já pertence ao 朝日 (jornal Asahi), então Asahi town (旭) não pode usá-lo. Claro que poderia usar algo como asahi-town.co.jp, mas há muitos topônimos Asahi com outras grafias (旭日, 朝陽, 浅緋 etc.)
      Não faz sentido exigir que todos eles adotem alguma variação ASCII arbitrária. Isso é só falando de topônimos japoneses; ainda há o problema de sobreposição em todo o espaço dos caracteres chineses
      Se esses domínios estão de fato registrados é quase um problema de ovo e galinha, e não parece que o espaço de colisões acima será resolvido de forma limpa dentro do alfabeto ASCII
      É um problema que domínios ASCII ocidentais sejam vulneráveis a fraude, mas também não dá para queimar a casa para matar percevejos
    • Moro em um país que não fala inglês e, embora existam tecnicamente domínios não ASCII, eles são muito raros. A imensa maioria dos sites usa caracteres latinos
      Dito isso, em domínios de topo dedicados como .рф, não vejo o Punycode em si como o problema. Por exemplo, acho que algo como кремль.рф é aceitável
    • Muita gente pode querer registrar o próprio nome, o nome da cidade etc. Todos esses parecem casos de uso válidos
      Dá para dizer que qualquer coisa além de ASCII é suspeita, mas pessoas cuja língua materna não é o inglês sempre vão discordar
    • Opinião impopular, mas tentar enfiar o Unicode inteiro em nomes de domínio foi uma má ideia. Deveríamos ter ficado no ASCII [A-Za-z0-9-] sem distinção entre maiúsculas e minúsculas
  • Uma forma de reduzir anúncios maliciosos é a transparência. Cada anúncio deveria incluir o contato legal do anunciante, ou seja, o nome da empresa e o país
    Isso não resolveria o problema por completo, mas os consumidores poderiam evitar anúncios de empresas suspeitas do Leste Europeu. Também facilitaria para pesquisadores de segurança rastrearem agentes maliciosos, e criaria algum grau de responsabilidade para o Google como plataforma de anúncios
    O Facebook já faz isso em anúncios políticos, então é possível

    • Isso reduziria a receita do Google e do Facebook
      A menos que o governo obrigue, ou que o risco de responsabilidade legal fique grande demais, eles não farão isso voluntariamente
    • Por que o Leste Europeu seria suspeito?
      Não é meio xenófobo?
    • Bastaria usar o banco de dados[0] de certificados SSL de todos os sites e compará-lo com o site acessado ou com o site que comprou o espaço publicitário
      [0] https://www.cloudflare.com/learning/ssl/what-is-an-ssl-certi...
    • Seria realmente ótimo se fosse assim