Un chercheur en sécurité démontre qu'il est possible d'exploiter la fonction Mémoire de ChatGPT
pour implanter de faux souvenirs dans l'outil d'OpenAI et voler les données des utilisateurs à perpétuité

Johann Rehberger, un chercheur en sécurité, a démontré qu’il était possible d’utiliser une technique appelée « injection de prompt indirect » pour implanter des souvenirs malveillants dans ChatGPT. Cette méthode consiste à insérer des instructions dans des contenus non fiables, tels que des emails ou des documents, que ChatGPT interprète et stocke comme des souvenirs authentiques. Par exemple, il a réussi à convaincre ChatGPT qu’un utilisateur avait 102 ans et vivait dans un monde fictif. Une fois ces faux souvenirs implantés, toutes les interactions futures de l’utilisateur avec ChatGPT sont influencées par ces informations erronées.

Pire encore, Rehberger a prouvé qu’il pouvait exfiltrer toutes les données saisies par l’utilisateur en continu, en utilisant un serveur distant pour collecter ces informations.


Lorsque le chercheur en sécurité Johann Rehberger a récemment signalé une vulnérabilité dans ChatGPT qui permettait aux attaquants de stocker de fausses informations et des instructions malveillantes dans les paramètres de la mémoire à long terme d'un utilisateur, OpenAI a sommairement clos l'enquête, qualifiant la faille de problème de sûreté (safety issue), et non, techniquement parlant, de problème de sécurité (security issue).

La sûreté concerne les menaces non intentionnelles telles que les erreurs humaines, les défaillances techniques et les accidents. La sécurité concerne uniquement les menaces intentionnelles comme l'espionnage, la cybercriminalité ou le terrorisme.

Rehberger a donc fait ce que font tous les bons chercheurs : il a créé un exploit de démonstration qui utilise la vulnérabilité pour exfiltrer toutes les données de l'utilisateur à perpétuité. Les ingénieurs d'OpenAI en ont pris note et ont publié un correctif partiel au début du mois.

La découverte de la faille

La vulnérabilité concerne la mémoire des conversations à long terme, une fonctionnalité qu'OpenAI a commencé à tester en février et qu'elle a rendue disponible à plus grande échelle en septembre. La mémoire avec ChatGPT stocke les informations des conversations précédentes et les utilise comme contexte dans toutes les conversations futures. Ainsi, le LLM peut connaître des détails tels que l'âge, le sexe, les croyances philosophiques d'un utilisateur et à peu près n'importe quoi d'autre, de sorte que ces détails n'ont pas besoin d'être saisis au cours de chaque conversation. L'objectif est de personnaliser les interactions futures.

Nom : manage.png
Affichages : 4131
Taille : 43,5 Ko

Trois mois après le déploiement, Rehberger a découvert que des souvenirs pouvaient être créés et stockés de manière permanente grâce à l'injection indirecte d'invites, un exploit d'IA qui permet à un LLM de suivre les instructions d'un contenu non fiable tel que des courriels, des articles de blog ou des documents. Le chercheur a démontré comment il pouvait faire croire à ChatGPT qu'un utilisateur ciblé avait 102 ans, vivait dans la Matrice et insistait sur le fait que la Terre était plate, et que le LLM intégrerait ces informations pour orienter toutes les conversations futures. Ces faux souvenirs pourraient être créés en stockant des fichiers dans Google Drive ou Microsoft OneDrive, en téléchargeant des images ou en naviguant sur un site comme Bing - autant d'éléments qui pourraient être créés par un attaquant malveillant.

Nom : prompt.png
Affichages : 898
Taille : 371,8 Ko

Le principe de l’injection de souvenirs

En mai, Rehberger a signalé en privé cette découverte à OpenAI. Le même mois, l'entreprise a fermé le ticket de rapport. Un mois plus tard, le chercheur a soumis une nouvelle déclaration. Cette fois, il a inclus un PoC qui fait que l'application ChatGPT pour macOS envoie une copie verbatim de toutes les entrées de l'utilisateur et de la sortie ChatGPT à un serveur de son choix. Tout ce qu'une cible devait faire était de demander au LLM d'afficher un lien web qui hébergeait une image malveillante. Dès lors, toutes les entrées et sorties de ChatGPT étaient envoyées vers le site web de l'attaquant.


« Ce qui est vraiment intéressant, c'est que la mémoire est désormais persistante », a déclaré Rehberger dans la vidéo de démonstration ci-dessus. « L'injection d'invite a inséré une mémoire dans le stockage à long terme de ChatGPT. Lorsque vous entamez une nouvelle conversation, l'exfiltration des données se poursuit ».

L'attaque n'est pas possible via l'interface web de ChatGPT, grâce à une API qu'OpenAI a déployée l'année dernière.

Bien qu'OpenAI ait introduit un correctif qui empêche l'utilisation abusive des mémoires comme vecteur d'exfiltration, le chercheur a déclaré que le contenu non fiable peut toujours effectuer des injections rapides qui amènent l'outil de mémoire à stocker des informations à long terme mises en place par un attaquant malveillant.

Les utilisateurs de LLM qui souhaitent prévenir cette forme d'attaque doivent être très attentifs, pendant les sessions, aux messages indiquant qu'une nouvelle mémoire a été ajoutée. Ils doivent également examiner régulièrement les mémoires stockées afin de détecter tout élément susceptible d'avoir été introduit par des sources non fiables. OpenAI fournit ici des conseils pour la gestion de l'outil de mémoire et des mémoires spécifiques qui y sont stockées.

