Como extrair e descriptografar o histórico de conversas de sinais do iPhone
Com mais de meio milhão de usuários, o Signal é um aplicativo de mensagens instantâneas entre plataformas incrivelmente seguro. Com ênfase na segurança, não é de admirar que o Signal seja frequentemente escolhido como uma ferramenta de comunicação por aqueles que têm algo a esconder. O Elcomsoft Phone Viewer agora pode descriptografar os bancos de dados de sinais extraídos do iPhone por meio de aquisição física (bem, sistema de arquivos ), e isso foi difícil de entender.
O que exatamente torna o Signal tão difícil de quebrar? Vamos primeiro ver como se pode obter acesso às comunicações dos usuários que ocorrem em outros mensageiros instantâneos.
Interceptação: o ataque do MITM
O primeiro método é a interceptação. Pode-se tentar interceptar conversas em trânsito. Por sua vez, é muito difícil, pois todo mundo está divulgando a criptografia ponto a ponto. Embora tecnicamente o tráfego possa ser interceptado, descriptografá-lo exigirá um aplicativo mal-intencionado instalado no dispositivo do usuário final (como o famoso spyware do NSO Group ). Sem intervenção direta do governo ou backdoors de criptografia proposta, dificilmente se pode interceptar mensagens com um ataque MITM . É muito importante entender que, mesmo que seu iPhone seja seguro, o dispositivo da outra parte executando o iOS, Android ou aplicativo de desktop (que é muito mais fácil de quebrar) pode estar comprometido. Se a outra parte estiver comprometida, todas as suas comunicações com essa parte também serão comprometidas.
O Signal implementa medidas especiais de proteção contra ataques MITM, tornando inútil o certificado falsificando e complicando ataques baseados em malware.
Extração em nuvem
Felizmente para a aplicação da lei, a maioria dos mensageiros instantâneos sincroniza e armazena as comunicações usando seu próprio serviço em nuvem. A Apple sincroniza o iMessages através do iCloud , a Microsoft mantém as conversas do Skype na Conta da Microsoft do usuário, o Telegram possui seu próprio serviço de nuvem para sincronizar todos, exceto os bate-papos particulares, e assim por diante. Embora todas essas empresas digam aos usuários que seus dados são armazenados criptografados com segurança, todos, exceto a Apple, fornecem prontamente dados às autoridades policiais quando atendidos com uma solicitação legal. (A Apple não tem como a empresa supostamente não tem acesso às chaves de criptografia; isso não nos impediu de acessar as mensagens na nuvem de qualquer maneira.)
Vamos deixar claro. Com o armazenamento em nuvem prontamente disponível, é possível acessar os históricos de conversas do usuário atendendo a uma solicitação legal ou efetuando login com as credenciais da conta do usuário. Conseguimos fazer o último no iMessages ; enquanto difícil, não é impossível.
O sinal não armazena mensagens, histórico de conversas ou chaves de criptografia na nuvem, ponto final. Não há nada a solicitar (exceto alguns metadados) e não há nada a acessar, mesmo que alguém entre com as credenciais do usuário.
Backups
Alguns mensageiros mantêm seus históricos de conversas em backups e outros não. Por exemplo, o iMessages pode ser extraído de backups protegidos por senha se (e somente se) a opção Mensagens no iCloud não estiver ativada nas configurações do dispositivo. Não vimos o backup das conversas do Telegram, mas o WhatsApp permite seu banco de dados no backup do iCloud e também em seu próprio backup independente no iCloud Drive para iOS ou Google Drive para Android. Enquanto os backups independentes são criptografados, é possível descriptografá-los usando o Elcomsoft eXplorer for WhatsApp .
Pode ser um sucesso ou um fracasso com outros mensageiros. O sinal não permite o histórico de conversas ou as chaves de criptografia nos backups locais, mesmo aqueles protegidos por senha.
Extraindo do dispositivo
Extrair um banco de dados funcional sempre funciona. Os bancos de dados do WhatsApp, Skype, Telegram e iMessage são armazenados no formato SQLite simples; eles nunca são criptografados (exceto usando o recurso de criptografia de disco completo do sistema).
Ao contrário de todos os outros mensageiros, o Signal criptografa seus bancos de dados em funcionamento. A chave de criptografia é gerada na primeira vez em que o usuário entra no Signal no dispositivo. A chave é então armazenada no chaveiro, protegida por uma classe de alta proteção. Sem essa chave, é possível extrair apenas anexos (fotos, documentos, mensagens de voz etc.)
Por que o sinal é seguro
Assim como o Telegram, o Skype e o WhatsApp, o Signal protege as comunicações com criptografia ponto a ponto segura. O que o diferencia de todos os outros aplicativos de mensagens instantâneas do mercado é o fato de o Signal nunca sincronizar conversas com a nuvem. Além disso, o aplicativo para plataformas Android e iOS cuida de nunca fazer backup dos históricos de conversas no serviço de nuvem correspondente (Google Drive e iCloud, respectivamente). Como resultado, não há nada para entrar na nuvem e praticamente não há informações relevantes sobre as comunicações do usuário que as autoridades possam solicitar à Apple, Google ou Signal. A cereja no topo do bolo é o fato de que o Signal não permite que seu banco de dados de trabalho seja copiado localmente (via iTunes ou ferramentas de terceiros); nem mesmo em backups criptografados.
Segundo os desenvolvedores, “as mensagens e chamadas de sinal sempre são criptografadas de ponta a ponta e minuciosamente projetadas para manter sua comunicação segura. Não podemos ler suas mensagens ou ver suas ligações, e ninguém mais pode. Como vimos, essa afirmação é verdadeira. No entanto, o aplicativo ainda deve ter acesso às conversas, o que significa que elas devem ser armazenadas em algum lugar do dispositivo.
O ponto é que, dos três vetores de ataque (lógico, físico e nuvem), nem a nuvem nem a aquisição lógica estão disponíveis. A única maneira de obter dados do sinal que inclui as comunicações do usuário é apenas aquisição física e aquisição física.
A questão da criptografia
Ok, ótimo, é uma (física) aquisição. Depois de extrair o banco de dados do Signal da imagem do sistema de arquivos do iPhone, o acesso aos dados será extremamente difícil devido ao esquema de criptografia personalizado implementado pelo Signal. Não há senha protegendo o banco de dados; a chave de criptografia é gerada a partir de uma semente aleatória durante a inicialização e, em seguida, armazenada no chaveiro do iOS com uma classe de alta proteção. A classe de alta proteção significa que a chave não é exportada para o iCloud (na verdade, é exportada, mas criptografada com a chave de hardware exclusiva do dispositivo) e não pode ser descriptografada ao analisar um backup protegido por senha.
Quebrando a criptografia de sinal
Para descriptografar os bancos de dados de conversação de sinais extraídos do iPhone por meio da aquisição do sistema de arquivos, você também precisará extrair a chave de criptografia do chaveiro. Se você estiver usando o Elcomsoft iOS Forensic Toolkit , certifique-se de capturar o chaveiro junto com a imagem do sistema de arquivos.
Para descriptografar e analisar o histórico de conversas do Signal, abra a imagem do sistema de arquivos no Elcomsoft Phone Viewer e use o arquivo de chave extraído para descriptografar o banco de dados do Signal. O Elcomsoft Phone Viewer descriptografará o banco de dados e exibirá seu conteúdo em um piscar de olhos.
Siga estas etapas para descriptografar o banco de dados de sinais:
- Tenha prontamente disponível o seguinte: imagem do sistema de arquivos (.tar ou .zip) e chaveiro descriptografada extraídos com o Elcomsoft iOS Forensic Toolkit ( keychaindump.xml por padrão).
- Inicie o Elcomsoft Phone Viewer e abra a imagem do sistema de arquivos.
- Quando a imagem do sistema de arquivos for totalmente carregada, dê uma olhada no ícone Sinal. Observe a chave vermelha "criptografada" nesse ícone.
- Clique no ícone Sinal. Você será solicitado a fornecer o caminho para o arquivo de chaves. Selecione o arquivo de chaves para descriptografar o banco de dados. O ícone mudará para "descriptografado" (nenhuma tecla vermelha mais).
- Depois que o banco de dados é descriptografado, você pode navegar e visualizar seu conteúdo.