El contexto de tu repositorio es ahora una superficie de ataque
La seguridad en la programación con IA es más que simplemente evitar que un modelo escriba código defectuoso.
El riesgo real reside en lo que el agente lee antes de escribir. Tu repositorio ya no es solo un lugar para el código. Ahora es un flujo de entrada para agentes de IA.
Todo en tu repositorio puede convertirse en material de dirección para un agente:
- Archivos README antiguos
- Notas de migración obsoletas
- Documentación desactualizada
- Convenciones de proyecto ocultas
- Archivos de instrucciones locales
- Scripts de dependencias y hooks de shell
Los desarrolladores suelen tratar estos archivos como desorden inofensivo. Un agente de IA no percibe el contexto social. Ve texto, herramientas y patrones. Si tu documentación es antigua o desordenada, el agente tratará ese desorden como el estándar.
El mal contexto se presenta de dos formas:
- Errores irrelevantes:
- Instrucciones de configuración desactualizadas
- Ejemplos que utilizan APIs obsoletas
- Notas de arquitectura antiguas
- Ataques adversarios:
- Inyección de prompts dentro de los archivos
- Scripts de dependencias maliciosos
- Ejemplos envenenados que empujan el código hacia patrones inseguros
Cuando le das a un agente el poder de ejecutar pruebas, buscar archivos o abrir pull requests, aumentas el radio de impacto. Un sistema de hooks ya no es solo una herramienta de productividad. Es automatización. Debes tratarlo como tal.
Hazte estas preguntas sobre tu flujo de trabajo:
- ¿Quién puede editar un hook?
- ¿Qué variables de entorno puede ver el agente?
- ¿Hereda el agente las credenciales del desarrollador?
- ¿Escribe la herramienta fuera del repositorio?
No trates a los agentes como cajas de texto mágicas. Trátalos como infraestructura de desarrollo.
Cómo asegurar tu flujo de trabajo agéntico:
- Limita el alcance: No apuntes un agente a todo tu proyecto si solo necesita tres archivos.
- Limpia el contexto: Elimina o corrige la documentación obsoleta y las instrucciones antiguas.
- Refuerza la ejecución: Ejecuta tareas de riesgo en un sandbox. Mantén las credenciales con alcance limitado.
- Exige visibilidad: Sabe exactamente qué leyó el agente, qué herramientas llamó y qué comandos ejecutó.
Un agente de IA es como un desarrollador junior con acceso a la shell y una gran velocidad de escritura. No le darías a un nuevo desarrollador junior credenciales completas de producción en su primer día. Le darías tareas pequeñas, un contexto limpio y permisos limitados.
Trata a tus agentes de la misma manera.
Fuente: https://dev.to/hefty_69a4c2d631c9dd70724/your-repo-context-is-an-attack-surface-now-5dhj
Comunidad de aprendizaje opcional: https://t.me/GyaanSetuAi