Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

Model Extraction Attack

ia

Définition

Une Model Extraction Attack (attaque d'extraction de modele) est une attaque de securite IA dans laquelle un attaquant reconstruit ou approxime un modele d'apprentissage automatique proprietaire en interrogeant son API publique avec un grand nombre de requetes soigneusement choisies, en utilisant les outputs pour entrainer un modele de substitution (surrogate model). C'est equivalent au vol de propriete intellectuelle sans acces au code source ou aux poids du modele. La technique, formalisee par Tramer et al. (2016) sur des classifieurs simples, a ete etendue aux LLMs par des travaux subsequents. L'attaquant interroge le LLM cible avec des prompts couvrant systematiquement l'espace des inputs, collecte les outputs (logits, probabilites de tokens, ou simplement les reponses textuelles), et utilise ces paires input-output pour entrainer son propre modele via distillation des connaissances. Les variantes incluent : (1) Equation-solving attacks — pour les classifieurs lineaires, resoudre les equations definissant le modele depuis ses predictions, (2) Decision-boundary attacks — echantillonner pres des frontieres de decision pour les reconstituer, (3) Active learning attacks — selectionner intelligemment les requetes les plus informatives pour minimiser le nombre d'appels API, (4) Jailbreak-based extraction — utiliser des jailbreaks pour obtenir des informations sur l'architecture ou le systeme-prompt. Les LLMs frontieres (GPT-4, Claude, Gemini) sont difficiles a extraire completement en raison de leur taille massive et de protections cotes serveur (rate limiting, detection d'anomalies). Cependant, des approches de distillation partielles peuvent produire des modeles de substitution efficaces pour des taches specifiques avec des milliers de requetes. Les defenses contre les model extraction attacks incluent : limitation du debit API (rate limiting), detection de patterns d'interrogation systematiques, ajout de bruit aux outputs (output perturbation), watermarking des outputs (watermark detectables statistiquement dans les distributions de tokens), et monitoring des patterns d'utilisation.

Pipeline d'attaque simplifie

# Phase 1 : Generation de requetes d'extraction
def generate_extraction_queries(task='classification', n=10000):
    # Pour un LLM de classification de sentiment :
    queries = []
    for _ in range(n):
        # Melanger differents styles de texte
        queries.append(generate_synthetic_text(sentiment=random.choice(['pos','neg','neu'])))
    return queries

# Phase 2 : Collecter les labels du modele cible
target_labels = [query_target_api(q) for q in queries]

# Phase 3 : Entrainer le surrogate model
from transformers import AutoModelForSequenceClassification
surrogate = AutoModelForSequenceClassification.from_pretrained('bert-base-uncased')
# Fine-tuner sur (queries, target_labels) via standard cross-entropy

Defenses recommandees

  • Rate limiting : max 1000 req/jour par API key, 10 req/min
  • Monitoring anomalie : detecter les patterns de requetes systematiques
  • Output watermarking : imperceptible mais statistiquement detectable
  • Soft labels seulement : ne pas retourner les logits exacts

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis