AppSec no código do assistente é o mesmo AppSec do código humano: review, teste no merge e segredo fora do contexto. O assistente não assina o pull request. Quem assina é a engenheira que leu o diff e recusou o atalho — dependência nova, credencial colada, lógica de autorização “simplificada”.

O risco não é o modelo “ser malicioso”. É velocidade sem o ritual que vocês já exigiam de um colega. Trecho gerado parece plausível, passa no compile e introduz um caminho que ninguém desenhou. Segurança de IA generativa começa nesse ponto: o artefato é código, não chat.

O que o review humano precisa procurar

Além do que já se procura em PR:

  • segredo no prompt ou no diff — chave, cookie, connection string, dado de cliente;
  • dependência nova sem pin e sem motivo;
  • autorização relaxada “porque o exemplo do modelo era aberto”;
  • tratamento de erro que vaza stack ou dado;
  • código morto ou duplicado que aumenta superfície.

Credencial fora do contexto do modelo é regra de ouro: o assistente não recebe o cofre. Quem cola segredo no chat para “fazer funcionar” já perdeu o incidente, mesmo que o PR pareça limpo.

O artigo segurança em IA generativa cobre o recorte de modelo e dado. Este texto é o chão de fábrica: diff, merge, pessoa.

Assistente no fluxo — sem fila paralela

Se o time tem um processo de AppSec só para “código de IA”, ele vai ser contornado. O assistente escreve no mesmo branch. O teste que entra no merge — SAST, secret scan, dependência — vale para todo commit. AppSec no pipeline é o lugar do automático; o review humano é o lugar do julgamento.

Política curta no repositório:

  1. nenhum segredo no prompt;
  2. todo PR com assistente marcado (label) para o revisor saber a origem — transparência, não estigma;
  3. recusa de merge se o autor não souber explicar o trecho.

Label não é burocracia. É honesto: o revisor calibra atenção. Autor que não explica o patch gerado não está pronto para merge, com ou sem modelo.

O que não fazer

Não desligar linter “porque o modelo gera estilo diferente”. Não autorizar o assistente a commitar na main. Não tratar CVE de dependência gerada como problema do fornecedor do modelo — é problema do repositório. Não prometer que review humano vê “toda linha”: o ritual reduz risco; não elimina. Prova antes da promessa: o processo existe; o incidente zero não é garantia.

Desde 2012 a Tech Coders trata entrega como engenharia com dono. Assistente é ferramenta no mesmo processo.

Como a Tech Coders aplica AppSec na fábrica

Na fábrica de software, código de assistente passa pelo mesmo sprint de 15 dias: review, pipeline e aceite. Não há trilha especial que pule secret scan. Sustentação 24×7 e resgate de legado incluem o mesmo critério quando o time já usa assistente no dia a dia — o merge continua humano.

Perguntas frequentes

Preciso proibir assistente para ter AppSec?

Não. Precisa do mesmo pipeline e do mesmo review. Proibir em um time e liberar em outro só esconde o uso.

Label de IA no PR expõe o time?

Expõe origem, não culpa. Time maduro quer saber o que foi gerado para revisar melhor. Esconder origem aumenta o risco.

Secret scan pega prompt colado?

Pega segredo que entrou no repo. Prompt no chat do fornecedor é outro canal — por isso a regra é não colar. Scan não substitui a regra.

Quem responde se o patch gerado abrir um buraco?

O autor do merge e o dono do serviço. O modelo não tem on-call. Essa frase deveria estar no runbook.