OpenAI se adelanta en código seguro con GPT-5, pero la industria de la IA se queda estancada, según Veracode

El sueño de pedirle a una Inteligencia Artificial que programe por nosotros sigue avanzando, pero con una gran letra pequeña: el código que generan los modelos sigue teniendo fallos de seguridad importantes. Y, según el último GenAI Code Security Report de Veracode, solo un proveedor está mejorando de forma clara en este terreno: OpenAI.

La actualización de octubre de 2025 del informe analiza cómo se comportan los modelos de lenguaje más recientes a la hora de escribir código seguro en cuatro lenguajes (Java, C#, Python y JavaScript) y frente a cuatro tipos de vulnerabilidades clave (inyección SQL, XSS, uso de criptografía insegura y log injection). El resultado deja un titular claro para administradores de sistemas y responsables de seguridad: los modelos GPT-5 con capacidades de razonamiento lideran la clasificación, mientras que el resto del sector apenas ha avanzado.


GPT-5 Mini y GPT-5 marcan máximos históricos en seguridad

Veracode ha repetido exactamente el mismo benchmark de 80 tareas que ya utilizó en julio de 2025, lo que permite comparar con precisión la evolución de los modelos. En esa batería de pruebas, OpenAI se coloca al frente de la carrera con dos modelos:

  • GPT-5 Mini: 72 % de tareas superadas sin vulnerabilidades detectables.
  • GPT-5 “estándar”: 70 % de código considerado seguro por las reglas de análisis estático.

Son las puntuaciones más altas registradas hasta la fecha en este estudio. En generaciones anteriores, incluso los mejores modelos se movían entre el 50 % y el 60 % de aciertos.

El contraste llega cuando se miran el resto de proveedores:

  • Anthropic Claude Sonnet 4.5 se queda en un 50 % y Claude Opus 4.1 baja al 49 %.
  • Google Gemini 2.5 Pro alcanza un 59 % y Gemini 2.5 Flash un 51 %.
  • Qwen3 Coder y xAI Grok 4 rondan el 50-55 %.

En la práctica, la mayoría de modelos competidores siguen “atascados” en la banda del 50-59 % que Veracode ya detectó en verano. El informe subraya que, en muchos casos, incluso han empeorado ligeramente respecto a versiones anteriores.


El factor diferencial: razonamiento alineado con la seguridad

La principal novedad de los modelos de OpenAI analizados es que no se limitan a “escupir” código directamente:

  • Los GPT-5 de razonamiento ejecutan una especie de diálogo interno antes de responder. Trabajan el problema en varios pasos y filtran las propuestas de código antes de ofrecérselas al usuario.

Cuando Veracode compara estos modelos con gpt-5-chat, la versión sin razonamiento explícito, la diferencia es muy clara: ese modelo se queda en un 52 % de código seguro, muy lejos del 70-72 %.

El informe plantea dos hipótesis para explicar este salto:

  1. Entrenamiento explícito en seguridad. OpenAI publica en la documentación de GPT-5 resultados frente a retos tipo capture the flag, donde los modelos deben encontrar vulnerabilidades. Eso sugiere que el entrenamiento ha incluido tareas de seguridad ofensiva, y que esa experiencia se ha aprovechado para evitar patrones inseguros al generar código.
  2. Alineamiento del razonamiento con buenas prácticas. El hecho de que solo los modelos con razonamiento hayan mejorado apunta a que esa fase interna funciona como una especie de code review automático, donde el propio modelo revisa si hay construcciones potencialmente peligrosas antes de mostrarlas al usuario.

Mientras tanto, otros laboratorios han priorizado que sus modelos no expliquen técnicas ofensivas, lo que puede estar limitando su capacidad para reconocer y evitar vulnerabilidades complejas.


Lenguajes de empresa: C# y Java mejoran, JavaScript y Python se estancan

Para administradores de sistemas y responsables de plataformas, el detalle por lenguaje es especialmente relevante. El informe muestra una mejora significativa en dos lenguajes muy ligados a sistemas corporativos:

  • C# y Java muestran una tendencia clara al alza en seguridad en los modelos más recientes, especialmente en los de OpenAI.

Según Veracode, esto sugiere que los laboratorios de IA están afinando sus modelos para casos de uso de alto impacto empresarial, donde un fallo de seguridad puede tener consecuencias graves.

Sin embargo, Python y JavaScript se mantienen prácticamente planos respecto a julio, con resultados similares en seguridad.

Para los equipos DevOps y de observabilidad, esto implica que los proyectos web y los scripts de automatización –frecuentemente escritos en estos lenguajes– siguen siendo terreno especialmente delicado cuando se apoyan en código generado por IA.


Donde fallan todos: XSS y log injection siguen siendo el talón de Aquiles

Más allá de los modelos, el informe analiza el rendimiento por tipo de vulnerabilidad, usando cuatro CWEs muy habituales:

  • CWE-89 (inyección SQL)
  • CWE-327 (algoritmos criptográficos inseguros)
  • CWE-80 (cross-site scripting)
  • CWE-117 (log injection)

Los mejores resultados se dan en:

  • Inyección SQL y cifrado inseguro, donde los modelos superan de media el 80 % de aciertos y siguen mejorando con cada generación.

Tiene sentido: elegir siempre consultas parametrizadas o algoritmos criptográficos modernos es una decisión que el modelo puede tomar sin necesidad de conocer el contexto completo de la aplicación.

En cambio, la situación es preocupante en:

  • XSS y log injection, con tasas de éxito por debajo del 14 % y en algunos casos en descenso.

Aquí el problema es mucho más complejo: para saber qué campos deben sanearse hace falta entender qué datos proceden de usuarios, algo que requiere un análisis de flujos de datos interprocedural y con conocimiento del contexto de la aplicación. Veracode recuerda que su propio motor de análisis estático necesita recorrer grandes porciones del código para inferirlo, y considera poco probable que los modelos generativos puedan hacerlo de forma fiable solo a partir del prompt y algunos fragmentos de código.


El tamaño ya no importa (tanto): modelos grandes, mismas fugas

Otra conclusión relevante para equipos de infraestructura que evalúan qué modelo desplegar en sus propios clústeres o nubes privadas:

  • El tamaño del modelo apenas influye en la seguridad del código.

Veracode agrupa los modelos en tres categorías (pequeños, medianos y grandes, según el número de parámetros) y observa que las tasas de código seguro oscilan en torno al 51 % en todos los casos, sin diferencias significativas.

En otras palabras: mover un proyecto desde un modelo de 20.000 M de parámetros a otro de más de 100.000 M no garantiza que el código sea más seguro. El salto de calidad viene más por el tipo de entrenamiento (razonamiento, datos de seguridad, red teaming) que por escalar el tamaño de la red neuronal.


Para los equipos de sistemas: qué hacer con estos datos

El mensaje de Veracode es claro: incluso con modelos como GPT-5 Mini, que marcan un nuevo techo de seguridad, no es viable delegar la protección de las aplicaciones solo en la IA.

La compañía recomienda una estrategia en capas para los equipos de desarrollo, operaciones y seguridad:

  • Elegir modelos con razonamiento cuando sea posible, especialmente para código que toque bases de datos, autenticación o lógica crítica.
  • Mantener el análisis estático (SAST) y el análisis de composición de software (SCA) en la pipeline de CI/CD, independientemente de si el código lo ha escrito un humano, una IA o ambos.
  • Automatizar la corrección de vulnerabilidades con herramientas de auto-fix y motores de recomendación, como Veracode Fix, para reducir el tiempo entre la detección y la mitigación.
  • Controlar las dependencias y paquetes maliciosos con mecanismos como package firewalls, especialmente en ecosistemas como npm o PyPI.

Para los administradores de sistemas, esto se traduce en más trabajo de integración y orquestación, pero también en una oportunidad: consolidar la observabilidad y el gobierno de la seguridad en torno a una cadena de herramientas que trate el código generado por IA como “sospechoso por defecto”.


Un aviso para navegantes: la IA mejora, pero la deuda de seguridad sigue ahí

El informe concluye con un mensaje que sirve tanto para CISOs como para cualquier sysadmin que ya tenga asistentes de código en producción:

Incluso los modelos más avanzados siguen introduciendo vulnerabilidades en casi la mitad de las tareas probadas. La mejora en razonamiento de algunos proveedores es prometedora, pero está lejos de ser suficiente para garantizar aplicaciones seguras sin controles adicionales.

La revolución de la programación asistida por IA no va a frenar, pero la de la seguridad aplicada a ese código tampoco puede hacerlo. Y, por ahora, el eslabón fuerte no es el modelo, sino el pipeline de seguridad que se construya alrededor.


Preguntas frecuentes

¿Qué es el GenAI Code Security Report de Veracode?
Es un informe de investigación que evalúa la seguridad del código generado por modelos de lenguaje (LLM). Veracode utiliza un conjunto de 80 tareas de programación en Java, C#, Python y JavaScript, cada una diseñada para poder implementarse de forma segura o insegura y asociada a una vulnerabilidad concreta (inyección SQL, XSS, criptografía insegura y log injection). El código generado se analiza con su motor de análisis estático para medir qué porcentaje de veces el modelo elige una implementación segura.

¿Por qué los modelos GPT-5 de razonamiento generan código más seguro?
Según Veracode, estos modelos realizan un proceso interno de razonamiento antes de responder: descomponen el problema, evalúan opciones y filtran las soluciones. Esa “revisión interna” actúa como una especie de code review automático, aumentando la probabilidad de detectar patrones inseguros antes de entregar el código al usuario. Además, todo apunta a que OpenAI ha entrenado estos modelos con tareas específicas de seguridad ofensiva, lo que mejora su intuición para evitar vulnerabilidades.

¿Significa esto que se puede confiar ciegamente en el código generado por GPT-5?
No. Aunque GPT-5 Mini alcanza un 72 % de aciertos, eso implica que casi 3 de cada 10 fragmentos pueden seguir teniendo vulnerabilidades. En ámbitos como XSS o log injection, los porcentajes de éxito de todos los modelos son muy bajos. Por tanto, el código generado por IA debe pasar por las mismas revisiones de seguridad, análisis estático y pruebas que el código escrito a mano.

¿Qué deben hacer los equipos de desarrollo y sistemas para usar IA de forma segura?
La recomendación es combinar asistentes de código con una cadena de seguridad sólida: elegir modelos con razonamiento cuando estén disponibles, mantener SAST y SCA en el pipeline de CI/CD, usar herramientas de corrección automatizada, controlar las dependencias y reforzar las políticas de code review. La IA puede acelerar el desarrollo, pero la responsabilidad de desplegar aplicaciones seguras sigue recayendo en los equipos de ingeniería y seguridad.

Fuentes:
veracode, GenAI Code Security Report – October 2025 Update.

Scroll al inicio