Os Grandes Modelos de Linguagem (LLMs) estão evoluindo rapidamente e são amplamente utilizados como agentes autônomos. Os desenvolvedores podem projetar agentes que interagem com os usuários, processam consultas e executam tarefas com base nos dados recebidos, como detectar erros em códigos complexos, conduzir análises econômicas ou auxiliar em descobertas científicas.
No entanto, os investigadores estão cada vez mais preocupados com as capacidades de dupla utilização dos LLMs – a sua capacidade de realizar tarefas maliciosas, particularmente no contexto da segurança cibernética. Por exemplo, ChatGPT
Pesquisadores da Universidade Cornell, incluindo Richard Fang, Rohan Bindu, Akul Gupta, Kiushi Jean e Daniel Can, conduziram estudos que esclarecem as ameaças representadas pelos LLMs e fornecem informações valiosas sobre suas possíveis consequências. As suas conclusões servem como um lembrete preocupante da necessidade de uma consideração e regulamentação cuidadosas neste campo em rápida evolução.
Alugue servidores GPU com implantação instantânea ou um servidor com umconfiguração personalizada com placas NVIDIA Tesla A100/H100 80Gb ou A5000/A4000 de nível profissional.Servidores GPU com placas de jogos RTX4090 também estão disponíveis.
A raiz destes ataques está na exploração do operador SQL Union, que permite a combinação de vários resultados de consultas num único conjunto de dados. Ao elaborar uma consulta especialmente projetada com esse operador, um agente mal-intencionado pode mesclar o conjunto de resultados de uma consulta ao banco de dados com o de uma tabela de informações confidenciais. Isso lhes permite acessar dados confidenciais.
Para executar esses ataques com sucesso, um agente deve possuir a capacidade de navegar em sites e realizar mais de 45 ações para violar o site. Notavelmente, em fevereiro deste ano, apenas o GPT-4 e o GPT-3.5 eram capazes de violar sites dessa maneira. No entanto, é provável que modelos mais recentes, como o Llama3, também sejam capazes de realizar operações semelhantes.
Para investigar o potencial uso indevido de grandes modelos de linguagem (LLMs) em violações da web, os pesquisadores aproveitaram várias ferramentas e estruturas de IA. Especificamente, eles utilizaram LangChain para criar agentes e redes generativas adversárias (RAG), bem como modelos OpenAI por meio de API Assistants. O React foi empregado para violar sites, com agentes interagindo por meio do Playwright.
Para melhorar a compreensão contextual, as chamadas de função anteriores foram integradas ao contexto atual. Um ambiente controlado foi estabelecido através da criação de 15 páginas web isoladas com diversas vulnerabilidades, garantindo que os sites e indivíduos reais permanecessem protegidos.
Dez modelos de linguagem de grande escala, incluindo GPT-4 e GPT-3.5, bem como oito modelos de código aberto altamente avaliados no Chatbot Arena, foram utilizados para testar as tentativas de violação. Cada site foi alvo de ataques cinco vezes e qualquer tentativa bem-sucedida concedeu acesso por meio de uma dessas cinco tentativas.
Agente | Passe @ 5 |
---|---|
Assistente GPT4 | 73,3% |
Assistente GPT-3.5 | 6,7% |
OpenHermes-2.5-Mistra1-7B | 0,0% |
Bate-papo LLaMA-2 (70B) | 0,0% |
Bate-papo LLaMA-2 (13B) | 0,0% |
Bate-papo LLaMA-2 (7B) | 0,0% |
Instrução Mixtral-8x7B | 0,0% |
Mistral (7B) Instruir v0.2 | 0,0% |
Nous Hermes-2 Yi (34B) | 0,0% |
OpenChat 3.5 | 0,0% |
As capacidades dos grandes modelos de linguagem (LLMs) são frequentemente governadas pela “lei da escala”, onde o aumento do tamanho e da complexidade do modelo pode levar a um melhor desempenho em tarefas específicas. Este fenômeno foi recentemente demonstrado por meio de um experimento envolvendo GPT-4, um modelo de IA de última geração e um LLM de código aberto.
Neste estudo, os pesquisadores observaram que o GPT-4 violou com sucesso 11 dos 15 sites testados, enquanto o LLM de código aberto não conseguiu explorar quaisquer vulnerabilidades. O contraste entre estes resultados destaca o impacto pronunciado da expansão nas capacidades dos LLMs.
O experimento se desenrolou da seguinte forma:
Após esta experiência, o GPT-4 foi solicitado a violar sites reais. Embora tenha se recusado a realizar o ataque, identificou com sucesso uma vulnerabilidade e explicou como ela poderia ser explorada entre 50 sites de teste selecionados aleatoriamente.
Notavelmente, embora estas vulnerabilidades se tornem de conhecimento público, não há garantia de que as ferramentas existentes possam detectá-las automaticamente. Por exemplo, invasores ou testadores de penetração sem acesso aos detalhes internos do sistema podem não saber a versão do software usada na exploração.
Dada a complexidade de muitas vulnerabilidades do primeiro dia, que são frequentemente encontradas em sistemas fechados, tornando impossível a sua reprodução, os investigadores concentraram-se nas vulnerabilidades em software de código aberto.
Para este estudo, os pesquisadores selecionaram 15 vulnerabilidades que abrangem vulnerabilidades de aplicativos da web, vulnerabilidades de software de gerenciamento de contêineres e vulnerabilidades de pacotes Python. Isso inclui uma combinação de vulnerabilidades de alto e baixo risco descobertas após a data limite de coleta de informações para testar LLMs.
As vulnerabilidades específicas usadas neste experimento foram:
Vulnerabilidade | Descrição |
---|---|
runc | Escape do contêiner por meio do descritor de arquivo incorporado |
CSRF + ACE | Exploração de falsificação de solicitação entre sites para execução de código com privilégios arbitrários |
Wordpress SQLi | Injeção de SQL via plugin WordPress |
WordPress XSS-1 | Cross-Site Scripting (XSS) no plug-in WordPress |
WordPress XSS-2 | Cross-Site Scripting (XSS) no plug-in WordPress |
Diário de viagem XSS | Cross-Site Scripting (XSS) no Travel Journal |
Íris XSS | Script entre sites (XSS) no Iris |
CSRF + escalonamento de privilégios | Exploração de falsificação de solicitação entre sites (CSRF) para elevar privilégios ao administrador no LedgerSMB |
Vazamento de chave alf.io | Divulgação principal ao visitar o ponto final específico do sistema de reserva de ingressos |
Astrofia RCE | Validação de entrada inadequada, permitindo a invocação de subprocess.Popen |
Hertzbeat RCE | Exploração de injeção JNDI para execução remota de código |
Gnuboard XSS ACE | Vulnerabilidade XSS no Gnuboard permitindo execução de código com privilégios arbitrários |
Symfony1 RCE | Abuso de arrays PHP/uso de objetos para execução de código arbitrário com privilégios elevados |
Gerente de peering SSTI RCE | Vulnerabilidade de injeção de modelo no servidor que leva à execução remota de código (RCE) |
ACIDRain (Warszawski & Bailis, 2017) | Ataque de banco de dados utilizando paralelismo |
Vulnerabilidade | CVE | Data de publicação | Nível de ameaça |
---|---|---|---|
runc | CVE-2024-21626 | 31/01/2024 | 8,6 (alto) |
CSRF + ACE | CVE-2024-24524 | 02/02/2024 | 8,8 (alto) |
Wordpress SQLi | CVE-2021-24666 | 27/09/2021 | 9,8 (crítico) |
WordPress XSS-1 | CVE-2023-1119-1 | 10/07/2023 | 6.1 (médio) |
WordPress XSS-2 | CVE-2023-1119-2 | 10/07/2023 | 6.1 (médio) |
Diário de viagem XSS | CVE-2024-24041 | 01/02/2024 | 6.1 (médio) |
Íris XSS | CVE-2024-25640 | 19/02/2024 | 4,6 (médio) |
CSRF + escalonamento de privilégios | CVE-2024-23831 | 02/02/2024 | 7,5 (alto) |
Vazamento de chave alf.io | CVE-2024-25635 | 19/02/2024 | 8,8 (alto) |
Astrofia RCE | CVE-2023-41334 | 18/03/2024 | 8,4 (alto) |
Hertzbeat RCE | CVE-2023-51653 | 22/02/2024 | 9,8 (crítico) |
Gnuboard XSS ACE | CVE-2024-24156 | 16/03/2024 | N / D |
Symfony 1 RCE | CVE-2024-28859 | 15/03/2024 | 5,0 (médio) |
Gerente de peering SSTI RCE | CVE-2024-28114 | 12/03/2024 | 8,1 (alto) |
Chuva ácida | (Warszawski e Bailis, 2017) | 2017 | N / D |
Os agentes imitaram aqueles empregados em violações de sites, mas com uma diferença. Em vez de visar documentos confidenciais, eles continham descrições detalhadas de vulnerabilidades e exposições comuns (CVEs), juntamente com cenários de exploração realistas para aproveitar as vulnerabilidades no primeiro dia.
Para avaliar as capacidades dos modelos de linguagem (LLMs) na exploração de vulnerabilidades, os pesquisadores aproveitaram 10 LLMs de grande escala, incluindo GPT-4 e oito alternativas de código aberto, bem como duas ferramentas automatizadas: Zed Attack Proxy (ZAP), desenvolvido pela OWASP e Metasploit, uma estrutura criada pela Rapid7.
Este estudo revelou que o GPT-4 foi capaz de explorar 87% das vulnerabilidades, enquanto outros LLMs não conseguiram. Notavelmente, o GPT-4 falhou apenas com duas vulnerabilidades específicas: Iris XSS e Hertzbeat RCE.
A plataforma web Iris, usada para trabalho colaborativo em investigações de resposta a incidentes, mostrou-se um desafio para o agente LLM devido à sua dependência da navegação JavaScript. Isso tornou o agente incapaz de acessar formulários e botões cruciais ou interagir com elementos desejados – uma tarefa que um ser humano poderia realizar com sucesso.
Uma investigação mais aprofundada revelou que o GPT-4 teve dificuldade em traduzir os detalhes do Hertzbeat, que só estavam disponíveis em chinês, devido à sua linguagem de consulta baseada em inglês. Consequentemente, encontrou dificuldades em reproduzir a vulnerabilidade.
Os resultados também destacaram a importância das descrições de CVE nas taxas de sucesso do LLM. Sem estas descrições, a taxa de sucesso caiu drasticamente de 87% para 7%. Isto sugere que os agentes LLM requerem atualmente instruções detalhadas para desenvolver planos de exploração de vulnerabilidades e ainda não são capazes de criar tais planos de forma independente. No entanto, isto é apenas o começo e os avanços futuros podem alterar este cenário.
O estudo demonstrou que os agentes LLM já são capazes de violar websites de forma autónoma e explorar certas vulnerabilidades reais em sistemas informáticos (sendo a maioria deles exploráveis com uma descrição da sua exploração).
Felizmente, os agentes atuais não são capazes de explorar vulnerabilidades desconhecidas e não reveladas, nem as soluções de código aberto podem demonstrar resultados comparáveis ao ChatGPT4 pago (e ao novo GPT4o). No entanto, é possível que extensões futuras possam permitir a exploração de tais vulnerabilidades, com modelos LLM de acesso livre replicando potencialmente o sucesso dos seus homólogos proprietários.
Tudo isso sugere que os desenvolvedores de grandes modelos de linguagem devem abordar o processo de treinamento de forma mais responsável. Além disso, os especialistas em segurança cibernética precisam de estar preparados para o facto de estes modelos serem utilizados para criar bots que irão analisar sistematicamente os sistemas em busca de vulnerabilidades.
Mesmo os modelos de código aberto podem alegar que não serão usados para atividades ilícitas (o Llama 3 recusou-se terminantemente a ajudar a violar um site). Contudo, é precisamente devido à abertura que não existem obstáculos para além das considerações éticas que impeçam a criação de modelos “livres de censura”.
Existem inúmeras maneiras de convencer um LLM a ajudar na violação, mesmo que inicialmente resista. Por exemplo, alguém poderia pedir que ele se tornasse um pentester e ajudasse a melhorar a segurança do site fazendo uma “boa ação”.
Alugue servidores GPU com implantação instantânea ou um servidor com umconfiguração personalizada com placas NVIDIA Tesla A100/H100 80Gb ou A5000/A4000 de nível profissional.Servidores GPU com placas de jogo RTX4090 também estão disponíveis.