Vulnerabilidade no Telegram permite ignorar a senha de código local de qualquer tamanho

Do passado


No meu trabalho anterior , demonstrei a vulnerabilidade das conversas secretas do Telegram e publiquei um manual em vídeo para recuperar o código local do Telegram no GNU / Linux / Windows / Android (hackers de médio porte do Telegram) .

Recentemente, descobriu uma “continuação da vulnerabilidade”: Android-Telegram [ignorando a senha do código local de qualquer tamanho] (adicionado um ataque de impressão digital) .

Alguns comentários que vou refutar, graças a uma experiência aleatória com meu dispositivo Android experimental.
"Um artigo foi publicado na Habr chamado" Vulnerability in Telegram permite comprometer conversas secretas ". Manchete alta, sim. "Lemos o material e recomendamos que os leitores façam o mesmo, apenas por uma questão de interesse".
"Na versão Android do Telegram, há vários anos, é possível definir uma senha alfanumérica complexa em vez de um código PIN"
Fonte
“Na versão Android, há uma oportunidade de definir uma senha arbitrária para quem precisa de um PIN de 4 dígitos”
Fonte
“Você não pode usar um alfinete, mas uma senha. E se você possui um gerenciador de inicialização desbloqueado ou root ou um telefone não criptografado, que tipo de segurança de dados pessoais você pode falar? ”
Fonte
"Em segundo lugar, a vítima não deve habilitar a criptografia de dados em seu dispositivo"
Fonte

Digressão - havia todos os tipos de comentários "engraçados" (não apenas críticas, algo mais difíceis) sobre o ataque ao Código Local, por exemplo, um comentário:
"Um telegrama de techpod, uma multidão de estúpidos que não querem ou não podem dizer a Durov que acaba quebrando chats secretos, é possível e você não precisa quebrar o seu protocolo"
Fonte

Não vou reescrever o artigo anterior. Tudo está descrito em detalhes sobre a quebra do código local no trabalho anterior . Lembrarei os pontos principais:
O código local do telegrama (pino) é decifrado instantaneamente usando o JTR. Condições: precisa de raiz; Como se viu "hoje", a criptografia Android nem sempre salva; não salvará e, em vez do código local "pin" "password" do Telegram.

Para se apossar das conversas secretas do Telegram, bastava copiar “vários arquivos” do dispositivo raiz para outro, decifrar o código local não criptográfico usando o JTR. A velocidade do ataque de força bruta era impressionante, mas ainda não tão rápida quanto a decifrar “algum dia” “código local da senha”> 30 caracteres. Encontrou uma maneira de atacar o "código local da senha do Android-Telegram" de qualquer tamanho e complexidade.

Próximo algoritmo de ataque


Nós temos raiz; gadget criptografado; senha> 30 caracteres do lado da vítima; o dispositivo de impressão digital não existe "ou seja, não importa".

  • Roube “dados externos do telegrama” (consulte o artigo anterior) .
  • Configure o desbloqueio do seu dispositivo Android com uma impressão digital na lateral do pesquisador (posição do atacante) .
  • Instale com o GP Telegram e combine com "dados externos".
  • Ao abrir o Telegram no dispositivo do pesquisador e quando for solicitado que você digite uma senha de 31 dígitos (para desbloquear o código local) , prenda o dedo. O telegrama é desbloqueado, todas as conversas / correspondências secretas e a nuvem ficam disponíveis para o pesquisador.

Curiosamente, apenas o Telegram (de 4 aplicativos testados) está sujeito a esse ataque. Tentei realizar ataques semelhantes no keepass2android offline; Sberbank online; Dinheiro Yandex - esses aplicativos Android exigiam uma senha e não reagiram à impressão digital.


A trama no vídeo:

  • Um bate-papo secreto foi criado entre o Android no Virtualbox, onde não há dispositivo de "impressão digital" e o Android 6. Há uma conversa entre os "terroristas".
  • No Android Virtualbox, defino o código local como uma senha de 31 dígitos - bloqueando o aplicativo Telegram.
  • Eu faço um backup das contas do Telegram-Virtualbox (não é necessário copiar todos os dados, consulte o artigo anterior) .
  • Eu copio os dados para o veneno.
  • Estou usando o Poison Backup no Android 6.
  • Eu instalo o Telegram no Android 6 a partir do GP.
  • Eu retiro parte dos "dados externos" do backup do Android 6 para o Android 6 instalado.
  • Inicio o Telegram no Android 6, recebo uma solicitação para inserir uma senha / impressão digital. Aplico uma impressão digital e o Telegram está desbloqueado, toda a correspondência entre o intervalo médio e a nuvem está disponível.
  • Eu reinicio o Telegram, insiro o código local de 31 dígitos e o Telegram também é desbloqueado.


