redaccion@diariodigitalis.com

Copilot, la IA de GitHub, genera casi un 40% de código vulnerable

Un estudio académico ha demostrado que casi el 40% del código generado por Copilot, la inteligencia artificial creada por GitHub junto a OpenAI, presenta vulnerabilidades de seguridad. Esta herramienta ha sido entrenada con miles de millones de líneas de código, así que lo más probable es que el origen de estos errores esté en errores humanos «imitados» de esas líneas.

“El código a menudo contiene errores, por lo que, dada la gran cantidad de código sin verificar que Copilot ha procesado, es seguro que el modelo de lenguaje habrá aprendido del código explotable y con errores. Esto genera preocupaciones sobre la seguridad de las contribuciones al código de Copilot”, explican los responsables de la investigación.

El modelo de aprendizaje automático aún se encuentra en fase de desarrollo, por lo que este problema podría resolverse tarde o temprano. Teniendo en cuenta la ambición del proyecto, es lógico que aún haya algunos aspectos por pulir. Al margen de esto, se trata de una herramienta que tiene como objetivo acelerar significativamente el proceso de desarrollo y, pese a sus errores, eso lo hace con creces.

Copilot no pretende ocupar el lugar de los desarrolladores, sino ser una herramienta de asistencia. No obstante, algunos le acusan de robar su trabajo sin su consentimiento, lo que, según Free Software Foundation, podría resultar en una infracción de derechos de autor.

Un proyecto ambicioso que todavía no es perfecto

Hace un mes, vio la luz Copilot. El modelo de aprendizaje automático se presentaba como un proyecto muy prometedor, siendo una suerte de asistente de los programadores. Esta herramienta es capaz de ofrecer sugerencias para completar código e incluso convertir comentarios en lenguaje de máquina.

Copilot está basado en Codex, un nuevo sistema de inteligencia artificial, que comprende una gran cantidad de lenguajes de programación y frameworks. Que sepamos, ofrece sugerencias bastante acertadas para Python, JavaScript, TypeScript, Ruby y Go, pero también posee conocimientos sobre muchos más. Su versión preliminar está disponible para usuarios de Visual Studio Code y GitHub Codespaces, el entorno de desarrollo alojado en la nube.

Id bootcamps Banner

No obstante, aún no es perfecto. Al beber de fuentes humanas, puede cometer errores, sobre todo cuando se trata de seguridad. Así lo ha dejado de manifiesto el estudio (“An Empirical Cybersecurity Evaluation of GitHub Copilot’s Code Contributions”) realizado por cinco investigadores de la Universidad de Nueva York.

Copilot no distingue entre el código moderno y el antiguo

En el comunicado, explican qué metodología han seguido para obtener los resultados: crearon 89 escenarios en los que Copilot debía actuar. Como consecuencia, el asistente virtual creó 1.692 programas diferentes en distintos lenguajes. Sin embargo, casi el 40% de estos contenían fallas de seguridad que podrían ser explotadas por usuarios malintencionados.

“En general, la respuesta de Copilot a nuestros escenarios es mixta desde el punto de vista de la seguridad, dada la gran cantidad de vulnerabilidades generadas (en todos los ejes y lenguajes, el 39,33% de las opciones principales y el 40,48% del total eran vulnerables)”, declaran los investigadores.

Como comentamos, la herramienta no es capaz de crear código por sí misma, sino que aprovecha la gran cantidad de líneas con la que ha sido entrenada para realizar las sugerencias que considera más adecuadas en función del contexto. Por ello, los investigadores concluyen que la causa más probable de estas vulnerabilidades es que se nutre de código escrito por humanos.

Además, comentan que Copilot no tiene en cuenta la antigüedad del código, por lo tanto, podría hacer sugerencias que no cumplan con los estándares de seguridad actuales. La proliferación del malware, cada vez más sofisticado, ha obligado a escribir código más seguro para proteger un software o sitio web frente a cualquier amenaza posible. Al no dar prioridad al código más moderno, Copilot puede ofrecer soluciones vulnerables y, por ende, inadecuadas. Por eso, es recomendable contar con otras herramientas que atenúen estas vulnerabilidades.

Artículos Relacionados

Suscríbete a nuestra newsletter


(Obligatorio)

También te puede gustar

DEJA UNA RESPUESTA

Por favor ingrese su comentario!
Por favor ingrese su nombre aquí

Suscríbete a nuestra newsletter