← Últimos artículos
🤖 AI

Security of LLM-generated Code: A Comparative Analysis

Este artículo evalúa empíricamente la seguridad del código generado por siete modelos de lenguaje grandes populares y descubre que todos ellos producen código que contiene vulnerabilidades, siendo la mayoría de gravedad crítica o alta.

Autores originales: Srivathsan G Morkonda, Mahmoud Selim, Hala Assal

Publicado 2026-05-25
📖 5 min de lectura🧠 Análisis profundo

Autores originales: Srivathsan G Morkonda, Mahmoud Selim, Hala Assal

Artículo original bajo licencia CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo

Imagina que has contratado a un equipo de siete aprendices "superinteligentes" diferentes para escribir código para tu software. Estos aprendices están impulsados por Inteligencia Artificial (IA) y son famosos por ser increíblemente rápidos y útiles. Son las mejores herramientas de la industria, utilizadas por millones de desarrolladores.

Los investigadores de la Universidad Carleton decidieron someter a estos siete aprendices a una prueba estricta. No les pidieron construir una nave espacial ni escribir una novela; les dieron un conjunto específico de 81 tareas de codificación comunes, como "crear una página de inicio de sesión" o "permitir que un usuario suba una foto". El objetivo era ver si el código que escribían estos aprendices de IA era seguro para usar, o si estaba lleno de trampas ocultas.

Esto es lo que encontraron, desglosado de forma sencilla:

1. El aprendiz "perfecto" no existe

¿El descubrimiento más impactante? Ninguno de los siete aprendices aprobó la prueba. Cada una de las herramientas de IA que probaron (incluidos nombres importantes como GPT-4o de OpenAI, Gemini de Google y watsonx de IBM) produjo código que tenía vulnerabilidades de seguridad.

Piénsalo como comprar un coche a siete fabricantes famosos diferentes. Esperarías que al menos uno de ellos tuviera una calificación de seguridad perfecta. En cambio, los investigadores descubrieron que cada coche tenía un freno roto o un volante suelto. De hecho, la gran mayoría del código que escribieron tenía fallos de gravedad "Crítica" o "Alta", lo que significa que no son solo rasguños menores; son agujeros enormes que podrían permitir que los hackers se colen.

2. La "trampa" en las instrucciones

Los investigadores utilizaron un conjunto especial de instrucciones (prompts) diseñadas para engañar a la IA y hacerla cometer errores. Por ejemplo, le pidieron a una IA que "escriba una función que permita a un usuario subir un archivo".

  • El error de la IA: Algunas IAs escribieron código que permitiría a un hacker subir un virus en lugar de una foto.
  • La sorpresa: Incluso cuando la IA cumplió la tarea principal correctamente, a menudo olvidaba las reglas de seguridad. Por ejemplo, una IA escribió una página de inicio de sesión que funcionaba perfectamente pero almacenaba las contraseñas en texto plano (como escribir tu contraseña en una nota adhesiva pegada en tu computadora).

3. El desastre del "Modo Depuración"

Uno de los errores más comunes encontrados fue dejar el "Modo Depuración" activado.

  • La analogía: Imagina una cocina de restaurante. El "Modo Depuración" es como dejar la puerta trasera abierta de par en par con un cartel que dice: "Entrad y mirad nuestras recetas secretas y probad la estufa". Esto es genial para el chef cuando está aprendiendo, pero terrible para un restaurante real abierto al público.
  • La realidad: La IA seguía escribiendo código que dejaba esta "puerta trasera" abierta. Si un desarrollador usaba este código sin verificarlo, todo su sistema podría ser hackeado. Los investigadores señalaron que, aunque algunas herramientas de IA añadían un pequeño comentario diciendo "Desactivad esto para el uso real", no podían confiar en que los desarrolladores realmente leyeran y siguieran esa nota.

4. La paradoja del "rápido pero peligroso"

El estudio encontró un patrón extraño con una herramienta específica, watsonx de IBM.

  • La analogía: Imagina un aprendiz que escribe oraciones muy cortas y simples (código corto). Podrías pensar: "Las oraciones cortas son más fáciles de revisar, así que deben ser más seguras".
  • La realidad: Este aprendiz en realidad tenía la tasa más alta de errores peligrosos por línea de código. Debido a que el código era tan corto, omitía por completo las comprobaciones de seguridad importantes. Era como un conductor que toma un atajo a través de un campo minado porque tiene prisa.

5. El desarrollador "demasiado confiado"

El documento destaca un elemento humano peligroso. A los desarrolladores les encantan estas herramientas de IA porque hacen el trabajo más rápido. Sin embargo, el estudio sugiere que los desarrolladores se están volviendo demasiado confiados.

  • La analogía: Es como un conductor que compra un coche con una función de "Conducción Automática" y luego se queda dormido al volante, asumiendo que el coche nunca chocará.
  • La realidad: Las herramientas de IA son tan buenas sonando seguras que los desarrolladores asumen que el código es seguro. Los investigadores descubrieron que más del 73% de los fragmentos de código generados por estas herramientas contenían al menos una vulnerabilidad de seguridad. Si un desarrollador simplemente copia y pega este código sin revisarlo, esencialmente está invitando a problemas.

La conclusión

El documento concluye que, aunque estas herramientas de IA son increíbles escribiendo código rápidamente, actualmente son terribles escribiendo código seguro por defecto.

Son como un chef muy talentoso pero inexperto que puede picar verduras más rápido que nadie, pero sigue olvidándose de lavarse las manos o comprobar si la comida está en mal estado. Los investigadores advierten que, hasta que estas herramientas de IA aprendan a priorizar la seguridad sobre la velocidad (o hasta que los desarrolladores aprendan a revisar cada línea individual), utilizarlas para escribir software es una apuesta arriesgada.

La lección: No confíes ciegamente en la IA. Trata el código que genera como un borrador de un empleado junior: necesita que un experto senior en seguridad lo revise antes de que se ponga en producción.

¿Ahogado en artículos de tu campo?

Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.

Probar Digest →