Segurança de IA
Tags: wecoded, machinelearning, aisec, security
Published: 2024-03-31 00:45:07

## 🍎 O que é IA 🐍

O berço da Inteligência Artificial é acadêmico, desde 1956 essa disciplina é estudada como objeto da ciência.¹ Em 2017 a arquitetura de Deep Learning, "Transformer", tornou acessível modelos de Processamento de Linguagem Natural, Visão Computacional, Processamento de Áudio e Processamento Multimodal, popularizando o uso comercial de IA.

![AI Care - MokeyUser](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fidydkb5pwpqqvg05fi7.png)

> “Um sistema de IA é um sistema baseado em máquina que, para objetivos explícitos ou implícitos, infere, a partir da entrada que recebe, como gerar resultados como previsões, conteúdo, recomendações ou decisões que podem influenciar ambientes físicos ou virtuais.
Diferentes sistemas de IA variam nos seus níveis de autonomia e adaptabilidade após a implantação.”²


![Figura 1.0.0 - Visão geral, ilustrativa e simplificada de um Sistema de IA³](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mlezxgzqh5di3tzlzt05.png)
**Figura 1.0.0 -** Visão geral, ilustrativa e simplificada de um Sistema de IA²

Inferência é uma operação que se baseia em amostras estatísticas para efetuar generalizações. Uma IA realiza uma inferência interpretando inputs com base no seu modelo. Inputs são dados de entrada — podendo ser um texto, como no caso de tradutores de texto ou uma imagem, como no uso de biometria para autenticação. Além de texto e imagem poderiam ser utilizados diferentes tipos de dados de entrada baseados em diferentes mídias. O modelo de IA pode ser pensado como resultado da interação de seu algoritmo com o conjunto de dados de treinamento. Uma medida de eficiência de um modelo de ML é a acurácia, que calcula  a taxa de acertos em relação a amostragem de dados. No entanto, além do algoritmo e dos dados de treinamento, modelos de Deep Learning também são influenciados pela interação do usuário, ou inputs. Isso quer dizer que o usuário possui influência sobre o comportamento da IA e pode abusar deste recurso.

![New Model - MonkeyUser](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z2uwbjnet24x112f02iy.png)

## 🚧 Pipeline 🚧
Uma pipeline é composta por processos interdependentes. Numa pipeline de ML podemos considerar o seguinte modelo conceitual:


![Figura 2.0.0 - Diagrama simplificado de uma pipeline de IA³](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/44h56b3ggb59rw7j2tzr.png)

1. Coleta de dados
2. Limpar e processar dados
3. Treinar modelo
4. Testar modelo
5. Teste de segurança/ Teste de caso de abuso
6. Produção

**Figura 2.0.0 -** Diagrama simplificado de uma pipeline de IA³

As etapas 1. _Coleta de dados_ e 2. _Limpar e processar dados_ também são conhecidas como ETL (Extract, Transform and Load)⁴. 

A superfície de ataque é ampliada com um sistema de inteligência artificial como este integrado a aplicações web. Passamos a nos preocupar não somente com Sistemas Operacionais, Redes, Aplicações, mas também com as IAs integradas, que são aplicações...
A pipeline nos dá a perspectiva de diferentes vetores de ataque com base na arquitetura de cada um de seus processos. Esses vetores de ataques representam ameaças para a confidencialidade, integridade e disponibilidade⁵ do sistema e de suas integrações. 

## 🚨 Vulnerabilidades 🚨

![Figura 2.1.0 - GAIA Top 10: Diagrama simplificado dos vetores de ataque de uma pipeline de IA⁴](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z6px0fj559r67hcqlqrq.png)

G01 – Injeção de Prompt
G02 – Exposição de Dados Sensíveis
G03 – Falha na integridade dos dados
G04 – Mau controle de acesso
G05 – Filtragem insuficiente de prompts e alucinações
G06 – Acesso Excessivo do Agente
G07 – Ataques à Cadeia de Abastecimento
G08 – Ataques de negação de serviço
G09 – Registro insuficiente
G10 – Implantação insegura voltada para o público

**Figura 2.1.0 -** GAIA Top 10: Diagrama simplificado dos vetores de ataque de uma pipeline de IA³

Se você deseja se aprofundar mais no tópico de vulnerabilidades de IA do ponto de vista da Segurança Ofensiva, você pode dar uma olhadinha em:

