Líderes del pensamiento
El código generado por IA llegó para quedarse. ¿Estamos menos seguros como consecuencia?

Programar en 2025 no se trata de trabajar duro en fragmentos ni de pasar largas horas depurando. Es una atmósfera completamente distinta. Código generado por IA Se prevé que la mayor parte del código en futuros productos se convierta en una herramienta esencial para el desarrollador moderno. Conocido como "codificación de vibración", el uso de código generado por herramientas como Github Copilot, Amazon CodeWhisperer y Chat GPT será la norma, y no la excepción, para reducir el tiempo de compilación y aumentar la eficiencia. Pero ¿la comodidad del código generado por IA conlleva una amenaza más grave? ¿Aumenta la IA generativa las vulnerabilidades en la arquitectura de seguridad, o existen maneras para que los desarrolladores "codifican de vibración" de forma segura?
“Los incidentes de seguridad derivados de vulnerabilidades en el código generado por IA son uno de los temas menos debatidos hoy en día”, afirmó Sanket Saurav, fundador de DeepSource. “Aún existe mucho código generado por plataformas como Copilot o Chat GPT que no cuenta con revisión humana, y las brechas de seguridad pueden ser catastróficas para las empresas afectadas”.
Saurav, desarrollador de una plataforma de código abierto que emplea análisis estático para la calidad y seguridad del código, citó El hackeo de SolarWinds en 2020 como el tipo de "evento de extinción" que las empresas podrían enfrentar si no implementan las medidas de seguridad adecuadas al usar código generado por IA. "El análisis estático permite identificar patrones de código inseguro y malas prácticas de codificación", afirmó Saurav.
Atacado a través de la biblioteca
Las amenazas de seguridad al código generado por IA pueden adoptar formas ingeniosas y dirigirse a las bibliotecas. En programación, las bibliotecas son código reutilizable y útil que los desarrolladores utilizan para ahorrar tiempo al escribir.
A menudo resuelven tareas de programación habituales, como la gestión de interacciones de bases de datos, y ayudan a los programadores a no tener que reescribir el código desde cero.
Una de estas amenazas contra las bibliotecas se conoce como "alucinaciones", donde el código generado por IA presenta una vulnerabilidad mediante el uso de bibliotecas ficticias. Otra línea de ataques más reciente contra el código generado por IA se denomina "slopsquatting", donde los atacantes pueden atacar directamente las bibliotecas para infiltrarse en una base de datos.
Abordar estas amenazas de frente podría requerir mayor atención de la que sugiere el término "codificación de vibraciones". Desde su despacho en la Universidad de Quebec en Outaouais, el profesor Rafael Khoury ha seguido de cerca los avances en la seguridad del código generado por IA y confía en que las nuevas técnicas mejorarán su seguridad.
In un papel 2023El profesor Khoury investigó los resultados de pedirle a ChatGPT que produjera código sin contexto ni información adicional, una práctica que resultó en código inseguro. Esos fueron los inicios de ChatGPT y Khoury ahora se muestra optimista sobre el futuro. "Desde entonces, se ha revisado mucha investigación y el futuro se centra en una estrategia para usar el LLM que pueda generar mejores resultados", afirmó Khoury, añadiendo que "la seguridad está mejorando, pero aún no podemos dar una indicación directa y obtener código seguro".
Khoury continuó describiendo Un estudio prometedor Generaron código y lo enviaron a una herramienta que lo analiza en busca de vulnerabilidades. El método utilizado por la herramienta se conoce como "Detección de Anomalías de Línea con IA Generativa" (o FLAG, por sus siglas en inglés).
“Estas herramientas envían indicadores que podrían identificar una vulnerabilidad en la línea 24, por ejemplo, que un desarrollador puede luego enviar al LLM con la información y solicitarle que la investigue y solucione el problema”, dijo.
Khoury sugirió que este intercambio podría ser crucial para corregir el código vulnerable a ataques. «Este estudio sugiere que con cinco iteraciones, se pueden reducir las vulnerabilidades a cero».
Dicho esto, el método FLAG no está exento de problemas, sobre todo porque puede generar falsos positivos y negativos. Además, existen límites en la longitud del código que los LLM pueden crear, y la unión de fragmentos puede añadir un nivel de riesgo adicional.
Manteniendo al ser humano informado
Algunos expertos en codificación dinámica recomiendan fragmentar el código y garantizar que las personas ocupen un lugar central en las ediciones más importantes de una base de código. «Al escribir código, piensa en términos de confirmaciones», dijo Kevin Hou, jefe de ingeniería de producto en Windsurf, elogiando la sabiduría de los fragmentos pequeños.
Divida un proyecto grande en partes más pequeñas que normalmente serían confirmaciones o solicitudes de incorporación de cambios. Haga que el agente cree la escala más pequeña, una característica aislada a la vez. Esto puede garantizar que el código resultante esté bien probado y se comprenda bien, añadió.
Al momento de escribir este artículo, Windsurf ha superado casi los 5 mil millones de líneas de código generado por IA (con su nombre anterior, Codeium). Hou afirmó que la pregunta más urgente que estaban respondiendo era si el desarrollador era consciente del proceso.
“La IA es capaz de realizar muchas ediciones en muchos archivos simultáneamente, así que ¿cómo podemos asegurarnos de que el desarrollador realmente comprenda y revise lo que sucede en lugar de aceptarlo todo a ciegas?”, preguntó Hou, añadiendo que habían invertido mucho en la experiencia de usuario de Windsurf “con muchísimas maneras intuitivas de mantenerse al día con lo que hace la IA y de mantener al usuario completamente informado”.
Es por eso que “codificación de vibraciones" se vuelve más común, los humanos involucrados deben ser más cautelosos con sus vulnerabilidades. Desde las "alucinaciones" hasta las amenazas de "slopsquatting", los desafíos son reales, pero también lo son las soluciones.
Herramientas emergentes como el análisis estático, métodos de refinamiento iterativo como FLAG y un diseño UX bien pensado demuestran que la seguridad y la velocidad no tienen por qué ser mutuamente excluyentes.
La clave reside en mantener a los desarrolladores comprometidos, informados y en control. Con las medidas de seguridad adecuadas y una mentalidad de "confiar, pero verificar", la programación asistida por IA puede ser revolucionaria y responsable.