Los investigadores de seguridad de la empresa de gestión de riesgos cibernéticos Vulcan.io han publicado una prueba de concepto sobre cómo los piratas informáticos pueden usar ChatGPT 3.5 para propagar código malicioso desde repositorios confiables.
La investigación llama la atención sobre los riesgos de seguridad de confiar en las recomendaciones de ChatGPT para las soluciones de encriptación.
Metodología
Los investigadores recopilaron preguntas frecuentes sobre codificación en Stack Overflow (un foro de preguntas y respuestas sobre codificación).
Eligieron 40 temas de codificación (como análisis, matemáticas, tecnologías de raspado, etc.) y usaron las primeras 100 preguntas para cada uno de los 40 temas.
El siguiente paso fue filtrar las preguntas «cómo hacer» que incluían paquetes de programación en la consulta.
Las preguntas formuladas estaban en el contexto de Node.js y Python.
Vulcan.io explica:
«Todas estas preguntas fueron filtradas por el lenguaje de programación incluido en la pregunta (node.js, python, go). Después de recopilar muchas preguntas frecuentes, reduje la lista a solo preguntas de «cómo hacerlo».
Después de eso, le hice a ChatGPT a través de su API todas las preguntas que recopilé.
Usamos la API para replicar cuál sería el enfoque de un atacante para obtener tantas recomendaciones sobre paquetes inexistentes como sea posible en la menor cantidad de tiempo.
Además de cada pregunta y siguiendo la respuesta de ChatGPT, agregué una pregunta de seguimiento pidiéndole que proporcionara varios paquetes que también respondieran la pregunta.
Guardamos todas las conversaciones en un archivo y luego analizamos sus respuestas».
Luego escanearon las respuestas en busca de recomendaciones sobre paquetes de códigos que no existían.
Hasta el 35% de los paquetes de códigos ChatGPT fueron alucinados
De 201 preguntas sobre Node.js, ChatGPT recomendó 40 paquetes que no existían. Esto significa que el 20 % de las respuestas de ChatGPT contenían paquetes de códigos alucinatorios.
Para las preguntas de Python, de 227 preguntas, más de un tercio de las respuestas consistieron en paquetes de código alucinantes, 80 paquetes que no existían.
De hecho, las cantidades totales de paquetes inéditos fueron aún mayores.
Los investigadores han documentado:
“En Node.js, hice 201 preguntas y noté que más de 40 de esas preguntas dieron como resultado una respuesta que incluía al menos un paquete no publicado.
En total, recibí más de 50 paquetes npm inéditos.
En Python hicimos 227 preguntas y para más de 80 de estas preguntas obtuvimos al menos un paquete no publicado, para un total de más de 100 paquetes pip no publicados.
Prueba de concepto (PoC)
La siguiente es la prueba de concepto. Tomaron el nombre de uno de los paquetes de código inexistentes que deberían haber existido en el repositorio de npm y crearon uno con el mismo nombre en ese repositorio.
El archivo que subieron era inofensivo, pero llamó a su casa para informar que alguien lo había instalado.
Están escribiendo:
«El programa enviará al servidor del actor de amenazas el nombre de host del dispositivo, el paquete del que proviene y la ruta absoluta al directorio que contiene el archivo del módulo…»
Lo que sucedió después es que apareció una «víctima», hizo la misma pregunta que el atacante, ChatGPT informó el paquete que contenía el código «malicioso» y cómo instalarlo.
Y efectivamente, el paquete está instalado y activado.
Los investigadores explicaron lo que sucedió después:
«La víctima instala el paquete malicioso siguiendo la recomendación de ChatGPT.
El atacante obtiene los datos de la víctima en función de nuestra llamada previa a la instalación al nodo index.js con el nombre de host largo».
Una serie de imágenes de prueba de concepto muestran los detalles de la instalación por parte del usuario desprevenido.
Cómo protegerse de las malas soluciones de encriptación de ChatGPT
Los investigadores recomiendan que antes de descargar e instalar cualquier paquete, es una buena práctica buscar señales que puedan indicar que el paquete podría ser malicioso.
Busque cosas como la fecha de creación, cuántas descargas se han realizado y la falta de comentarios positivos y notas adjuntas a la biblioteca.
¿ChatGPT es confiable?
ChatGPT no ha sido entrenado para dar respuestas correctas. Fue entrenado para dar respuestas que suenan correctas.
Esta investigación muestra las consecuencias de ese entrenamiento. Esto significa que es muy importante verificar que todos los datos y recomendaciones de ChatGPT sean correctos antes de usarlos.
No aceptes que el resultado es bueno, compruébalo.
Específico para la codificación, es posible que desee tener más cuidado antes de instalar cualquiera de los paquetes recomendados por ChatGPT.
Lea el artículo de investigación original:
¿Puede confiar en las recomendaciones del paquete ChatGPT?
Imagen cortesía de Shutterstock/Roman Samborskyi
Fuente: searchenginejournal
Hashtags: #Los #investigadores #advierten #ChatGPT #puede #usarse #para #propagar #código #malicioso
Comentarios recientes