Plan du cours
Module 1 — Comment les applications IA échouent
Labo : aucun — visite architecturale et discussion
Le modèle mental du constructeur concernant la surface d'attaque.
Sujets :
- Architectures LLM, RAG et agents du point de vue du développeur
- le cycle de vie demande/réponse d'une fonctionnalité IA
- flux de prompt : messages système, développeur, utilisateur et outil
- où les données non fiables entrent (et ré-entrent) dans le modèle
- les frontières de confiance qu'un développeur possède par rapport à celles héritées
- pourquoi les attaques IA sont sémantiques et non syntaxiques
- cartographie des 10 principaux risques OWASP LLM vers le code que vous écrivez
Idée clé : Chaque endroit où un texte non fiable atteint le modèle — ou la sortie du modèle atteint votre code — est une frontière dont vous êtes responsable.
Module 2 — Injection de prompt pour les constructeurs
Labo : Labo 01 — 01-Prompt-Injection
Le « moment injection SQL » pour l'IA — mais vous ne pouvez pas totalement y échapper.
Sujets :
- injection de prompt directe vs indirecte
- instructions cachées dans les documents, pages web, sorties d'outils
- jailbreaks et confusion de rôle
- pourquoi la séparation instructions/données est importante
- conception défensive des prompts (délimiteurs, structure, autorité minimale)
- pourquoi la prévention est partielle — concevez pour la containment
Pratique :
- attaquez votre propre chatbot
- contournez un filtre naïf
- restructurez le prompt pour réduire la portée explosive
Module 3 — Traiter la sortie du modèle comme non fiable
Labo : Labo 02 — 02-Output-Handling
La classe de bugs que les développeurs sous-estiment le plus.
Sujets :
- sortie du modèle comme entrée non fiable pour le reste de l'application
- gestion non sécurisée de la sortie (LLM02) : XSS, SSRF, injection commande/SQL en aval
- jamais évaluer/exécuter/rendre brut la sortie du modèle
- sorties structurées et validation de schéma
- encodage de sortie et listes autorisées
- rendu sécurisé dans les contextes web/UI
Pratique :
- trouver et corriger une vulnérabilité de gestion non sécurisée de la sortie
- appliquer un schéma JSON aux réponses du modèle
Module 4 — Sécurité RAG
Labo : Labo 03 — 03-RAG-Security
L'une des nouvelles surfaces d'attaque les plus importantes — et c'est à vous de la construire.
Sujets :
- menaces sur les bases de vecteurs et la récupération
- sanitisation de l'ingestion
- provenance des documents et notation de confiance
- limitation de la portée de récupération et isolement des métadonnées
- instructions cachées dans le contenu récupéré (injection indirecte)
- exfiltration de données via la récupération
Pratique : - empoisonner un pipeline RAG avec un document malveillant - ajouter la sanitisation d'ingestion et la limitation de portée de récupération pour le défendre
Module 5 — Sécurité des Agents & Outils
Labo : Labo 04 — 04-Agent-Safety
Où un bug devient une action.
Sujets :
- agence excessive (LLM06) et abus d'outils
- moindre privilège pour les agents
- listes autorisées d'outils et validation des arguments
- portes d'approbation et humain dans la boucle
- mise en bac à sable de l'exécution des outils
- identifiants limités et à durée courte pour les agents
- limitation des boucles autonomes et des chaînages
Pratique :
- sécuriser un agent trop permissif
- ajouter une liste autorisée + une porte d'approbation à un outil dangereux
Module 6 — Secrets, Identité & Coûts
Labo : Labo 05 — 05-Secrets-and-Cost
Les erreurs opérationnelles qui font le plus mal rapidement.
Sujets :
- gestion des clés API et secrets (jamais dans les prompts, code ou logs)
- authentification et autorisation par utilisateur pour les fonctionnalités IA
- propagation de l'identité utilisateur vers les outils et la récupération
- déni de portefeuille : consommation illimitée de tokens/coûts
- limites de débit, budgets de tokens et délais d'expiration
- journalisation sans fuir de secrets ou de données personnelles (PII)
Pratique :
- sortir les secrets du chemin du prompt/code
- ajouter des limites de débit par utilisateur et un budget de tokens/coûts
Module 7 — Bibliothèques de Garde-fous (Guardrails)
Labo : Labo 06 — 06-Guardrails
Acheter vs construire pour la sécurité entrée/sortie.
Sujets :
- ce que font les frameworks de garde-fous (et ce qu'ils ne font pas)
- garde-fous d'entrée : classificateurs d'injection/PII/sujet
- garde-fous de sortie : validation, filtrage, vérifications d'ancrage (grounding)
- quand un garde-fou est approprié par rapport à votre propre contrôle déterministe
- superposition des garde-fous avec les contrôles des modules précédents
- performance, faux positifs et modes de défaillance
Pratique :
- ajouter une couche de garde-fou entrée/sortie à une fonctionnalité IA
- mesurer ce qu'il capture et ce qu'il rate
Module 8 — Test d'intrusion (Red-Teaming) de votre propre application
Labo : Labo 07 — 07-Red-Teaming
Déployez-le comme si un attaquant l'avait déjà compromise.
Sujets :
- construction d'une suite d'abus/tests pour les fonctionnalités IA
- tests automatisés d'injection de prompt et jailbreak
- tests de régression des garde-fous et politiques
- exécution des vérifications de sécurité IA dans CI
- chaîne d'approvisionnement des modèles et dépendances (provenance, versionnage fixe)
- une liste de contrôle de sécurité avant déploiement pour les fonctionnalités IA
Pratique :
- écrire des tests automatisés de red-team pour une fonctionnalité IA
- les intégrer dans une vérification CI
Module 9 — Notation de la sécurité IA : Le cadre SAIS-100
Labo : aucun — exercice de notation (utilise l'application Capstone)
Transformez tout ce que vous avez construit en une scoreable répétable.
Sujets :
- l'Hexagone de Sécurité IA : six questions au lieu de « est-ce sécurisé ? »
- les six catégories notées (Données, Prompt, Agent, Chaîne d'approvisionnement, Détection, Gouvernance)
- la grille de notation sur 100 points et ses pondérations
- bands de verdict et la règle de dérogation unique par catégorie
- L'échelle Elephant Note de Sécurité IA (SAIS-100) en tant que cadre marquant et exécutable à nouveau
- notation avant/après durcissement comme métrique
Pratique :
- noter l'application Capstone sur l'échelle de 100 points
- nommer le seul changement qui élève le plus le score
Idée clé : Les trois catégories les plus pondérées correspondent aux frontières de confiance qu'un développeur possède — donc le score mesure exactement ce que ce cours a enseigné.
Projet Final (Capstone)
Les étudiants durcissent une application IA délibérément vulnérable de bout en bout.
L'application de départ contient :
- un prompt injectable
- une gestion non sécurisée de la sortie
- un pipeline RAG non borné
- un agent trop permissif
- des secrets dans le chemin du prompt
- aucune limite de coût
Les étudiants appliquent le cours :
- restructurer les prompts pour la containment
- valider et encoder la sortie du modèle
- sanitiser et borner la récupération
- appliquer le moindre privilège et les portes d'approbation à l'agent
- sortir les secrets et ajouter des limites de coût/débit
- ajouter des garde-fous et des tests automatisés de red-team
Livrable : une application durcie plus une auto-évaluation courte des 10 principaux risques OWASP LLM.
Carte Module-Labo
Les labos s'exécutent dans l'ordre du labo, qui suit l'ordre des modules. Le cours comporte 9 modules et 7 labos : le Module 1 est une visite architecturale/discussion et le Module 9 est un exercice de notation, donc aucun n'a son propre dossier de labo.
- Labo 01 - 01-Prompt-Injection : Attaquez votre chatbot & concevez pour la containment (Module 2)
- Labo 02 - 02-Output-Handling : Corrigez un bug de gestion non sécurisée de la sortie (Module 3)
- Labo 03 - 03-RAG-Security : Empoisonnez puis défendez un pipeline RAG (Module 4)
- Labo 04 - 04-Agent-Safety : Sécurisez un agent trop permissif (Module 5)
- Labo 05 - 05-Secrets-and-Cost : Sécurisez les clés + ajoutez des garde-fous de coût (Module 6)
- Labo 06 - 06-Guardrails : Ajoutez une couche de garde-fou entrée/sortie (Module 7)
- Labo 07 - 07-Red-Teaming : Tests automatisés de red-team dans CI (Module 8)
Le Module 1 (Comment les applications IA échouent) n'a pas de labo — il s'exécute comme une visite architecturale et discussion. Le Module 9 (Notation de la sécurité IA) n'a pas de dossier de labo — il s'exécute comme un exercice de notation contre l'application Capstone.
Pré requis
- Niveau de compétence : Intermédiaire.
- Les étudiants doivent être à l'aise avec : la construction et la consommation d'API REST, un langage scripté (les labos utilisent Python), l'authentification application de base, git et la CLI.
- Aucune formation en apprentissage automatique n'est requise — il s'agit d'un cours de sécurité des applications destiné aux personnes qui construisent avec des LLM, pas à celles qui les entraînent.
Public cible
- Ingénieurs logiciels / backend créant des fonctionnalités LLM
- Développeurs full-stack et API
- Ingénieurs d'applications IA/ML
- Ingénieurs de plateforme déployant des copilotes et agents
- Chefs techniques et ingénieurs seniors responsables des fonctionnalités IA
Nos clients témoignent (2)
J'ai vraiment apprécié d'apprendre sur les attaques par IA et les outils disponibles pour commencer à pratiquer et à utiliser activement pour les tests de sécurité. J'ai acquis beaucoup de connaissances que je n'avais pas au début, et le cours a répondu à mes attentes. Ma partie préférée de la formation était le navigateur Comet, et j'ai été impressionné par ce qu'il pouvait faire. C'est assurément quelque chose que je vais explorer davantage. Globalement, c'était un excellent cours et j'ai beaucoup apprécié d'apprendre le Top 10 OWASP GenAI.
Patrick Collins - Optum
Formation - OWASP GenAI Security
Traduction automatique
Les connaissances professionnelles et la manière dont il les a présentées devant nous
Miroslav Nachev - PUBLIC COURSE
Formation - Cybersecurity in AI Systems
Traduction automatique