Palo Alto alerta sobre los riesgos asociados al uso de herramientas de vibe-coding basadas en IA

En los últimos años, la codificación asistida por inteligencia artificial, conocida como ‘vibe-coding’, se ha consolidado como una práctica ampliamente adoptada en el desarrollo de software. Según el State of Cloud Security Report 2025 de Palo Alto Networks, el 99% de las organizaciones ya utilizan agentes de IA en sus procesos de desarrollo.

Sin embargo, el último informe de Unit 42, la unidad de inteligencia de amenazas de Palo Alto, alerta de que esta nueva forma de programar puede generar riesgos de seguridad significativos si se adopta sin controles adecuados. Y es que estas herramientas permiten a profesionales de la programación y desarrollo –y también a los Citizen Developers o perfiles sin conocimientos técnicos avanzados en revisión de código o seguridad– generar grandes volúmenes de código funcional en poco tiempo. Código que puede contener vulnerabilidades ocultas, malas prácticas de seguridad o dependencias inseguras que pasan desapercibidas durante las pruebas iniciales y solo se detectan cuando ya están en producción.

Del desarrollo asistido al riesgo automatizado

De acuerdo con Unit 42, el principal problema no reside en la tecnología en sí, sino en la falsa sensación de seguridad que puede generar ocultando fallos de seguridad difíciles de detectar en fases tempranas. El vibe-coding o código creado por IA suele “parecer correcto” y cumplir su función, pero no está diseñado de forma nativa para cumplir estándares de secure coding.

Introduciendo cambios relevantes en la forma en que surgen las vulnerabilidades, muchos fallos de seguridad se originan directamente en la fase de desarrollo, cuando el código se genera de forma automática a una gran velocidad, lo que aumenta la probabilidad de integrar en el proceso diferentes fallos como:

  • Desarrollo inseguro de aplicaciones que provoca una brecha de seguridad.
  • Lógica insegura de la plataforma que conduce a la ejecución de código.
  • Lógica insegura de la plataforma que permite eludir la autenticación.
  • Eliminación indebida de una base de datos que provoca pérdida de datos.

Además, estas herramientas pueden convertirse en el nuevo objetivo para los ciberdelicuentes, que buscan manipular su comportamiento mediante diferentes técnicas como la inyección de instrucciones en los programadores o el uso de fragmentos de código procedentes de fuentes externas que alojan un software malicioso.

Asegurar la “vida del código”: una prioridad estratégica

Para hacer frente a este escenario, Unit 42 ha presentado el marco S H I E L D, diseñado para reintroducir principios de diseño seguro en la codificación asistida por inteligencia artificial. Este marco proporciona a las organizaciones una guía práctica para equilibrar la productividad del vibe-coding con una gestión eficaz del riesgo, evitando que la innovación se traduzca en una mayor superficie de ataque:

  • S – Separation of Duties: las plataformas de vibe-coding pueden otorgar privilegios excesivos. Evita funciones incompatibles y limita a los agentes de IA a entornos de desarrollo y prueba.
  • H – Human in the Loop: exige una revisión humana obligatoria y aprobación de PR para cualquier código crítico.
  • I – Input/Output Validation: separa instrucciones confiables de datos no confiables y aplica validaciones de seguridad (SAST) antes de fusionar el código.
  • E – Enforce Security-Focused Helper Models: utiliza agentes especializados para validar la seguridad, escanear secretos y verificar controles antes del despliegue.
  • L – Least Agency: aplica el principio de mínimo privilegio, restringiendo accesos y comandos destructivos.
  • D – Defensive Technical Controls: implementa SCA y desactiva la autoejecución para reforzar la supervisión y la seguridad en el despliegue.

Aunque el vibe-coding representa una evolución natural en el desarrollo de software, Palo Alto advierte de que muchas organizaciones están relegando principios de seguridad consolidados, como el del “privilegio mínimo”, en favor de la rapidez y la funcionalidad. Por ello, esta práctica no debería adoptarse sin una revisión profunda de los enfoques de seguridad, ya que la protección no puede limitarse a las fases finales del ciclo de vida de la aplicación, sino integrarse desde el diseño y la generación inicial del código, garantizando un desarrollo seguro y fiable.

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *