Programar por vibração, a prática de criar software descrevendo-o para um modelo de IA em vez de escrever e revisar manualmente cada linha, tornou-se cada vez mais comum no setor de tecnologia. Sua velocidade e acessibilidade podem ajudar as pessoas a criar com menos recursos, mas códigos que não são totalmente compreendidos ou inspecionados podem introduzir riscos de segurança.
A empresa de cibersegurança Apiiro afirmou que uma análise de empresas da Fortune 50 constatou que programar por vibração tornou os engenheiros quatro vezes mais produtivos, mas produziu dez vezes mais problemas de segurança. Para iniciantes, as práticas a seguir podem reduzir alguns dos riscos.
1. Escreva instruções precisas e crie um arquivo de segurança persistente
Os modelos de IA podem usar atalhos para atender a uma solicitação sem adicionar proteções adequadas. Portanto, os prompts devem especificar requisitos de privacidade, restrições de acesso, criptografia e outros controles de segurança. Os desenvolvedores também podem pedir ao modelo que considere a lista da OWASP das principais vulnerabilidades.
Muitas ferramentas oferecem suporte a contexto ou regras persistentes. Um arquivo Markdown pode conter os requisitos de segurança do projeto para que o modelo os considere durante tarefas futuras. A fonte também recomenda escolher ferramentas com registros de auditoria, que facilitam o acompanhamento das mudanças no projeto.
2. Mantenha as credenciais fora dos prompts e do código-fonte
Chaves de API e senhas não devem ser inseridas em um chat de IA nem incorporadas diretamente ao código. Se as credenciais forem posteriormente enviadas ao GitHub, elas poderão ficar visíveis para outras pessoas. Restringir o acesso de uma ferramenta de IA também pode ajudar a reduzir o risco de ataques de injeção de prompt.
Para iniciantes, a abordagem recomendada é armazenar informações confidenciais em um gerenciador de senhas e usar os recursos de secrets ou variáveis de ambiente oferecidos por serviços como Replit, Lovable ou Vercel. Quando esses recursos não estiverem disponíveis, pode-se usar um arquivo .env no backend, desde que ele seja excluído por meio do .gitignore e nunca seja exposto no frontend da aplicação. O TruffleHog pode ajudar a detectar secrets vazados acidentalmente.
3. Proteja os dados da aplicação
Aplicações que lidam com grandes quantidades de dados podem depender de bancos de dados SQL, que podem ser alvos de ataques de injeção de SQL. Os desenvolvedores devem instruir a IA a parametrizar consultas, sanitizar entradas, usar Server Actions para operações críticas e habilitar a segurança em nível de linha com políticas adequadas, quando aplicável.
A fonte também recomenda verificar se o projeto usa versões atuais de suas bibliotecas. Os sistemas de IA podem sugerir pacotes que não existem ou introduzir inadvertidamente dependências maliciosas; por isso, as recomendações geradas devem ser verificadas antes de serem adotadas.
4. Adicione limitação de taxa
A limitação de taxa restringe a frequência com que um usuário ou sistema automatizado pode realizar uma ação. Ela pode ajudar a reduzir atividades de negação de serviço, ataques de força bruta contra senhas e tentativas de preenchimento de credenciais.
Os limites adequados dependem da aplicação. Um chatbot de suporte, por exemplo, poderia estabelecer limites para o número de tokens consumidos por cada usuário diariamente. Quando possível, a fonte recomenda limitar a atividade pelo ID da conta antes de usar endereços IP, tornando mais difícil contornar os controles com uma VPN. Fluxos de verificação por e-mail ou telefone e CAPTCHA podem oferecer proteção adicional contra atividades indesejadas.
5. Revise e teste o código gerado
Uma revisão profissional de software é preferível, mas os desenvolvedores também podem pedir a um modelo de IA que procure vulnerabilidades e teste o projeto em relação ao OWASP Top 10. Usar um modelo diferente para uma segunda revisão pode revelar problemas que passaram despercebidos na primeira.
A fonte lista várias ferramentas desenvolvidas para avaliar projetos gerados por IA, incluindo Claude Code Security, Codex Security, Wingman, da Stackhawk, CheckVibe, SafeToShip e Vibe App Scanner. As verificações de segurança devem continuar após o lançamento, pois é necessário monitorar a aplicação implantada para identificar novos problemas.
Fontes: Engadget.