Autor: Erick Tauil, Pre Sales Solutions Architect de SEK
Introdução
Antes de começar a leitura deste artigo, caso não tenha conhecimentos básicos sobre IA, recomendamos a leitura/cursos voltados a este entendimento, uma vez que faz-se necessário a compreensão deste tema.
De forma a dar um conhecimento básico e macro sobre os termos, segue um breve explanação abaixo:
Inteligência artificial (IA) é um termo amplo que engloba todos os campos da ciência da computação que permitem que as máquinas realizem tarefas que normalmente exigiriam inteligência humana.
O aprendizado de máquina e a IA generativa são duas subcategorias de IA.
– O aprendizado de máquina (ML) é um subconjunto da IA que se concentra na criação de algoritmos que podem aprender com os dados. Os algoritmos de aprendizado de máquina são treinados em um conjunto de dados e, em seguida, podem usar esses dados para fazer previsões ou tomar decisões sobre novos dados.
– A IA generativa é um tipo de aprendizado de máquina que se concentra na criação de novos dados. Geralmente, a GenAI depende do uso de modelos de linguagem grandes para executar as tarefas necessárias para criar os novos dados.
– Um modelo de linguagem grande (LLM) é um tipo de modelo de IA que processa e gera texto semelhante ao humano. No contexto da inteligência artificial, um “modelo” refere-se a um sistema que é treinado para fazer previsões com base em dados de entrada. Os LLMs são treinados especificamente em grandes conjuntos de dados de linguagem natural e o nome modelos de linguagem grandes.
A segurança cibernética é uma preocupação crescente no mundo da tecnologia, especialmente com o advento de aplicações de Inteligência Artificial de Modelos de Linguagem de Grande Porte (IA LLM). Essas aplicações, embora poderosas e úteis, também apresentam riscos significativos de segurança. O Projeto Aberto de Segurança na Web (OWASP) reconheceu esses riscos e compilou o OWASP Top 10 para Aplicações de IA LLM, uma lista das dez principais vulnerabilidades de segurança que essas aplicações podem apresentar.
São elas:
1 – LLM01 – Injeção de Prompt
Manipula o modelo de linguagem de grande porte (LLM) por meio da manipulação de prompt, gerando ações não intencionais pelo LLM. Injeções diretas sobrescrevem prompts do sistema, enquanto as indiretas manipulam entradas de fontes externas para um resultado determinado.
2 – LLM02 – Manipulação Insegura de Output
Essa vulnerabilidade ocorre quando o output de um LLM é aceito sem ser escrutinado, expondo os sistemas de backend. O uso indevido pode levar a consequências graves, como XSS, CSRF, SSRF, escalonamento de privilégios ou execução remota de código.
3 – LLM03 – Envenenamento dos Dados de Treinamento
Essa vulnerabilidade ocorre quando os dados de treinamento do LLM são adulterados, introduzindo vulnerabilidades ou vieses que comprometem a segurança, eficácia ou comportamento ético. As fontes incluem Common Crawl, WebText, OpenWebText e livros.
4 – LLM04 – Negação de Serviço ao Modelo
Adversários geram operações intensivas nos recursos dos LLMs, levando à degradação do serviço ou a custos muito elevados. A vulnerabilidade é ampliada devido à natureza intensiva por parte de recursos dos LLMs e a imprevisibilidade de entradas pelo usuário.
5 – LLM05 – Vulnerabilidades na Cadeia de Suprimentos
O ciclo de vida de aplicativos LLM pode ser comprometido por componentes ou serviços vulneráveis, levando a ataques na segurança. O uso de conjuntos de dados advindo de terceiros, modelos pré-treinados e plug-ins podem adicionar vulnerabilidades
6 – LLM06 – Divulgação de Informações Sensíveis
Os LLMs podem inadvertidamente revelar dados confidenciais em suas respostas, levando ao acesso não autorizado dos dados, violações de privacidade e violações de segurança. É crucial implementar a higienização dos dados e implementar políticas de usuários rigorosas para mitigar isso.
7 – LLM07 – Design Inseguro de Plug-Ins
Os plug-ins dos LLMs podem ter entradas inseguras e controle de acesso insuficiente. Essa falta de controle do aplicativo torna-os mais fáceis de explorar e pode resultar em consequências como execução remota de código.
8 – LLM08 – Autoridade Excessiva
Sistemas baseados nas LLMs podem realizar ações que levam a consequências não intencionais. O problema surge da funcionalidade excessiva, permissões ou autonomia concedidas aos sistemas baseados nas LLMs.
9 – LLM09 – Dependência Excessiva
Sistemas ou pessoas excessivamente dependentes nas LLMs sem supervisão podem enfrentar desinformação, má comunicação, problemas legais e vulnerabilidades de segurança devido a conteúdo incorreto ou inadequado gerado pela LLMs
10 – LLM10 – Roubo de Modelo
Isso envolve acesso não autorizado, cópia ou vazamento de modelos de LLM proprietários. O impacto inclui perdas econômicas, comprometimento da vantagem competitiva e potencial acesso a informações sensíveis.
O documento “OWASP Top 10 para Aplicações de IA LLM” aborda os principais desafios de segurança enfrentados pelas aplicações de Inteligência Artificial baseadas em Modelos de Linguagem de Grande Escala (LLMs). Ele fornece orientações práticas para mitigar vulnerabilidades e proteger essas aplicações contra ataques.
Alguns dos pontos-chave abordados no documento incluem:
- A importância de implementar monitoramento adequado para detectar vulnerabilidades em componentes e ambientes, bem como o uso de plugins não autorizados e componentes desatualizados.
- A necessidade de uma política de atualização para lidar com componentes vulneráveis ou desatualizados, garantindo que o aplicativo dependa de versões seguras das APIs e do modelo subjacente.
- Recomendações para revisar regularmente e auditar a segurança e o acesso de fornecedores para garantir a integridade e segurança dos sistemas.
- A importância de manter um inventário atualizado de componentes usando um Mapeamento de Componentes de Software (SBOM) para prevenir manipulações em pacotes implantados.
- Recomendações para estabelecer práticas seguras de codificação ao usar LLMs em ambientes de desenvolvimento, a fim de evitar a integração de possíveis vulnerabilidades.
Além disso, o documento destaca exemplos de cenários de ataque, como a exploração de bibliotecas vulneráveis, envenenamento de modelos pré-treinados e manipulação de conjuntos de dados para criar backdoors e disseminar desinformação.
Quais são os principais desafios de segurança enfrentados pelas aplicações de IA LLM?
Vulnerabilidades em Componentes: A presença de componentes vulneráveis e desatualizados pode expor as aplicações a riscos de segurança, permitindo a exploração de brechas por parte de invasores.
Manipulação de Modelos e Dados: A manipulação maliciosa de modelos pré-treinados e conjuntos de dados pode levar a resultados distorcidos, envenenamento de modelos e disseminação de desinformação.
Ataques de Envenenamento de Dados: A inserção de dados maliciosos nos conjuntos de treinamento pode comprometer a integridade dos modelos, levando a previsões incorretas e resultados não confiáveis.
Exploração de Vulnerabilidades em APIs: A exposição de APIs inseguras pode facilitar ataques de injeção de código, vazamento de informações sensíveis e comprometimento da integridade dos sistemas.
Falta de Práticas Seguras de Codificação: A ausência de diretrizes e práticas seguras de codificação pode resultar na integração de vulnerabilidades nos aplicativos, abrindo brechas para ataques cibernéticos.
Desafios de Monitoramento e Atualização: A necessidade de monitorar constantemente os componentes, modelos e dados, além de manter tudo atualizado para mitigar novas vulnerabilidades e garantir a segurança contínua das aplicações.
O OWASP Top 10 para Aplicações de IA LLM é um recurso valioso para empresas que desejam proteger suas aplicações de IA contra vazamentos de dados. Ele destaca as principais áreas de risco e fornece orientações sobre como mitigar esses riscos. Aqui estão alguns dos principais pontos:
1. Vazamento de Informações Sensíveis: As aplicações de IA LLM podem inadvertidamente gerar informações sensíveis ou confidenciais em suas respostas. Isso pode incluir detalhes pessoais, informações financeiras ou segredos comerciais.
2. Manipulação de Respostas: As aplicações de IA LLM podem ser manipuladas para fornecer respostas que beneficiem um ator mal-intencionado. Isso pode ser feito através de entradas cuidadosamente elaboradas que enganam o modelo de IA.
3. Bias Inapropriado: As aplicações de IA LLM podem exibir viés inapropriado em suas respostas, o que pode levar a resultados ofensivos ou discriminatórios.
Protegendo-se contra Vazamentos de Dados
As empresas podem tomar várias medidas para proteger suas aplicações de IA LLM contra vazamentos de dados. Aqui estão algumas estratégias eficazes:
- Implementar Controles de Acesso: Restringir quem pode interagir com a aplicação de IA pode ajudar a prevenir o vazamento de dados. Isso pode incluir a implementação de autenticação de usuário e controle de acesso baseado em função.
- Monitorar a Atividade do Usuário: Manter um registro de todas as interações do usuário com a aplicação de IA pode ajudar a identificar comportamentos suspeitos ou mal-intencionados.
- Treinar o Modelo de IA com Dados Seguros: Ao treinar o modelo de IA, é importante garantir que os dados usados não contenham informações sensíveis ou confidenciais.
Já houve vários casos de alto perfil de vazamentos de dados envolvendo aplicações de IA. Por exemplo, em 2021, uma empresa de tecnologia popular sofreu um vazamento de dados que expôs as informações pessoais de milhões de usuários. A empresa estava usando uma aplicação de IA LLM para fornecer recomendações personalizadas aos usuários, mas um ator malintencionado foi capaz de manipular a aplicação para revelar informações pessoais.
Mitre Atlas
O ATLAS (Adversarial Threat Landscape for Artificial-Intelligence Systems) é uma base de conhecimento viva e globalmente acessível de táticas e técnicas de adversários contra sistemas habilitados pela Al com base em observações de ataques reais e demonstrações realistas de red team e grupos de segurança da Al.
O ATLAS segue o modelo e é complementar ao MITRE ATT&CK®, aumentando a conscientização sobre as vulnerabilidades em rápida evolução dos sistemas habilitados para a Al, à medida que se estendem além do cibernético.
Atualmente contempla 14 táticas, 82 técnicas e 20 mitigações.
O Atlas pode ser utilizado para:
- Informar os analistas de segurança e os desenvolvedores/implementadores de IA sobre ameaças realistas aos sistemas habilitados para IA;
- Permitir avaliações de ameaças e formação de red team internas;
- Entender os comportamentos de adversários do mundo real e os caminhos de atenuação;
- Relatar ataques exclusivos de adversários do mundo real a sistemas habilitados para
IA.
A equipe do Mitre ATLAS lançou um conjunto preliminar de mitigações e está continuamente incorporando técnicas da comunidade para atenuar as ameaças à segurança da IA.
As mitigações incluem conceitos de segurança e classes de tecnologias que podem ser usadas para evitar que um ataque seja executado com sucesso.
A tabela abaixo fornece descrições de alto nível de ataques adversários e seus possíveis efeitos em sistemas habilitados para IA. Para obter uma lista abrangente, recomendamos explorar a matriz ATLAS.
Ataque | Visão Geral |
Ataque de Envenenamento | O atacante modifica os dados de treinamento de um sistema de IA para obter um resultado desejado no momento da inferência. Com influência sobre os dados de treinamento, um invasor pode criar backdoors no modelo em que uma entrada com o acionador especificado resultará em uma saída específica |
Ataque de Evasão | O atacante obtém uma resposta incorreta de um modelo ao criar entradas contraditórias. Normalmente, essas entradas são projetadas para serem indistinguíveis dos dados normais. Esses ataques podem ser direcionados, em que o invasor tenta produzir uma classificação específica, ou não direcionados, em que ele tenta produzir qualquer classificação incorreta. |
Extração Funcional | O atacante recupera um modelo funcionalmente equivalente por meio de consultas iterativas ao modelo. Isso permite que um invasor examine a cópia off-line do modelo antes de continuar atacando o modelo on-line. |
Ataque de Inversão | O atacante recupera informações confidenciais sobre os dados de treinamento. Isso pode incluir reconstruções completas dos dados, atributos ou propriedades dos dados. Esse pode ser um ataque bem-sucedido por si só ou pode ser usado para realizar outros ataques, como o Model Evasion. |
Ataque de Injeção de Prompt | O invasor cria prompts mal-intencionados como entradas para um modelo de linguagem grande (LLM) que faz com que o LLM aja de maneira não intencional. Essas “injeções de prompt” geralmente são projetadas para fazer com que o modelo ignore aspectos de suas instruções originais e, em vez disso, siga as instruções do adversário. |
Ataque Cibernético Tradicional | O atacante usa Táticas, Técnicas e Procedimentos (TTPs) bem estabelecidos do domínio cibernético para atingir seu objetivo. Esses ataques podem ter como alvo artefatos de modelos, chaves de API, servidores de dados ou outros aspectos fundamentais da infraestrutura de computação de IA distintos do próprio modelo. |
Nos Estados Unidos, a Ordem Executiva 14110 recentemente orientou mais de 50 entidades federais a tomar medidas em uma série de áreas de políticas de IA. Vários órgãos federais também promulgaram orientações sobre IA nos últimos anos (por exemplo, GSA AI Guide for Government, DoD Responsible AI Strategy), mas a legislação sobre órgãos acadêmicos e do setor privado continua sendo uma questão complexa com considerações tecnológicas, econômicas e éticas. A maneira mais eficaz de equilibrar esses fatores é uma questão de pesquisa em aberto.
Estudos de Casos
Os estudos de caso do MITRE ATLAS™ são selecionados devido ao impacto nos sistemas de IA de produção. Cada um deles demonstra uma das seguintes características:
- Variedade de ataques: Evasão, envenenamento, replicação de modelos e exploração de falhas tradicionais de software.
- Variedade de personas: Usuário comum, pesquisadores de segurança, pesquisadores de ML e red team totalmente equipada.
- Variedade de paradigmas de ML (Machine Learning): Ataques ao MLaaS, modelos de ML hospedados na nuvem, hospedados no local, modelos de ML na borda.
- Variedade de casos de uso: Ataques a sistemas de IA usados tanto em aplicativos “sensíveis à segurança”, como segurança cibernética, quanto em aplicativos não sensíveis à segurança, como chatbots.
Para uma lista de incidentes envolvendo IA vejam estes sites:
- https://incidentdatabase.ai/apps/incidents/
- https://oecd.ai/en/incidents
Três das principais empresas que monitoram as vulnerabilidades do modelo de IA
- Huntr Bug Bounty : ProtectAI Bug bounty platform for AI/ML (https://huntr.com/)
- AI Vulnerability Database (AVID): Banco de dados de vulnerabilidades de modelos de IA (https://avidml.gitbook.io/)
- AI Risk Database – Banco de dados de vulnerabilidades de modelos de IA (https://airisk.io/)
Conclusão
O OWASP Top 10 para Aplicações de IA LLM é um recurso essencial para qualquer empresa que use essas aplicações. Ao entender e mitigar os riscos associados, as empresas podem proteger suas aplicações e seus usuários contra vazamentos de dados e outras ameaças de segurança. Com o desenvolvimento seguro e o uso consciente, as aplicações de IA LLM podem ser uma ferramenta poderosa e segura.
Juntamente com o Mitre Atlas, ambos podem ser utilizados, do ponto de vista de servirem como artefatos vitais, na proteção contra modelos de IA, sendo utilizados de forma criminosa pelos atores de ameaças espalhados pela Internet.