La Consommation Excessive (Unbounded Consumption) est une vulnérabilité critique des modèles de langage (LLM), où des utilisateurs peuvent effectuer des inférences excessives et incontrôlées. Cela entraîne des risques tels que la dégradation du service, des pertes économiques, le vol de propriété intellectuelle et une exploitation abusive des ressources informatiques, particulièrement dans les environnements cloud.

Pourquoi est-ce important ?

Les modèles de langage nécessitent des ressources informatiques importantes pour fonctionner. Lorsqu’ils sont exploités sans contrôle, cela peut :

  • Perturber la disponibilitĂ© du service (attaques par dĂ©ni de service - DoS).
  • Engendrer des coĂ»ts financiers insoutenables pour les fournisseurs utilisant un modèle de facturation Ă  l’usage.
  • Permettre le vol de modèles via des techniques d’extraction ou de clonage.
  • DĂ©grader les performances globales du système.

Comment fonctionne une attaque ?

Les attaques exploitent divers mécanismes pour provoquer une consommation excessive des ressources :

  1. Surcharge d’entrées : Les attaquants soumettent un grand nombre d’entrées ou des requêtes complexes qui dépassent la fenêtre contextuelle du modèle, entraînant une utilisation excessive de la mémoire et du CPU.
  2. Exploitation économique : En générant un volume élevé d’opérations, les attaquants exploitent le modèle économique basé sur l’usage, créant des coûts insoutenables pour le fournisseur.
  3. Vol de modèle : Les attaquants utilisent l’API pour extraire suffisamment de données afin de créer un modèle équivalent ou un “shadow model”.
  4. Attaques par canal auxiliaire : Exploitation des techniques de filtrage d’entrée pour récupérer les poids du modèle ou ses informations architecturales.

Exemples de typologie failles

  1. Déni de service (DoS) : Un attaquant soumet une entrée volumineuse qui surcharge la mémoire et le CPU, rendant le système indisponible.
  2. Coût excessif (Denial of Wallet) : Des requêtes massives exploitent le modèle économique à l’usage, entraînant une ruine financière pour le fournisseur.
  3. Extraction de données synthétiques : Utilisation de l’API pour générer des données d’entraînement et affiner un autre modèle.
  4. Attaque par canal auxiliaire : Bypass des filtres d’entrée pour récupérer des informations critiques sur le modèle.

Exemple de failles connues ayant été exploité

Sourcegraph a subi une faille de sécurité en août 2023, où un jeton d’accès administrateur a été divulgué, permettant à un attaquant d’accéder à certaines données sur Sourcegraph.com. L’impact a été limité aux noms et adresses e-mail des destinataires des clés de licence pour les clients payants et aux adresses e-mail des utilisateurs communautaires. Les mesures correctives incluent la révocation de l’accès et la rotation des clés de licence affectées

Meta a tenté de rendre son modèle LLaMA accessible aux chercheurs, mais celui-ci a été divulgué sur 4chan peu après. Le modèle a été rapidement hébergé sur des plateformes comme GitHub et Hugging Face, malgré les demandes de retrait de Meta. LLaMA offrait un accès sans précédent à l’IA de pointe, mais sa fuite a soulever des inquiétudes quant à son utilisation abusive pour générer du spam, des arnaques ou de la désinformation.

Comment se protéger ?

Pour se prémunir contre ces attaques, plusieurs mesures peuvent être mises en place :

Contrôles sur les entrées

  • Valider strictement les entrĂ©es pour Ă©viter qu’elles ne dĂ©passent les limites raisonnables.
  • Limiter ou masquer l’exposition des paramètres sensibles tels que logit_bias et logprobs.

Gestion des ressources

  • Appliquer des limites de taux (rate limiting) et quotas utilisateur pour restreindre le nombre de requĂŞtes.
  • Surveiller dynamiquement l’allocation des ressources et implĂ©menter un journalisation pour dĂ©tecter les schĂ©mas inhabituels.

Dégradation contrôlée

  • Concevoir le système pour maintenir une fonctionnalitĂ© partielle sous forte charge au lieu d’une panne complète.
  • Mettre en place un Ă©quilibrage dynamique et une mise Ă  l’échelle automatique.

Accès sécurisé

  • ImplĂ©menter un contrĂ´le strict d’accès basĂ© sur les rĂ´les (RBAC) et appliquer le principe du moindre privilège.
  • Utiliser un registre centralisĂ© pour gĂ©rer les modèles en production avec une gouvernance appropriĂ©e.

Prévention du vol de modèle

  • IntĂ©grer des frameworks de watermarking pour dĂ©tecter les utilisations non autorisĂ©es.
  • Former les modèles Ă  dĂ©tecter et attĂ©nuer les requĂŞtes adverses.

Références