La IA generadora de código puede introducir vulnerabilidades de seguridad, según un estudio

La IA generadora de código puede introducir vulnerabilidades de seguridad, según un estudio

Un estudio reciente encuentra que los ingenieros de software que utilizan sistemas de IA generadores de código tienen más probabilidades de causar vulnerabilidades de seguridad en las aplicaciones que desarrollan. El documento, escrito en coautoría por un equipo de investigadores afiliados a Stanford, destaca los peligros potenciales de los sistemas de generación de código a medida que los proveedores como GitHub comienzan a comercializarlos en serio.

“Actualmente, los sistemas de generación de código no reemplazan a los desarrolladores humanos”, Neil Perry, Ph.D. candidato en Stanford y coautor principal del estudio, le dijo a TechCrunch en una entrevista por correo electrónico. “Los desarrolladores que los usan para completar tareas fuera de sus propias áreas de especialización deberían estar preocupados, y aquellos que los usan para acelerar tareas en las que ya son expertos deben verificar cuidadosamente los resultados y el contexto en el que se usan en general. proyecto.”

El estudio de Stanford analizó específicamente Codex, el sistema de generación de código de IA desarrollado por el laboratorio de investigación OpenAI con sede en San Francisco. (Codex impulsa a Copilot). Los investigadores reclutaron a 47 desarrolladores, desde estudiantes universitarios hasta profesionales de la industria con décadas de experiencia en programación, para usar Codex para completar problemas relacionados con la seguridad en lenguajes de programación, incluidos Python, JavaScript y C.

Codex fue capacitado en miles de millones de líneas de código público para sugerir líneas de código y funciones adicionales dado el contexto del código existente. El sistema presenta un enfoque o solución de programación en respuesta a una descripción de lo que un desarrollador quiere lograr (por ejemplo, “Di hola mundo”), basándose tanto en su base de conocimientos como en el contexto actual.

Según los investigadores, los participantes del estudio que tenían acceso a Codex tenían más probabilidades de escribir soluciones incorrectas e “inseguras” (en el sentido de ciberseguridad) a problemas de programación en comparación con un grupo de control. Aún más preocupante, era más probable que dijeran que sus respuestas inseguras eran seguras en comparación con las personas del control.

Megha Srivastava, estudiante de posgrado en Stanford y segunda coautora del estudio, enfatizó que los hallazgos no son una condena total del Codex y otros sistemas generadores de código. Los participantes del estudio no tenían experiencia en seguridad que les hubiera permitido detectar mejor las vulnerabilidades del código, por ejemplo. Aparte de eso, Srivastava cree que los sistemas de generación de código son confiablemente útiles para tareas que no son de alto riesgo, como el código de investigación exploratoria, y podrían mejorar sus sugerencias de codificación con un ajuste fino.

“Empresas que desarrollan sus propios [systems]quizás más capacitado en su código fuente interno, puede estar mejor ya que se puede alentar al modelo a generar resultados más en línea con sus prácticas de codificación y seguridad”, dijo Srivastava.

Entonces, ¿cómo podrían los proveedores como GitHub evitar que los desarrolladores introduzcan fallas de seguridad al usar sus sistemas de IA generadores de código? Los coautores tienen algunas ideas, incluido un mecanismo para “refinar” las indicaciones de los usuarios para que sean más seguras, similar a un supervisor que examina y revisa borradores de código. También sugieren que los desarrolladores de bibliotecas de criptografía se aseguren de que su configuración predeterminada sea segura, ya que los sistemas de generación de código tienden a apegarse a los valores predeterminados que no siempre están libres de vulnerabilidades.

“Las herramientas de generación de código del asistente de IA son un desarrollo realmente emocionante y es comprensible que tantas personas estén ansiosas por usarlas. Sin embargo, estas herramientas plantean problemas para considerar avanzar… Nuestro objetivo es hacer una declaración más amplia sobre el uso de modelos de generación de código”, dijo Perry. “Se necesita más trabajo para explorar estos problemas y desarrollar técnicas para abordarlos”.

Para el punto de Perry, la introducción de vulnerabilidades de seguridad no es el único defecto de los sistemas de IA generadores de código. Al menos una parte del código en el que se capacitó Codex está bajo una licencia restrictiva; los usuarios han podido solicitar a Copilot que genere código de Quake, fragmentos de código en bases de código personales y código de ejemplo de libros como “Mastering JavaScript” y “Think JavaScript”. Algunos expertos legales han argumentado que Copilot podría poner en riesgo a las empresas y los desarrolladores si involuntariamente incorporaran sugerencias protegidas por derechos de autor de la herramienta en su software de producción.

El intento de GitHub de rectificar esto es un filtro, introducido por primera vez en la plataforma Copilot en junio, que verifica las sugerencias de código con su código circundante de aproximadamente 150 caracteres contra el código público de GitHub y oculta las sugerencias si hay una coincidencia o una “casi coincidencia”. Pero es una medida imperfecta. Tim Davis, profesor de ciencias de la computación en la Universidad de Texas A&M, descubrió que al habilitar el filtro, Copilot emitía grandes fragmentos de su código protegido por derechos de autor, incluidos todos los textos de atribución y licencia.

“[For these reasons,] En gran medida, expresamos cautela hacia el uso de estas herramientas para reemplazar la educación de los desarrolladores principiantes sobre prácticas de codificación sólidas”, agregó Srivastava.


Source link