- [Mitre Atlas Matrix](https://atlas.mitre.org/matrices/ATLAS)
- [LLM AI Cybersecurity & Governance Checklist](https://owasp.org/www-project-top-10-for-large-language-model-applications/llm-top-10-governance-doc/LLM_AI_Security_and_Governance_Checklist-v1.pdf)
- [Web LLM attacks](https://portswigger.net/web-security/llm-attacks)
- [Google's AI Red Team: the ethical hackers making AI safer](https://blog.google/technology/safety-security/googles-ai-red-team-the-ethical-hackers-making-ai-safer/)


## Protegendo IAs
É preciso de especialistas em IAs para protegê-las. Especialistas que compõem a intersecção de Ciência de Dados e Segurança Ofensiva⁷, para inferir riscos com pioneirismo, antecipando ataques reais e, assim, converter pesquisas em medidas de segurança preventiva e automatizadas. É necessário utilizar IA para proteger IA⁸, escalando a segurança com Big Data numa cultura Data Driven.

Para proteger um sistema baseado em IA ainda são necessárias as boas-práticas como sanitização de inputs e outputs, code review, proteção de APIs e DBs, automação da segurança na pipeline de desenvolvimento com execução de scans de SCA, SAST e DAST, registros direcionados ao SIEM para possibilitar a detecção de um ataque em tempo de execução. Para proteger IAs é necessário conhecer os meios pelos quais IAs podem ser exploradas. É preciso saber onde estão os dados sensíveis, classificá-los em níveis de segurança, usar criptografia nos canais de comunicações, realizar controle de acesso com autenticação multifator, monitorar aplicando observabilidade ao sistema. O modelo de IA precisa possuir fontes de treinamento confiáveis e sanitizadas, precisa ser escaneado para análise de malware, de credenciais e informações sensíveis, assim como precisa estar em conformidade em relação às normas de propriedade intelectual.⁹ E nós nem começamos a falar sobre vulnerabilidades baseadas em bias do modelo, que podem impactar na imagem de seus proprietários devido à reprodução de conteúdos preconceituosos e falsos.

Algumas organizações que já estão há um tempinho trabalhando com IA comercialmente, já vêm construindo estratégias de segurança para IAs. O [Secure AI Framework Approach](https://services.google.com/fh/files/blogs/google_secure_ai_framework_approach.pdf) é um guia de implementação da Google e, sugere:

![SAIF](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sxhzsg48g39tmzd16hpi.png)

- Expandir fortes bases de segurança para o ecossistema de IA
- Ampliar a detecção e a resposta para trazer a IA para o universo de ameaças de uma organização
- Automatize as defesas para acompanhar as ameaças novas e existentes
- Harmonize os controles no nível da plataforma para garantir segurança consistente em toda a organização
- Adaptar controles para ajustar mitigações e criar ciclos de feedback mais rápidos para implantação de IA
- Contextualizar os riscos do sistema de IA nos processos de negócios circundantes

**Figura 3.0.0 -** SAIF⁶

Você também pode se interessar por [Artificial Intelligence Risk Management Framework (AI RMF 1.0)](https://nvlpubs.nist.gov/nistpubs/ai/NIST.AI.100-1.pdf) do NIST.

![AI Assistant - MonkeyUser](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hoyag3j3kqlc58etlxc3.png)

## Conclusão

O time de Segurança da Informação precisa ser capaz de mapear os vetores de ataques de uma organização, calcular os riscos e implementar medidas preventivas. O objetivo é reduzir as falhas no sistema devido à erros de implementação ou má configuração, porém, temos a oportunidade de utilizar a Ciência de Dados para esta tarefa.
É importante compreendermos melhor sistemas de Machine Learning, pois assim como modelos de IA tendem a evoluir com treinamento, os ataques para essas e outras aplicações também evoluem e, por isso, esta é uma área de investigação estratégica que pode ser potencializada com a transdisciplinaridade.


### Referências

¹ [Artificial_intelligence](https://en.wikipedia.org/wiki/Artificial_intelligence)
² [OECD (2024), "Explanatory memorandum on the updated OECD definition of an AI system", OECD Artificial Intelligence Papers, No. 8, OECD Publishing, Paris](https://doi.org/10.1787/623da898-en)
³ [Securing AI Pipeline - Mandiant](https://www.mandiant.com/resources/blog/securing-ai-pipeline)
⁴ [ETL](https://en.wikipedia.org/wiki/Extract,_transform,_load)
⁵ [CIA Triad](https://informationsecurity.wustl.edu/items/confidentiality-integrity-and-availability-the-cia-triad/)
⁶ [Secure AI Framework Approach](https://services.google.com/fh/files/blogs/google_secure_ai_framework_approach.pdf)
⁷ [Why Red Teams Play a Central Role in Helping Organizations Secure AI Systems](https://services.google.com/fh/files/blogs/google_ai_red_team_digital_final.pdf)
⁸ [Microsoft AI Red Team](https://learn.microsoft.com/en-us/security/ai-red-team/)
⁹ [How to Secure AI Business - IBM](https://www.youtube.com/watch?v=pR7FfNWjEe8)