Por qué el código de IA puede ser peligroso si no se trata adecuadamente

Why AI Code May Be Dangerous If Not Treated Correctly

La IA generativa ya se encuentra completamente embebida en muchos flujos de trabajo, y pasa lo mismo con Wildix. Usamos herramientas con IA para ayudar a generar contenido y con los emails, supervisado siempre por nuestro equipo de generación de contenido. Además, nuestros desarrolladores usan herramientas de IA para crear código. Incluso nuestro CEO usa la IA para ayudarle a refinar sus emails y asegurarse de que todo sea claro.

Todo esto ocurre bajo la supervisión de profesionales cualificados que entienden los sistemas que están usando y las limitaciones de los mismos. Así que vamos a hablar sobre qué ocurre cuando los desarrolladores usan la IA sin la supervisión adecuada.

Algunas estadísticas: Desarrolladores y la IA

Una de las mayores encuestas realizadas a programadores en 2023 fue creada por Zero to Mastery, un gran recurso para desarrolladores que buscan mejorar sus habilidades. En ella, la empresa describe lo siguiente:

  • El 84.4% de los programadores usan herramientas de IA.
  • El más usado es ChatGPT, el 74.9% lo usa semanalmente.
  • El 58.5% usa IA para escribir código.
  • El 36.6% de los que no usan la IA dicen que la curva de aprendizaje les echa para atrás.
  • El 13.4% de los que no usan IA dicen que la precisión les genera preocupación.
  • El 77.8% de los programadores creen que las herramientas de IA tienen un impacto positivo.

En general, esto ilustra una imagen positiva del uso de la IA por desarrolladores cualificados. Y mientras que los desarrolladores en cuestión entiendan las bases del código que están usando y probando, no habrá problemas. El problema viene cuando los programadores se ven obligados a usar la IA, no entienden lo que están haciendo y se crea un código dudoso o con errores que servirá como código base de un producto.

Los riegos del código generado por IA

«Un buen desarrollador con ChatGPT es incluso mejor», dice Dimitri Osler, fundador y CTO de Wildix. «Pero también es un gran riesgo en manos de desarrolladores inexpertos o empresas que no realizan las comprobaciones de seguridad y de calidad. El potencial riesgo para desarrolladores que usen código que no entienden o no pueden mantener es muy alto.»

Desde nuestro punto de vista, la IA es solo otra herramienta. Usarla no es ni bueno ni malo — en lugar de eso, lo que puede ser bueno o malo es cómo se usa. Lo mismo se aplica a las herramientas como Stack Overflow o GitHub:

  • Stack Overflow es un foro de Q&A donde los desarrolladores pueden obtener opiniones y respuestas para su código.
  • GitHub es un repositorio donde los desarrolladores pueden compartir código y colaborar en proyectos.

El uso de estas herramientas genera un cierto nivel de riesgo. La especulación inicial sobre la brecha 3CX en marzo de 2023 sugiere que venía de un repositorio de código de GitHub infectado, aunque esto luego probó ser falso. De hecho, incluso el propio GitHub era vulnerable a la explotación a través de la técnica de RepoJacking, donde actores maliciosos pueden apoderarse d repositorios al suplantar los nombres de usuario de los mismos. Tras esto pueden reemplazar los repositorios con código malicioso. Este problema ya fue resuelto.

Todo esto implica que el código malicioso no es nada nuevo. Sin embargo, la IA hace que este problema empeore potencialmente.

«El mejor resultado de un código malo generado por IA es que simplemente no funcione», indica Dimitri. «El código se rechaza y se tiene que generar un código nuevo, rezando para que funcione esta vez. El peor escenario es que un código que inicialmente funciona genere un exploit que nadie ha descubierto porque no se ha llegado a revisar y probar lo que realmente hace.»

La clave para mantener los sistemas seguros, es probarlos de forma regular por desarrolladores altamente cualificados. En marzo de 2023, Dimitri dijo lo siguiente: «La seguridad no es barata. Los MSPs no pueden permitirse tomar más riesgos, y tu reputación se verá afectada si buscas la solución más barata.»

Estas palabras se referían a la brecha 3CX, y este ataque causó mucho estrés y preu pación tanto a los MSPs como a los usuarios finales. Parte del problema parece tener que ver con un código que fue insertado sin probarse adecuadamente, lo que es un gran problema con productos VoIP baratos que buscan reducir los costes el máximo posible para mantener sus precios.

La IA también puede usarse para hacer pruebas más completas. «Usamos herramientas de IA para automatizar las pruebas, simplemente porque puede comprobarse rápidamente la seguridad del código», explica Dimitri. «Actúa como una capa adicional en nuestros procesos, no reemplaza nada, pero acelera los procesos y el personal de QA obtiene un código más claro para revisar.»

Por último, el código de IA necesitará programadores altamente experimentados para supervisor el proceso, especialmente cuando no está claro si el código original ha sido creado por un software de IA. Los atajos en la seguridad simplemente no son una opción en Wildix, especialmente con tantos usuarios usando nuestros sistemas.

«Un sistema de pruebas exhaustivo es necesario independientemente de si usamos código generado por IA o no», indica Dimitri. «La IA es simplemente una herramienta, y son los procesos que la acompañan los que determinan si la estás usando bien o mal.»

El código de IA ha venido para quedarse, y depende de las empresas encontrar una forma de usarlo sin poner en compromiso la seguridad de sus usuarios.

Para más información sobre seguridad y nuestra ética de seguridad por diseño, ¡suscríbete para recibir nuestra revista de forma gratuita!

Social Sharing