Capítulo 11 — Segurança de IA e aprendizado de máquina: ativos e contexto
Mapa da aula
Aula 11 publicada. Mapa, exemplo, EX031.
flowchart TD
N0["11.1 Ativos de IA"]
N1["11.2 Contexto"]
N2["11.3 Ordenação"]
N3["11.4 Mantendo-o atualizado"]
N4["11.4b Campos do inventário"]
N5["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5
N5 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX031"]
Desenho lógico
flowchart LR
N0["11.1 Ativos de IA"]
N1["11.2 Contexto"]
N2["11.3 Ordenação"]
N3["11.4 Mantendo-o atualizado"]
N4["11.4b Campos do inventário"]
N5["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> Q["EX031"]
[11.1 Ativos de IA]
|
v
[11.2 Contexto]
|
v
[11.3 Ordenação]
|
v
[11.4 Mantendo-o atualizado]
|
v
[11.4b Campos do inventário]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX031]
Objetivos de aprendizagem
Você vai (1) inventariar ativos de IA — modelos, prompts, dados, índices, ferramentas, chaves; (2) registrar o contexto — usuários, pessoas afetadas, finalidade; (3) ordenar sistemas por risco; e (4) manter o inventário atualizado.
11.1 Ativos de IA
Os ativos incluem: arquivos de modelos ou identificadores e versões de modelos de fornecedores; prompts de sistema; dados de treino e de avaliação; índices de recuperação e suas fontes; ferramentas e suas permissões; chaves de API; registros. Cada um precisa de um dono e de um nível de proteção. Prompts de sistema não são segredos em que se possa confiar — o OWASP LLM07 observa que eles podem vazar —, então nunca coloque credenciais neles. A entrada do Ask Brightwell no inventário mostrou por que isso importa: seu prompt de sistema continha um código de desconto da equipe, um segredo que um vazamento do prompt teria exposto.
11.2 Contexto
O mesmo modelo é de baixo risco numa caixa de busca de produtos e de alto risco quando pode emitir reembolsos. Registre a finalidade, os usuários, as pessoas afetadas, as decisões influenciadas e as ferramentas disponíveis. Na Brightwell, o mesmo modelo do fornecedor alimenta o Ask Brightwell e o redator de e-mails do marketing, mas o primeiro pode iniciar devoluções e consultar pedidos, enquanto o segundo pode enviar e-mails para a lista de clientes. Suas entradas no inventário registram essas finalidades e ferramentas diferentes, de modo que cada um recebe sua própria pontuação de risco e seu próprio dono. As ferramentas e os dados em torno de um modelo, e não o modelo, definem seu risco.
11.3 Ordenação
Pontue os sistemas em: entrada não confiável, ferramentas com efeitos colaterais, dados sensíveis, número de pessoas afetadas e automação sem revisão humana.
"""Lab V: an AI system inventory scored for review priority (synthetic).
Each system lists exposure, autonomy, data sensitivity and whether it reads
untrusted content; mapping to OWASP LLM Top 10 (2025) IDs is illustrative."""
import json
inv = json.loads("""[
{"name":"support-chatbot","exposure":"public","autonomy":"tools","data":"customer","untrusted_input":true},
{"name":"invoice-ocr-model","exposure":"internal","autonomy":"none","data":"financial","untrusted_input":true},
{"name":"code-assistant","exposure":"internal","autonomy":"suggest","data":"source","untrusted_input":true},
{"name":"churn-predictor","exposure":"internal","autonomy":"none","data":"customer","untrusted_input":false},
{"name":"hr-cv-screener","exposure":"internal","autonomy":"decide","data":"personal","untrusted_input":true}
]""")
E = {"public": 3, "internal": 1}; A = {"none": 0, "suggest": 1, "tools": 3, "decide": 3}
D = {"customer": 2, "financial": 2, "source": 2, "personal": 3}
for s in inv:
s["score"] = E[s["exposure"]] + A[s["autonomy"]] + D[s["data"]] + (2 if s["untrusted_input"] else 0)
risks = []
if s["untrusted_input"]: risks.append("LLM01")
if s["autonomy"] in ("tools", "decide"): risks.append("LLM06")
if s["data"] in ("customer", "personal"): risks.append("LLM02")
s["owasp"] = ",".join(risks) or "-"
for s in sorted(inv, key=lambda s: -s["score"]):
print(f"{s['name']:18s} score={s['score']:2d} owasp={s['owasp']}")
Saída esperada:
support-chatbot score=10 owasp=LLM01,LLM06,LLM02
hr-cv-screener score= 9 owasp=LLM01,LLM06,LLM02
code-assistant score= 6 owasp=LLM01
invoice-ocr-model score= 5 owasp=LLM01
churn-predictor score= 3 owasp=LLM02
O laboratório de Jonas pontua os sistemas da Brightwell nesses cinco fatores. O Ask Brightwell fica no topo porque lê avaliações não confiáveis, tem ferramentas que iniciam devoluções e trata dados de clientes. O redator de e-mails que ele encontrou depois fica logo abaixo, porque tem dados pessoais e envia e-mails. Anotar a pontuação de cada fator permite que os donos vejam por que um sistema ocupa sua posição e discutam um fator específico, e não o total.
11.4 Mantendo-o atualizado
Acrescente verificações do inventário à gestão de mudanças: novo modelo, nova ferramenta, nova fonte de dados ou novo prompt → atualize a entrada. Procure IA paralela (shadow AI): recursos de fornecedores ativados, funcionários usando chatbots públicos com dados da empresa. A Brightwell só encontrou seu quarto sistema de IA, o redator de e-mails do marketing, ao olhar além dos sistemas que a engenharia havia listado. Os atendentes que colavam e-mails num chatbot público, descobertos mais tarde durante um estágio, eram um uso paralelo que nenhuma varredura de sistemas conseguiria detectar. Por isso Jonas acrescentou a cada revisão trimestral do inventário uma pergunta a todas as equipes sobre quais recursos de IA ou chatbots elas usam com dados da empresa.
11.4b Campos do inventário
Uma entrada prática tem: nome do sistema; dono; finalidade; modelo (fornecedor e versão, ou arquivo e hash); prompts (localização, versão); fontes de dados e sua sensibilidade; índices; ferramentas e suas permissões; chaves e onde ficam guardadas; usuários; pessoas afetadas; pontuação de risco; data da última avaliação. Guarde as entradas no controle de versão para que as mudanças sejam revisadas. A entrada do Ask Brightwell agora registra o fornecedor e a versão fixada do modelo, o arquivo do prompt e sua versão, os índices de clientes e da equipe, as ferramentas de pedidos e de devoluções com seus escopos e o local onde a chave do fornecedor é guardada.
11.5 Exemplo resolvido (caso sintético da Brightwell)
Jonas monta o inventário da Brightwell e encontra um quarto sistema que ninguém havia listado: o redator de e-mails com IA da equipe de marketing, com acesso à lista de clientes. Ele o pontua com a abordagem do laboratório; o sistema fica logo abaixo do Ask Brightwell, porque tem dados pessoais e envia e-mails. Ele também descobre que o prompt de sistema do Ask Brightwell continha um código de desconto destinado à equipe e o retira dali. Os dois achados vieram do preenchimento cuidadoso dos campos do inventário. Perguntar quem usa a lista de clientes revelou o redator de e-mails; ler o prompt de sistema para registrar sua localização revelou o código de desconto.
11.6 Erros e limites
Três erros são comuns: inventários que listam apenas modelos; segredos em prompts de sistema; e inventários feitos uma única vez. O primeiro inventário da Brightwell mostrou os três. Ele listava modelos, mas não o acesso do redator de e-mails à lista de clientes; o prompt do Ask Brightwell guardava um código de desconto da equipe; e nada previa uma nova verificação. Entradas no controle de versão, revisadas a cada mudança, agora tratam do terceiro, e a ordenação de risco é refeita sempre que uma entrada muda. Os segredos agora ficam apenas no gerenciador de segredos, de modo que um prompt vazado revela instruções, mas nada que conceda acesso.
Exercícios
- EX031 — Ativos. Liste sete tipos de ativos do Ask Brightwell, com um dono para cada um. Rubrica: 3 = sete, com donos; 2 = cinco; 1 = três; 0 = menos.
- EX032 — Ordenação. Explique por que o laboratório coloca support-chatbot acima de churn-predictor. Rubrica: 3 = entrada não confiável, ferramentas, dados; 2 = dois; 1 = um; 0 = errado.
- EX033 — Segredo no prompt. Por que o código de desconto não deve ficar no prompt de sistema? Rubrica: 3 = prompts podem vazar (LLM07), o controle de acesso pertence a outro lugar; 2 = parcial; 1 = vago; 0 = errado.
Síntese
Conheça seus ativos de IA e o contexto em que eles rodam, ordene-os pela consequência e mantenha o registro atualizado por meio da gestão de mudanças.
Continue estudando — capítulo 11 de 30
← Capítulo 10 (rascunho) · Índice de capítulos do curso · Capítulo 12 (rascunho) →