Como os hackers exploram os recursos do chatbot para restaurar chats criptografados do ChatGPT da OpenAI, do Microsoft Copilot e da maioria dos outros chatbots de IA.
Pesquisadores israelenses do Offensive AI Lab publicaram um artigo descrevendo um método para restaurar o texto de mensagens de chatbot de IA interceptadas. Hoje vamos dar uma olhada em como esse ataque funciona, e quão perigoso ele é na realidade.
Quais informações podem ser extraídas de mensagens interceptadas do chatbot de IA?
Naturalmente, os chatbots enviam mensagens criptografadas. Mesmo assim, a implementação de grandes modelos de linguagem (LLMs) e os chatbots construídos com eles abrigam uma série de recursos que enfraquecem seriamente a criptografia. Combinados, esses recursos tornam possível executar ataques de canal lateral, onde o conteúdo de mensagens é restaurado a partir de fragmentos de informações vazadas.
Para entender o que acontece durante esse ataque, precisamos nos aprofundar um pouco nos detalhes da mecânica do LLM e do chatbot. A primeira coisa a saber é que os LLMs operam não em caracteres ou palavras individuais, mas em tokens, que podem ser descritos como unidades semânticas de texto. A página do Tokenizer no site da OpenAI oferece uma visão geral do funcionamento interno.
Quanto ao segundo recurso que facilita esse ataque, você já o conhece se alguma vez interagiu com chatbots de IA: eles não enviam respostas em grandes blocos, mas gradualmente, quase como se fossem digitadas por uma pessoa. Mas, diferentemente de uma pessoa, os LLMs escrevem em tokens, não em caracteres individuais. Como tal, os chatbots enviam tokens gerados em tempo real, um após o outro; ou melhor, a maioria dos chatbots: a exceção é o Google Gemini, o que o torna invulnerável a esse ataque.
A terceira peculiaridade é: no momento da publicação do artigo, a maioria dos chatbots não usava compactação, codificação ou preenchimento (anexação de dados inúteis ao texto significativo para reduzir a previsibilidade e aumentar a força criptográfica) antes de criptografar uma mensagem.
Os ataques de canal lateral exploram as três peculiaridades. Embora as mensagens interceptadas do chatbot não possam ser descriptografadas, os invasores podem extrair dados úteis delas. Especificamente, o comprimento de cada token enviado pelo chatbot. O resultado é semelhante a um enigma de um Jogo da Forca: você não pode ver o que exatamente está criptografado, mas o comprimento dos tokens de palavras individuais é revelado.
Usar informações extraídas para restaurar o texto da mensagem
Tudo o que resta é adivinhar quais palavras estão escondidas atrás dos tokens. E sabe quem são ótimos em jogos de adivinhação? Isso mesmo, os LLMs. Na verdade, esse é o objetivo principal deles: adivinhar as palavras certas em um determinado contexto. Portanto, para restaurar o texto da mensagem original a partir da sequência resultante de comprimentos de tokens, os pesquisadores recorreram a um LLM…
Dois LLMs, para sermos precisos, já que os pesquisadores observaram que os inícios das conversas com chatbots quase sempre seguem uma mesma fórmula e, portanto, são facilmente adivinhados por um modelo treinado em uma série de mensagens introdutórias geradas por modelos de linguagem populares. Assim, o primeiro modelo é usado para restaurar as mensagens introdutórias e passá-las para o segundo modelo, que trata do restante da conversa.
Isso produz um texto no qual os comprimentos dos tokens correspondem aos da mensagem original. Mas palavras específicas são forçadas com vários graus de sucesso. Observe que uma correspondência perfeita entre a mensagem restaurada e a original é rara, geralmente acontece de uma parte do texto ser incorreta. Às vezes, o resultado é satisfatório:
Mas, em um caso malsucedido, o texto reconstruído pode ter pouco ou até nada em comum com o original. Por exemplo, o resultado pode ser este:
Ou este exemplo:
No total, os pesquisadores examinaram mais de uma dúzia de chatbots de IA e descobriram que a maioria deles é vulnerável a esse ataque. As exceções são o Google Gemini (antigo Bard) e o GitHub Copilot (não deve ser confundido com o Microsoft Copilot).
Devo me preocupar?
Deve-se notar que esse ataque é retrospectivo. Suponha que alguém se deu ao trabalho de interceptar e salvar suas conversas com o ChatGPT (algo não tão fácil, mas possível), nas quais você revelou alguns segredos. Nesse caso, usando o método descrito acima, essa pessoa teoricamente seria capaz de ler as mensagens.
Felizmente, as chances do interceptador não são muito altas: como os pesquisadores observam, até o tópico geral da conversa foi determinado apenas 55% das vezes. Quanto à reconstrução bem-sucedida, o número foi de apenas 29%. Vale ressaltar que os critérios dos pesquisadores para uma reconstrução totalmente exitosa foram satisfeitos, por exemplo, pelo seguinte:
Quão importantes são essas nuances semânticas? Decida por si mesmo. Observe, no entanto, que esse método provavelmente não extrairá nenhuma especificação real (nomes, valores numéricos, datas, endereços, detalhes de contato, outras informações vitais) com algum grau de confiabilidade.
E o ataque tem uma outra limitação que os pesquisadores não mencionam: o sucesso da restauração de texto depende muito do idioma em que as mensagens interceptadas são escritas: o sucesso da tokenização varia muito de idioma para idioma. Este artigo é focado no inglês, que é caracterizado por tokens muito longos que geralmente equivalem a uma palavra inteira. Portanto, o texto em inglês tokenizado mostra padrões distintos que tornam a reconstrução relativamente simples.
Nenhum outro idioma chega perto disso. Mesmo para os idiomas nos grupos germânico e românico, que são os mais semelhantes ao inglês, o comprimento médio do token é 1,5 a 2 vezes menor; e para o russo, 2,5 vezes: um token russo típico tem apenas alguns caracteres, o que provavelmente reduzirá a eficácia desse ataque a zero.
Textos em idiomas diferentes são tokenizados de forma diferente. Uma amostra em inglês.
Pelo menos dois desenvolvedores de chatbots de IA (Cloudflare e OpenAI) já responderam ao artigo adicionando o método de preenchimento mencionado acima, que foi projetado especificamente considerando esse tipo de ameaça. Outros desenvolvedores de chatbots de IA devem seguir o exemplo, e torcemos para que a comunicação futura com chatbots seja protegida desses ataques.
fonte: https://www.kaspersky.com.br/blog/ai-chatbot-side-channel-attack/22582/