Tome


Ele removeu a impressão digital no smartphone, soltou o código PIN do smartphone. Defina um novo pino no dispositivo, crie uma nova impressão digital. Repeti o experimento (limpei completamente o Telegram dos dispositivos / o instalei) e a nova impressão digital desbloqueou novamente a conta do Telegram de outra pessoa.

Truque de chapéu


Para um experimento de frequência ainda maior, substituiu o dispositivo / condições. Por parte da vítima, ele substituiu o hardware: VirtualBox por um tablet Android 4.4.2 (o dispositivo de impressão digital não existe) ; conta do Telegram substituída por outra.
Ataque - Telegrama destruído e completamente limpo do dispositivo. Redefina / altere o pino no dispositivo Android 6, exclua a impressão digital e crie uma nova impressão digital no outro dedo da falange.
Defina uma senha de código local de 14 dígitos no Android-e da vítima. Fiz um backup apenas de dados externos.
No Android 6, instalei o Telegram do GP (posição do pesquisador) e retirei os dados externos do Android-a 4.4.2 (não é possível fazer backup / implantação completos, porque o aplicativo Telegram do tablet não será instalado no smartphone, portanto, instale o aplicativo no Android 6 com o GP e não do backup).
Lancei o Telegram no Android 6, é impossível fazer login na conta de outra pessoa: uma solicitação de código local apareceu (que ainda está quebrada em alta velocidade no JTR) . Ele colocou o dedo e o relato de outra pessoa reabriu ao lado do pesquisador com toda a correspondência / faixa intermediária.

Para resumir esta parte do artigo.

O telegrama é propenso a um ataque de roubo de chave, mas a coisa mais estranha no messenger é a "impressão digital integrada no aplicativo". Dinheiro Yandex; Sberbank online; keepass2android offline - não é suscetível a um ataque semelhante (demonstrado neste artigo) . Todos os aplicativos acima têm uma função para desbloquear o aplicativo por impressão digital, mas no Telegram ele é integrado à força (a função "desbloqueio de impressão digital" não é desativada / não pode ser configurada em um gadget que não possui dispositivo de impressão digital) e funciona quando usado para fins insidiosos. Em outros aplicativos, a função de impressão digital não funciona - proteção contra fraude.

O telegram messenger é um messenger em massa, é necessário desenvolver proteção para donas de casa e para todos. O rosto da empresa não está certo quando afirma que todos os problemas advêm do fato de que tudo no mundo foi comprometido, exceto o mensageiro do Telegram. Como exemplo, esta é uma vulnerabilidade humilhante que demonstra a privacidade "não" dos usuários de dispositivos Android enraizados.
Se você perder o dispositivo enraizado (em alguns casos, criptografado) , não se preocupe com as finanças ou mantenha o offline2android offline (as senhas não serão abertas) . Qualquer pessoa que encontrar um gadget terá acesso "apenas" a todos os médios do Telegram. A limpeza dos dados do telegrama de um novo dispositivo não ajudará se um invasor os abrir offline (o cache permanece no local, mas o código local não protege) .
A campanha de Telegram-Dubai PR entende esse problema? Se sim, o MF / TON não deve funcionar em dispositivos com raiz! E o FAQ oficial não salvará a reputação da empresa se o comprometimento de dispositivos em massa começar.
Telegram-Android v5.4 de 27/02/2014.

ps / não relacionado ao telegrama


Também consegui ignorar a criptografia no dispositivo Leagoo M8 Android e obter todos os dados, incluindo os dados do Telegram para acesso aos médios (ataque JTR ou ataque de impressão digital).

O recurso w3bsit3-dns.com possui firmware de estoque para esse gadget e dezenas de firmware personalizado (gratuito) . TWRP instalado. Formatado o dispositivo Android Leagoo M8, rolou o firmware Resurrection Remix 6 (um dos melhores na minha opinião) . Entrei nas configurações - segurança - para criptografar dados. Criptografado. Antes de fazer o download do gadget, era necessária uma senha (no TWRP, a seção principal não era montada sem uma senha) . Solicitei o secro.img do firmware padrão e a senha (toda criptografia) desapareceu com segurança. O TWRP agora tem a capacidade de montar uma partição sem inserir uma senha, / data / data / ... tornou-se disponível.
A criptografia da unidade flash (unidade flash microSD para o dispositivo) devido à criptografia do próprio sistema operacional é honesta.

Talvez outros gadgets também estejam sujeitos a esse problema (o problema da criptografia de dispositivos) , mas não tenho muitos para experimentar completamente com diferentes modelos de dispositivos.

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


All Articles