
Recentemente, uma equipa de investigadores da Cybernews descobriu uma série de vulnerabilidades críticas na implementação do chatbot Lena da Lenovo, que foi construído com base na tecnologia GPT-4 da OpenAI com o objetivo de ajudar os clientes da empresa chinesa.
O que os investigadores especializados em cibersegurança descobriram é que um invasor pode levar o chatbot a executar scripts não autorizados em máquinas corporativas por meio de prompt injection, filtrar cookies de sessão ativos e, potencialmente, algo pior. Os invasores podem abusar das vulnerabilidades XSS como um caminho direto para a plataforma de atendimento ao cliente da empresa.
A técnica de prompt injection é conhecida há muito tempo e consiste em formular os prompts que damos ao chatbot de IA como instruções, de forma que, sub-repticiamente, levemos a IA a fazer algo que é proibido.
Um caso recente, explicado pelo seu protagonista no Reddit, levou o ChatGPT a fornecer códigos de ativação do Windows 7 (algo que é proibido) através de uma curiosa engenharia social concebida para a IA: o utilizador disse-lhe que uma das memórias que guardava da sua falecida avó era ela a recitar-lhe esses códigos enquanto o aconchegava para dormir. E funcionou…
Voltando ao caso de Lena, um único ataque com prompt Injection demonstrou uma cadeia de falhas que levou o chatbot da Lenovo a filtrar cookies de sessão ativos, uma descoberta que destaca vários problemas de segurança, como a sanitização inadequada da entrada do utilizador, a sanitização inadequada da saída do chatbot, o facto de o servidor web não verificar o conteúdo produzido pelo chatbot, entre outros, como podemos ler na Cybernews.
O truque utilizado foi solicitar ao chatbot que formatasse a resposta final em HTML, com instruções parametrizadas que solicitavam a inclusão de determinados elementos no código-fonte HTML gerado, como uma imagem. Todo esse código, habilmente manipulado, gerava erros e solicitações que permitiam aos atacantes realizar ações perniciosas através do chatbot, que se tornava assim um colaborador involuntário do ataque.
Vulnerabilidades antigas podem voltar através da IA
Segundo explica Jurgita Lapienytė, editora-chefe da Cybernews, em meados dos anos 2000, o cross-site scripting (XSS) era uma vulnerabilidade amplamente explorada por cibercriminosos, que pôde ser reduzida até se tornar irrelevante graças a um conjunto de boas práticas, entre as quais se encontra a higienização das entradas do utilizador (o que inclui a limpeza e validação de formulários, parâmetros de URLs, cabeçalhos HTTP, etc.), o uso de frameworks (como React ou Angular) ou filtros anti-XSS incorporados nos navegadores web.
Todo este conjunto de medidas, ao qual se deve acrescentar a educação dos utilizadores, contribuiu para minimizar o problema que, para todos os efeitos práticos, deixou de existir.
Embora tradicionalmente seja o atacante que escreve o código malicioso e o injeta num sistema vulnerável, aqui é o próprio chatbot que cria a carga maliciosa, de modo que o atacante não precisa mais ocultar seus exploits em campos de dados obscuros ou em scripts carregados. Ele pode simplesmente pedir a um sistema de IA que gere o exploit por ele, fazendo com que o modelo se torne o autor da intrusão no próprio sistema.
Isto marca o nascimento do que Lapienytė denomina «conteúdo autoarmado», e que define como dados gerados pela IA que atuam como seu próprio vetor de intrusão, não porque a IA seja «maligna», mas porque não possui o conceito de segurança.
O fenómeno pode ir além dos chatbots, estendendo-se a agentes de IA que podem redigir mensagens de e-mail com cargas ocultas ou documentos gerados por IA com scripts incorporados entregues a utilizadores empresariais desprevenidos.
Outra vulnerabilidade «antiga» ou, mais adequadamente, forma de proceder dos criadores de malware, é a programação de worms informáticos, um código malicioso que se propagava de computador para computador, muito popular no início dos anos 2000.
A cadeia de ataque de Lena se assemelha a um desses worms, pois, ao persistir a saída maliciosa formatada no histórico da conversa, bastava que um agente humano de suporte abrisse essa conversa para que o código fosse executado novamente, roubando os cookies de sessão desse novo utilizador. Por outras palavras, a IA atuou como o primeiro hospedeiro infectado do worm.
Desta forma, os helpdesks assistidos por IA em diferentes setores poderiam tornar-se, sem saber, plataformas de lançamento de propagação semelhante a worms dentro das empresas. O próximo grande worm talvez não chegue através de anexos de e-mail, mas poderia ser coescrito por uma IA «prestativa» num chat de suporte.
Tudo isso terá um impacto na regulamentação da IA e, de acordo com Lapienytė, fará com que os prémios de seguro para empresas que implementam IA generativa aumentem, que as cláusulas de indemnização legal se tornem um tema quente nos contratos e que os reguladores comecem a exigir certificações mais rigorosas de «segurança por design» na IA.