Tips para desarrollar software con IA
Cuando se utiliza IA generativa para escribir código,
las buenas prácticas a seguir incluyen siempre revisar el resultado,
realizarle pruebas de seguridad,
no alimentar la herramienta con datos de clientes
o datos corporativos sensibles,
asegurarse de estar utilizando una herramienta aprobada por tu empresa
y tratar de no infringir las licencias de código abierto.
Dado que la IA generativa ha llegado para quedarse
como un aliado poderoso para la eficiencia de los proyectos de desarrollo,
es importante comprobar que se implemente de forma segura.

Cheat sheet: Cinco buenas prácticas para desarrollar con IA generativa
de forma segura
Revisar la respuesta tú mismo
Al igual que ocurre con los componentes de software de terceros
y de código abierto, la IA ofrece una forma de agilizar los proyectos
de desarrollo de software.
Por ejemplo,
puedes utilizar GitHub Copilot para escribir código rápidamente
gracias a que autocompleta las funciones de software
que deseas basándose en tus indicaciones.
Una investigación de GitHub sugiere que la IA
puede aumentar tu eficiencia en un 55%.
La IA generativa también tiene la capacidad de permitir
que personas con conocimientos técnicos escasos desarrollen software.
Es más,
se ha sugerido
que la IA podría realizar las tareas de los desarrolladores júnior y,
aun así, servirles como herramienta de aprendizaje.
Además, se espera que un número significativo de compañías utilicen
la IA generativa para aliviar la carga de trabajo de los desarrolladores
y asignarles otros proyectos más importantes.
Ten por seguro que la IA generativa es una herramienta de apoyo a tu trabajo.
En su estado actual, no va a sustituirte.
De hecho,
siempre debes esperar que haya errores en el código generado por IA.
Siempre deben realizarse revisiones.
Examina bien el código, teniendo en cuenta las
prácticas de codificación seguras.
En caso de duda,
pide a compañeros expertos que revisen el código generado
por la IA y te den su opinión antes de hacer commit.
Realizar pruebas de seguridad al código generado por IA
La seguridad es un gran problema del código generado por IA.
Afortunadamente, existen herramientas
que pueden ayudarte a identificar sus vulnerabilidades.
Hemos enumerado algunas que son libres
y de código abierto (FOSS) en nuestro artículo principal sobre pruebas de seguridad,
incluida nuestra propia herramienta.
Si la aplicación que estás codificando está lista para ejecutarse,
puedes evaluarla con pruebas de seguridad de aplicaciones dinámicas
(DAST)
además de hacerlo con pruebas de seguridad de aplicaciones estáticas
(SAST).
Las primeras atacarán tu aplicación interactuando con ella “desde fuera”.
También ayuda mucho contar con hackers éticos
que revisen el código y la aplicación en ejecución,
ya que el escaneo de vulnerabilidades,
un proceso completamente automatizado,
es conocido por producir informes con altas tasas
de falsos positivos
y pasar por alto problemas de seguridad reales.
Estos hackers,
también conocidos como analistas de seguridad,
pueden encontrar vulnerabilidades verdaderas que,
de ser explotadas,
tendrían un terrible impacto en la disponibilidad,
confidencialidad e integridad de la información.
Una vez conocidas las vulnerabilidades,
hay que remediarlas.
De nuevo, puedes utilizar la IA generativa para arreglar el código.
De hecho,
recientemente hemos desplegado la función Autofix
de nuestra extensión en VS Code.
Puedes obtener una sugerencia de corrección de código con un solo clic.
Pero incluso entonces tendrás que tener cuidado con el resultado,
ya que esta función aprovecha la IA generativa
y no puede escapar de sus limitaciones.
Por lo tanto,
debes revisar la sugerencia de corrección y someterla a pruebas de seguridad.
Si te interesa una prueba gratuita de
pruebas de seguridad
con nuestra herramienta automatizada,
haz clic aquí para empezar.
Utilizar herramientas de IA aprobadas por tu compañía
Es importante que las organizaciones identifiquen
y supervisen el uso de la IA generativa en caso de que la permitan.
Tendrán que redactar políticas
y directrices empresariales sobre el uso de la IA
con la ayuda de sus equipos jurídicos y de propiedad intelectual.
Dado que la IA puede cometer errores de la misma forma
que lo han hecho los humanos al escribir código,
la gobernanza existente puede servir de base.
En un artículo específico del blog damos consejos sobre
lo que se debe incluir en
una política de IA generativa
Estas son algunas medidas que las organizaciones deben adoptar:
-
Establecer las herramientas de IA que identifican como seguras,
siendo conscientes de las limitaciones de esta tecnología. -
Educar a sus empleados sobre el uso de las tecnologías de IA generativa
y las políticas relacionadas con ella. -
Establecer las soluciones de pruebas de seguridad que se utilizarán
para mantener seguro el código generado por IA. -
Monitorear para detectar cualquier infracción de la propiedad intelectual.
Deberás estar al tanto de los requisitos de tu supervisor
o de otras personas de tu compañía
(p. ej., líder, jefe de producto, CTO, gerencia)
para informarles que estás utilizando herramientas de IA generativa.
Si no estás seguro de si puedes utilizarlas
o cuáles de ellas son adecuadas,
pregunta.
No usar datos de clientes o propiedad intelectual en motores públicos de GPT
No envíes datos confidenciales de tu compañía
o de sus clientes que puedan ser ingresados en una nube
que está mucho más allá de tu control.
Básicamente,
el motor GPT se basaría en estos datos y acabaría sugiriéndolos
a usuarios ajenos a tu compañía.
Además,
se recomienda a los desarrolladores
de todo el mundo no introducir datos sensibles en los motores de GPT,
ya que se han producido fugas de datos.
(Contando algunas relacionadas con ChatGPT:
Samsung expuso tres veces sus propios secretos;
la explotación de una librería de código abierto defectuosa dio
a los atacantes acceso al historial de chat
de otros usuarios;
más de 100.000 cuentas fueron robadas
una vez.)
Por lo tanto,
ten en cuenta cualquier política de tu organización
que detalle cómo utilizar las herramientas de IA generativa
para el desarrollo.
Tener cuidado con el copyright del código abierto con que se entrenó la IA
¿Existe la posibilidad de que estés copiando
el trabajo de otra persona al utilizar los resultados de la IA generativa?
Los problemas de violación de derechos de autor
(cuando el resultado copia textualmente elementos protegidos
por derechos de autor de software existente)
y las violaciones de licencias de código abierto
(p. ej., no proporcionar los avisos y declaraciones de atribución requeridos)
son nuevos y deben analizarse caso por caso
(ya existe una compleja
demanda contra Copilot).
Es cierto que Copilot, por ejemplo,
se ha entrenado con tantos repositorios de GitHub
que el código que sugiere puede no parecerse exactamente
a ningún código concreto protegido por derechos de autor
o que requiera créditos según su licencia de código abierto.
Aun así, existe un riesgo de infracción, y no se mitiga fácilmente,
ya que Copilot elimina en sus sugerencias la información
sobre derechos de autor,
gestión y licencia que exigen algunas licencias de código abierto.
Lo que te recomendamos es que pienses si podrías obtener
las funciones que necesitas utilizando
librerías de código abierto conscientemente.
Puedes seguir nuestros consejos para
elegir bien el software de código abierto.
Por cierto,
existen herramientas que te ayudarán a averiguar
si hay algún problema con el código de terceros
que introduzcas en tu proyecto.
Al realizar análisis de composición de software (SCA),
estas herramientas identifican los componentes
que tienen vulnerabilidades conocidas
y plantean posibles conflictos de licencia.
Al probar nuestra herramienta de forma gratuita,
obtendrás estos análisis, así como SAST y DAST.
Empieza ahora y no olvides descargar
nuestro plugin en VS Code para localizar fácilmente el código vulnerable
y obtener sugerencias de corrección de código a través de IA generativa.
*** This is a Security Bloggers Network syndicated blog from Fluid Attacks RSS Feed authored by Jason Chavarría. Read the original post at: https://fluidattacks.com/es/blog/5-buenas-practicas-codigo-ia-gen/