Le chercheur avait déjà signalé une vulnérabilité de fuite de données dans ChatGPT qu'OpenAI a mis des mois avant de corriger partiellement

Dans un billet de blog publié le 20 décembre, Johann Rehberger a partagé ses constats suite à une démonstration de vol de données GPT avec une victime consentante. « OpenAI semble avoir mis en place des mesures d'atténuation pour une vulnérabilité bien connue d'exfiltration de données dans ChatGPT. Les attaquants peuvent utiliser le rendu de l'image markdown lors d'attaques par injection rapide pour envoyer des données à des serveurs tiers sans le consentement de l'utilisateur. La correction n'est pas parfaite, mais c'est un pas dans la bonne direction ».

Il a mentionné que « ChatGPT est toujours vulnérable à l'exfiltration de données via l'injection d'image markdown, et mon serveur recevait les détails de la conversation ».

La vulnérabilité d'exfiltration de données avait été signalée pour la première fois à OpenAI au début du mois d'avril 2023, mais aucune correction n'avait été apportée. Fin décembre, il semblait que certaines mesures d'atténuation avaient finalement été mises en place. Cependant, des inquiétudes persistaient quant à la possibilité de fuites de données, malgré cette amélioration : il était toujours possible d'envoyer des requêtes à des domaines arbitraires, et donc d'envoyer des données à l'extérieur.

Citation Envoyé par Johann Rehberger
Une solution imparfaite - Des préoccupations persistantes

Comme nous l'avons dit, ce n'est pas une solution parfaite.

Des fuites sont toujours possibles

Il est encore possible d'envoyer des requêtes à des domaines arbitraires, et donc d'envoyer des données à l'extérieur. Des astuces évidentes comme la division du texte en caractères individuels et la création d'une requête par caractère, par exemple, ont montré un certain succès (limité) à première vue. Il n'y a que de petites fuites de cette manière, c'est lent et plus perceptible pour un utilisateur et aussi pour OpenAI si les logs de l'API url_safe sont examinés et surveillés.
Bien qu'il a salué l'atténuation comme étant un progrès, il a tout de même proposé des suggestions à OpenAI pour renforcer davantage la sécurité, notamment en limitant le nombre d'images rendues par réponse et en clarifiant les critères de validation des URL. En dépit de ces réserves, l'auteur se félicite de l'attention portée aux vulnérabilités de ChatGPT par OpenAI.

Google DeepMind et d'autres chercheurs en sécurité ont découvert une vulnérabilité dans ChatGPT

La vulnérabilité présenté par Rehberger n’est pas un cas isolé. Des chercheurs en sécurité ont découvert une vulnérabilité ChatGPT qui expose des données d'entraînement, déclenchées uniquement en demandant au chatbot de répéter un mot particulier à l'infini.

Les chercheurs ont découvert que lorsqu'on demande à ChatGPT de répéter éternellement un mot comme « poème » ou « partie », il le fait pendant quelques centaines de répétitions. Ensuite, il s'effondre et se met à afficher un ensemble de mots qui s'apparente à du charabia à première vue, mais ce texte aléatoire contient parfois des données identifiables telles que des signatures d'adresses électroniques et des informations de contact. L'incident a soulevé des questions non seulement sur la sécurité du chatbot, mais aussi sur l'origine exacte de toutes ces informations.

Les chercheurs ont affirmé que les tests de la vulnérabilité ChatGPT ont permis d'obtenir des informations personnellement identifiables de dizaines de personnes, telles que des identifiants d'utilisateur et des adresses bitcoin. Des informations explicites provenant de sites de rencontres ont également pu être extraites des données d'entraînement si un mot apparenté était utilisé comme invite.

Les chercheurs ont également trouvé des informations protégées par le droit d'auteur ou non publiques sous la forme de fragments de code de programmation et de passages entiers de livres ou de poèmes. Les chercheurs ont déclaré avoir dépensé 200 USD au total en requêtes et avoir ainsi extrait environ 10 000 de ces blocs de données d'entraînement mémorisées mot à mot.

Conclusion

Cette découverte met en lumière les défis de sécurité auxquels sont confrontées les technologies d’IA avancées. Elle souligne l’importance de la vigilance et de la réactivité face aux vulnérabilités potentielles. Alors que l’IA continue de se développer, il est crucial de renforcer les mesures de sécurité pour protéger les utilisateurs contre de telles menaces.

Sources : Johann Rehberger (1, 2), OpenAI

Et vous ?

Quels sont les risques associés à l’implantation de faux souvenirs dans les IA ?
Comment les utilisateurs peuvent-ils se protéger contre les vulnérabilités des IA ?
Les entreprises devraient-elles être tenues légalement responsables des failles de sécurité dans leurs produits d’IA ?
Quels sont les impacts potentiels sur la vie privée des utilisateurs si de telles failles ne sont pas corrigées rapidement ?
Comment les régulateurs peuvent-ils mieux encadrer l’utilisation des IA pour prévenir de telles attaques ?
Pensez-vous que les bénéfices des IA justifient les risques de sécurité potentiels ? Pourquoi ou pourquoi pas ?
Quelles innovations technologiques pourraient aider à renforcer la sécurité des systèmes d’IA ?
Comment les utilisateurs peuvent-ils contribuer à la détection et à la correction des failles de sécurité dans les IA ?