forked from intuitem/ciso-assistant-community
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathanssi-genai-security-recommendations-1.0.yaml
567 lines (567 loc) · 35.6 KB
/
anssi-genai-security-recommendations-1.0.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
urn: urn:intuitem:risk:library:anssi-genai-security-recommendations-1.0
locale: fr
ref_id: anssi-genai-security-recommendations-1.0
name: "ANSSI: RECOMMANDATIONS DE S\xC9CURIT\xC9 POUR UN SYST\xC8ME D'IA G\xC9N\xC9\
RATIVE"
description: "Ce document a pour objet de donner des recommandations de s\xE9curit\xE9\
\ sur la mise en oeuvre\nde solutions d\u2019IA g\xE9n\xE9rative reposant sur des\
\ LLM au sein d\u2019entit\xE9s publiques et priv\xE9es."
copyright: ANSSI Etalab
version: 1
provider: ANSSI
packager: intuitem
objects:
framework:
urn: urn:intuitem:risk:framework:anssi-genai-security-recommendations-1.0
ref_id: anssi-genai-security-recommendations-1.0
name: "ANSSI: RECOMMANDATIONS DE S\xC9CURIT\xC9 POUR UN SYST\xC8ME D'IA G\xC9\
N\xC9RATIVE"
description: "Ce document a pour objet de donner des recommandations de s\xE9\
curit\xE9 sur la mise en oeuvre\nde solutions d\u2019IA g\xE9n\xE9rative reposant\
\ sur des LLM au sein d\u2019entit\xE9s publiques et priv\xE9es."
requirement_nodes:
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:3.1
assessable: false
depth: 1
ref_id: '3.1'
name: "Cycle de vie d'un syst\xE8me d'IA g\xE9n\xE9rative"
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r1
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:3.1
ref_id: R1
name: "Int\xE9grer la s\xE9curit\xE9 dans toutes les phases du cycle de vie\
\ d\u2019un syst\xE8me d\u2019IA"
description: "Des mesures de s\xE9curit\xE9 doivent \xEAtre identifi\xE9es et\
\ appliqu\xE9es dans chacune des 3 phases du cycle de vie d'un syst\xE8me\
\ d'IA : entra\xEEnement, d\xE9ploiement et production. Ces mesures d\xE9\
pendent fortement du sc\xE9nario de partage de responsabilit\xE9s retenu et\
\ de la sous-traitance associ\xE9e. Elles doivent \xE9galement tenir compte\
\ des interactions avec d'autres applications ou composants internes ou externes\
\ au SI.\nIl est possible de se r\xE9f\xE9rer au guide d'hygi\xE8ne de l'ANSSI\
\ pour disposer d'un socle de base de s\xE9curit\xE9 \xE0 appliquer."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:4
assessable: false
depth: 1
ref_id: '4'
name: Analyse de risque
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r2
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:4
ref_id: R2
name: "Mener une analyse de risque sur les syst\xE8mes d\u2019IA avant la phase\
\ d\u2019entra\xEEnement"
description: "L\u2019analyse de risque d\u2019un syst\xE8me d\u2019IA doit int\xE9\
grer les probl\xE9matiques suivantes :\n- cartographier l\u2019ensemble des\
\ \xE9l\xE9ments en lien avec le mod\xE8le d\u2019IA : biblioth\xE8ques tierces,\
\ sources de donn\xE9es, applications interconnect\xE9es, etc. ;\n- identifier\
\ les sous-parties du syst\xE8me d\u2019IA qui traiteront les donn\xE9es de\
\ l\u2019organisation, en particulier celles contenues dans les requ\xEAtes\
\ des utilisateurs ;\n- prendre en compte le sc\xE9nario de partage de responsabilit\xE9\
s et la question de la sous-traitance pour chacune des phases ;\n- identifier\
\ les impacts directs et indirects en cas de r\xE9ponses erron\xE9es ou malveillantes\
\ du mod\xE8le d\u2019IA aux utilisateurs ;\n- consid\xE9rer la protection\
\ des donn\xE9es d\u2019entra\xEEnement du mod\xE8le d\u2019IA."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
assessable: false
depth: 1
ref_id: '5.1'
name: "Recommandations g\xE9n\xE9rales"
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r3
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R3
name: "\xC9valuer le niveau de confiance des biblioth\xE8ques et modules externes\
\ utilis\xE9s dans le syst\xE8me d\u2019IA"
description: "Il est recommand\xE9 de cartographier l\u2019ensemble des biblioth\xE8\
ques et modules externes utilis\xE9s dans le cadre du projet et d\u2019\xE9\
valuer leur niveau de confiance."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r4
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R4
name: "\xC9valuer le niveau de confiance des sources de donn\xE9es externes\
\ utilis\xE9es dans le syst\xE8me d\u2019IA"
description: "Il est recommand\xE9 de cartographier l\u2019ensemble des sources\
\ de donn\xE9es externes utilis\xE9es dans le cadre du projet et d\u2019\xE9\
valuer leur niveau de confiance."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r5
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R5
name: "Appliquer les principes de DevSecOps sur l\u2019ensemble des phases du\
\ projet"
description: "Il est recommand\xE9 d\u2019appliquer les bonnes pratiques de\
\ d\xE9veloppement s\xE9curis\xE9 sur l\u2019ensemble des phases du projet,\
\ par exemple :\n- d\xE9ployer et s\xE9curiser des cha\xEEnes d\u2019int\xE9\
gration et de d\xE9ploiement en continu (CI/CD) en appliquant le principe\
\ de moindre privil\xE8ge pour l\u2019acc\xE8s aux outils de ces cha\xEEnes\
\ CI/CD ;\n- mettre en oeuvre une gestion s\xE9curis\xE9e des secrets utilis\xE9\
s dans toutes les phases du projet ;\n- pr\xE9voir des tests de s\xE9curit\xE9\
\ automatis\xE9s sur le code source (analyse statique de code) et lors de\
\ l\u2019ex\xE9cution de ce code source (analyse dynamique de code) ;\n- prot\xE9\
ger en int\xE9grit\xE9 le code source et s\xE9curiser l\u2019acc\xE8s \xE0\
\ celui-ci (authentification multifacteur, signature du code, droits d\u2019\
acc\xE8s, etc.) ;\n- recourir \xE0 des langages de d\xE9veloppement s\xE9\
curis\xE9s (scripts de fine tuning, d\xE9veloppement du mod\xE8le, maintenance,\
\ d\xE9ploiement, etc.)."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r6
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R6
name: "Utiliser des formats de mod\xE8les d\u2019IA s\xE9curis\xE9s"
description: "Il est recommand\xE9 d\u2019utiliser des formats \xE0 l\u2019\xE9\
tat de l\u2019art du point de vue de la s\xE9curit\xE9, comme le format safetensor\
\ par exemple. Certains formats peu s\xE9curis\xE9s, comme le format pickle,\
\ sont \xE0 proscrire."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r7
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R7
name: "Prendre en compte les enjeux de confidentialit\xE9 des donn\xE9es d\xE8\
s la conception du syst\xE8me d\u2019IA"
description: "L\u2019\xE9tude du projet doit cartographier l\u2019ensemble des\
\ jeux de donn\xE9es utilis\xE9s \xE0 chaque phase du syst\xE8me d\u2019IA\
\ : entra\xEEnement (jeux de donn\xE9es d\u2019entra\xEEnement), d\xE9ploiement\
\ (jeux de tests) et production (donn\xE9es additionnelles, base de donn\xE9\
es vectorielle, etc.).\nCette \xE9tude doit inclure les donn\xE9es d\u2019\
usage du syst\xE8me d\u2019IA en production, \xE0 savoir les requ\xEAtes des\
\ utilisateurs ainsi que les r\xE9ponses apport\xE9es par le mod\xE8le d\u2019\
IA. L\u2019analyse peut \xE9galement traiter le cas de la protection en confidentialit\xE9\
\ des param\xE8tres du mod\xE8le lui-m\xEAme, par exemple pour des mod\xE8\
les propri\xE9taires."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r8
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R8
name: "Prendre en compte la probl\xE9matique de besoin d\u2019en conna\xEEtre\
\ d\xE8s la conception du syst\xE8me d\u2019IA"
description: "Il est important de d\xE9finir en amont du projet les options\
\ structurantes du mod\xE8le pour g\xE9rer le besoin d\u2019en conna\xEEtre\
\ :\n- le choix des donn\xE9es utilis\xE9es pour l\u2019entra\xEEnement (sans\
\ la possibilit\xE9 de g\xE9rer des droits d\u2019acc\xE8s) et des donn\xE9\
es additionnelles en production (avec la possibilit\xE9 de g\xE9rer des r\xF4\
les et des droits d\u2019acc\xE8s) ;\n- la strat\xE9gie d\u2019apprentissage\
\ du mod\xE8le, c\u2019est-\xE0-dire \xE0 quel moment est-ce que l\u2019on\
\ r\xE9-entra\xEEne le mod\xE8le et sur la base de quelles donn\xE9es (donn\xE9\
es additionnelles m\xE9tier, requ\xEAtes des utilisateurs, r\xE9ponses du\
\ mod\xE8le, etc.)."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r9
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R9
name: "Proscrire l\u2019usage automatis\xE9 de syst\xE8mes d\u2019IA pour des\
\ actions critiques sur le SI"
description: "Un syst\xE8me d\u2019IA doit \xEAtre configur\xE9 de mani\xE8\
re \xE0 ne pas \xEAtre en mesure d\u2019ex\xE9cuter de mani\xE8re automatis\xE9\
e des actions critiques sur le SI.\nCes actions peuvent \xEAtre des actions\
\ critiques d\u2019un point de vue m\xE9tier (transactions bancaires, production\
\ de contenu public, impact direct sur des personnes, etc.) ou bien des actions\
\ critiques sur l\u2019infrastructure du SI (reconfiguration de composants\
\ r\xE9seaux, cr\xE9ations d\u2019utilisateurs \xE0 privil\xE8ge, d\xE9ploiement\
\ de serveurs virtuels, etc.)."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r10
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R10
name: "Ma\xEEtriser et s\xE9curiser les acc\xE8s \xE0 privil\xE8ges des d\xE9\
veloppeurs et des administrateurs sur le syst\xE8me d\u2019IA"
description: "L\u2019ensemble des op\xE9rations \xE0 privil\xE8ges sur le syst\xE8\
me d\u2019IA doit respecter les bonnes pratiques d\u2019administration s\xE9\
curis\xE9e, notamment :\n- les op\xE9rations \xE0 privil\xE8ge doivent \xEA\
tre d\xE9finies et leur d\xE9clenchement doit \xEAtre valid\xE9 : r\xE9-entra\xEE\
nement, modification des jeux de donn\xE9es, nouvelle interconnexion avec\
\ une application, changement d\u2019h\xE9bergement, etc. ;\n- les op\xE9\
rations \xE0 privil\xE8ge doivent \xEAtre r\xE9alis\xE9es avec des comptes\
\ d\xE9di\xE9s et depuis un poste d\u2019administration d\xE9di\xE9 \xE0 cet\
\ usage ;\n- le principe de moindre privil\xE8ge doit \xEAtre appliqu\xE9\
\ et l\u2019usage de jetons d\u2019authentification (token) temporaires doit\
\ \xEAtre privil\xE9gi\xE9 ;\n- l\u2019environnement de d\xE9veloppement doit\
\ \xEAtre ma\xEEtris\xE9 et administr\xE9 au m\xEAme niveau de s\xE9curit\xE9\
\ que l\u2019environnement de production."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r11
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R11
name: "H\xE9berger le syst\xE8me d\u2019IA dans des environnements de confiance\
\ coh\xE9rents avec les besoins de s\xE9curit\xE9"
description: "L\u2019h\xE9bergement du syst\xE8me d\u2019IA lors des 3 phases\
\ du cycle de vie doit \xEAtre coh\xE9rente avec les besoins de s\xE9curit\xE9\
\ du projet, et notamment les besoins en confidentialit\xE9 et en int\xE9\
grit\xE9. En particulier, la s\xE9curisation des donn\xE9es d\u2019entra\xEE\
nement du mod\xE8le (au repos, en transit, lors d\u2019un traitement) ne doit\
\ pas \xEAtre n\xE9glig\xE9e."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r12
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R12
name: "Cloisonner chaque phase du syst\xE8me d\u2019IA dans un environnement\
\ d\xE9di\xE9"
description: "Il est recommand\xE9 de cloisonner les 3 environnements techniques\
\ correspondant \xE0 chacune des phases du cycle de vie du syst\xE8me d\u2019\
IA. Ce cloisonnement peut porter sur :\n- un cloisonnement r\xE9seau : chaque\
\ environnement est int\xE9gr\xE9 dans un r\xE9seau physiquement ou logiquement\
\ d\xE9di\xE9 ;\n- un cloisonnement syst\xE8me : chaque environnement dispose\
\ de ses propres serveurs physiques ou hyperviseurs d\xE9di\xE9s ;\n- un cloisonnement\
\ du stockage : chaque environnement dispose de son propre mat\xE9riel de\
\ stockage ou de disques d\xE9di\xE9s. Au minimum, un cloisonnement logique\
\ est appliqu\xE9 ;\n- un cloisonnement des comptes et des secrets : chaque\
\ environnement dispose de ses propres comptes utilisateurs et administrateurs\
\ et de secrets distincts."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r13
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R13
name: "Impl\xE9menter une passerelle Internet s\xE9curis\xE9e dans le cas d\u2019\
un syst\xE8me d\u2019IA expos\xE9 sur Internet"
description: "Dans le cas d\u2019un syst\xE8me d\u2019IA expos\xE9 sur Internet,\
\ il est recommand\xE9 de suivre les bonnes pratiques de cloisonnement du\
\ guide de l\u2019ANSSI \xE0 ce sujet, notamment :\n- d\xE9dier une fonction\
\ de reverse-proxy avant l\u2019acc\xE8s au service web du syst\xE8me d\u2019\
IA ;\n- mettre en place deux zones logiques pour le filtrage r\xE9seau \xE0\
\ l\u2019aide de pare-feux : un filtrage externe en frontal d\u2019Internet\
\ et un filtrage interne avant l\u2019acc\xE8s au syst\xE8me d\u2019IA ;\n\
- ne pas exposer un annuaire interne de l\u2019entit\xE9 pour l\u2019authentification\
\ sur le syst\xE8me d\u2019IA ;\n- \xE9viter de mutualiser sur un m\xEAme\
\ hyperviseur des fonctions de s\xE9curit\xE9 distinctes de la passerelle\
\ Internet s\xE9curis\xE9e (pare-feux, reverse-proxy, serveur de journalisation,\
\ etc.)."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r14
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R14
name: "Privil\xE9gier un h\xE9bergement SecNumCloud dans le cas d\u2019un d\xE9\
ploiement d\u2019un syst\xE8me d\u2019IA dans un Cloud public"
description: "Si l\u2019entit\xE9 fait le choix d\u2019utiliser un h\xE9bergement\
\ dans un Cloud public, il est recommand\xE9 de privil\xE9gier une offre de\
\ confiance SecNumCloud dans les cas suivants :\n- les donn\xE9es trait\xE9\
es par le syst\xE8me d\u2019IA sont consid\xE9r\xE9es comme sensibles ;\n\
- l\u2019impact du syst\xE8me d\u2019IA sur le m\xE9tier est consid\xE9r\xE9\
\ comme critique ;\n- les utilisateurs du syst\xE8me d\u2019IA ne sont pas\
\ consid\xE9r\xE9s comme de confiance."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r15
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R15
name: "Pr\xE9voir un mode d\xE9grad\xE9 des services m\xE9tier sans syst\xE8\
me d\u2019IA"
description: "Afin de pr\xE9venir des dysfonctionnements ou des incoh\xE9rences\
\ dans les r\xE9ponses apport\xE9es par le mod\xE8le d\u2019IA, il est recommand\xE9\
\ de pr\xE9voir au minimum une proc\xE9dure de contournement du syst\xE8me\
\ d\u2019IA pour les utilisateurs, afin de r\xE9pondre aux besoins m\xE9tier."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r16
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R16
name: "D\xE9dier les composants GPU au syst\xE8me d\u2019IA"
description: "Il est recommand\xE9 de d\xE9dier les composants physiques GPU\
\ aux traitements r\xE9alis\xE9s par le syst\xE8me d\u2019IA. Dans le cas\
\ de la virtualisation, il est recommand\xE9 que les hyperviseurs ayant acc\xE8\
s aux cartes GPU soient d\xE9di\xE9s au syst\xE8me d\u2019IA, ou bien au minimum\
\ qu\u2019il y ait une fonction de filtrage mat\xE9riel (ex. : IOMMU) permettant\
\ de restreindre les acc\xE8s des machines virtuelles \xE0 la m\xE9moire de\
\ ces cartes GPU."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r17
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.1
ref_id: R17
name: "Prendre en compte les attaques par canaux auxiliaires sur le syst\xE8\
me d\u2019IA"
description: "Il est recommand\xE9 de s\u2019assurer que le syst\xE8me d\u2019\
IA n\u2019est pas vuln\xE9rable \xE0 des attaques par canaux auxiliaires (temporels,\
\ consommation, etc.) qui pourraient par exemple permettre \xE0 un attaquant\
\ de reconstruire une r\xE9ponse apport\xE9e par un mod\xE8le d\u2019IA."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.2
assessable: false
depth: 1
ref_id: '5.2'
name: "Recommandations pour la phase d\u2019entra\xEEnement"
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r18
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.2
ref_id: R18
name: "Entra\xEEner un mod\xE8le d\u2019IA uniquement avec des donn\xE9es l\xE9\
gitimement accessibles par les utilisateurs"
description: "Il est fortement recommand\xE9 d\u2019entra\xEEner un mod\xE8\
le avec des donn\xE9es dont la sensibilit\xE9 est coh\xE9rente avec le besoin\
\ d\u2019en conna\xEEtre des utilisateurs."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r19
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.2
ref_id: R19
name: "Prot\xE9ger en int\xE9grit\xE9 les donn\xE9es d\u2019entra\xEEnement\
\ du mod\xE8le d\u2019IA"
description: "Il est recommand\xE9 de s\u2019assurer de l\u2019int\xE9grit\xE9\
\ des donn\xE9es d\u2019entra\xEEnement du mod\xE8le tout au long du cycle\
\ d\u2019entra\xEEnement. Cette protection peut prendre la forme d\u2019une\
\ v\xE9rification syst\xE9matique de la signature ou de l\u2019empreinte (hash)\
\ des fichiers utilis\xE9s ou bien des archives compress\xE9s de l\u2019ensemble\
\ de ces donn\xE9es."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r20
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.2
ref_id: R20
name: "Prot\xE9ger en int\xE9grit\xE9 les fichiers du syst\xE8me d\u2019IA"
description: "Il est recommand\xE9 de prot\xE9ger en int\xE9grit\xE9 les fichiers\
\ du mod\xE8le entra\xEEn\xE9, et de contr\xF4ler r\xE9guli\xE8rement que\
\ ceux-ci n\u2019ont pas \xE9t\xE9 alt\xE9r\xE9s. La recommandation vaut \xE9\
galement par extension pour tous les fichiers inh\xE9rents au fonctionnement\
\ du syst\xE8me d\u2019IA (scripts, binaires, etc.)."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r21
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.2
ref_id: R21
name: "Proscrire le r\xE9-entra\xEEnement du mod\xE8le d\u2019IA en production"
description: "Il est fortement recommand\xE9 de ne pas r\xE9-entra\xEEner un\
\ mod\xE8le d\u2019IA directement en production. Cette action de r\xE9-entra\xEE\
nement doit d\xE9marrer avec le cycle en 3 phases, dans les environnements\
\ ad\xE9quats pour chacune des phases."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.3
assessable: false
depth: 1
ref_id: '5.3'
name: "Recommandations pour la phase de d\xE9ploiement"
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r22
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.3
ref_id: R22
name: "S\xE9curiser la cha\xEEne de d\xE9ploiement en production des syst\xE8\
mes d\u2019IA"
description: "Il est recommand\xE9 d\u2019op\xE9rer le d\xE9ploiement des syst\xE8\
mes d\u2019IA g\xE9n\xE9rative depuis un SI d\u2019administration, en respectant\
\ les bonnes pratiques du guide d\u2019administration s\xE9curis\xE9e de l\u2019\
ANSSI."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r23
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.3
ref_id: R23
name: "Pr\xE9voir des audits de s\xE9curit\xE9 des syst\xE8mes d\u2019IA avant\
\ d\xE9ploiement en production"
description: "Il est recommand\xE9 de pr\xE9voir des tests de robustesse et\
\ de s\xE9curit\xE9 des syst\xE8mes d\u2019IA. Ces tests peuvent \xEAtre :\n\
- des tests d\u2019intrusion standards sur les composants techniques usuels\
\ d\u2019un syst\xE8me d\u2019IA : serveurs web, orchestrateur, base de donn\xE9\
es, etc.\n- des tests de s\xE9curit\xE9 sur les d\xE9veloppements r\xE9alis\xE9\
s dans le syst\xE8me d\u2019IA (via des outils SAST ou DAST par exemple) ;\n\
- des tests automatis\xE9s 20visant sp\xE9cifiquement des vuln\xE9rabilit\xE9\
s li\xE9es aux mod\xE8les d\u2019IA (attaques adverses, extraction du mod\xE8\
le, etc.) ;\n- des tests manuels d\u2019auditeurs visant sp\xE9cifiquement\
\ \xE0 tester la robustesse d\u2019un mod\xE8le d\u2019IA g\xE9n\xE9rative\
\ sur des sc\xE9narios d\u2019attaques plus sophistiqu\xE9s."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r24
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.3
ref_id: R24
name: "Pr\xE9voir des tests fonctionnels m\xE9tier des syst\xE8mes d\u2019IA\
\ avant d\xE9ploiement en production"
description: "Il est recommand\xE9 de pr\xE9voir des tests de performance et\
\ de qualit\xE9 des r\xE9ponses apport\xE9es par un syst\xE8me d\u2019IA g\xE9\
n\xE9rative."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.4
assessable: false
depth: 1
ref_id: '5.4'
name: Recommandations pour la phase de production
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r25
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.4
ref_id: R25
name: "Prot\xE9ger le syst\xE8me d\u2019IA en filtrant les entr\xE9es et les\
\ sorties des utilisateurs"
description: "Il est recommand\xE9 de mettre en place des fonctions permettant\
\ de se pr\xE9munir d\u2019une fuite de donn\xE9es ou d\u2019une fuite de\
\ mod\xE8le dans les r\xE9ponses :\n- une fonction de filtre de requ\xEAtes\
\ malveillantes des utilisateurs avant envoi au mod\xE8le ;\n- une fonction\
\ de filtre de requ\xEAtes jug\xE9es non l\xE9gitimes d\u2019un point de vue\
\ m\xE9tier ;\n- une fonction de filtre d\u2019informations internes du mod\xE8\
le (param\xE8tres, entra\xEEnement) dans les r\xE9ponses ;\n- une fonction\
\ de filtre d\u2019informations d\xE9finies comme sensibles dans les r\xE9\
ponses (ex. : coordonn\xE9es personnelles, r\xE9f\xE9rences de projets, etc.)\
\ ;\n- une limite sur la taille des r\xE9ponses (nombre de caract\xE8res maximum)."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r26
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.4
ref_id: R26
name: "Ma\xEEtriser et s\xE9curiser les interactions du syst\xE8me d\u2019IA\
\ avec d\u2019autres applications m\xE9tier"
description: "L\u2019ensemble des interactions et des flux r\xE9seaux du syst\xE8\
me d\u2019IA doit \xEAtre document\xE9 et valid\xE9. Les flux r\xE9seaux entre\
\ le syst\xE8me d\u2019IA et d\u2019autres ressources doivent respecter l\u2019\
\xE9tat de l\u2019art en mati\xE8re de s\xE9curit\xE9 :\n- ils doivent \xEA\
tre strictement filtr\xE9s au niveau r\xE9seau, chiffr\xE9s et authentifi\xE9\
s (ex. : en suivant le guide TLS de l\u2019ANSSI [22]) ;\n- ils doivent utiliser\
\ des protocoles s\xE9curis\xE9s (ex. : OpenID Connect) en cas d\u2019usage\
\ d\u2019un fournisseur d\u2019identit\xE9 [23] ;\n- ils doivent int\xE9grer\
\ un contr\xF4le des autorisations d\u2019acc\xE8s \xE0 la ressource en compl\xE9\
ment de l\u2019authentification ;\n- ils doivent faire l\u2019objet d\u2019\
une journalisation au niveau de granularit\xE9 ad\xE9quat."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r27
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.4
ref_id: R27
name: "Limiter les actions automatiques depuis un syst\xE8me d\u2019IA traitant\
\ des entr\xE9es non-ma\xEEtris\xE9es"
description: "Il est fortement recommand\xE9 de limiter voire de proscrire les\
\ actions automatiques sur le SI d\xE9clench\xE9es depuis un syst\xE8me d\u2019\
IA et \xE0 partir d\u2019entr\xE9es non-ma\xEEtris\xE9es (ex. : donn\xE9es\
\ issues d\u2019Internet ou de mails, etc.)."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r28
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.4
ref_id: R28
name: "Cloisonner le syst\xE8me d\u2019IA dans un ou plusieurs environnements\
\ techniques d\xE9di\xE9s"
description: "Il est recommand\xE9 que le syst\xE8me d\u2019IA soit cloisonn\xE9\
\ dans des zones logiques d\xE9di\xE9es, afin de limiter les risques de lat\xE9\
ralisation d\u2019un attaquant qui aurait compromis ce syst\xE8me."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r29
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.4
ref_id: R29
name: "Journaliser l\u2019ensemble des traitements r\xE9alis\xE9s au sein du\
\ syst\xE8me d\u2019IA"
description: "Il est recommand\xE9 de journaliser au bon niveau de granularit\xE9\
\ l\u2019ensemble des traitements r\xE9alis\xE9s sur le syst\xE8me d\u2019\
IA, notamment :\n- les requ\xEAtes des utilisateurs (en prenant garde \xE0\
\ leur protection si ces requ\xEAtes contiennent des donn\xE9es sensibles)\
\ ;\n- les traitements r\xE9alis\xE9s en entr\xE9e sur cette requ\xEAte avant\
\ l\u2019envoi au mod\xE8le ;\n- les appels \xE0 des plugins ;\n- les appels\
\ \xE0 des donn\xE9es additionnelles ;\n- les traitements r\xE9alis\xE9s par\
\ les filtres en sortie ;\n- les r\xE9ponses aux utilisateurs."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.5
assessable: false
depth: 1
ref_id: '5.5'
name: "Cas particulier de la g\xE9n\xE9ration de code source assist\xE9e par\
\ l'IA"
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r30
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.5
ref_id: R30
name: "Contr\xF4ler syst\xE9matiquement le code source g\xE9n\xE9r\xE9 par IA"
description: "Le code source g\xE9n\xE9r\xE9 par IA doit faire l\u2019objet\
\ de mesures de s\xE9curit\xE9 afin de v\xE9rifier son innocuit\xE9 :\n- proscrire\
\ l\u2019ex\xE9cution automatique de code source g\xE9n\xE9r\xE9 par IA dans\
\ l\u2019environnement de d\xE9veloppement ;\n- proscrire le commit automatique\
\ de code source g\xE9n\xE9r\xE9 par IA dans les d\xE9p\xF4ts ;\n- int\xE9\
grer un outil d\u2019assainissement de code source g\xE9n\xE9r\xE9 par IA\
\ dans l\u2019environnement de d\xE9veloppement ;\n- v\xE9rifier l\u2019innocuit\xE9\
\ des biblioth\xE8ques r\xE9f\xE9renc\xE9es dans le r\xE9sultat du code source\
\ g\xE9n\xE9r\xE9 par IA ;\n- faire contr\xF4ler r\xE9guli\xE8rement par un\
\ humain la qualit\xE9 du code source g\xE9n\xE9r\xE9 \xE0 partir de requ\xEA\
tes types suffisamment sophistiqu\xE9es."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r31
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.5
ref_id: R31
name: "Limiter la g\xE9n\xE9ration de code source par IA pour des modules critiques\
\ d\u2019applications"
description: "Il est fortement recommand\xE9 de ne pas utiliser un outil d\u2019\
IA g\xE9n\xE9rative pour g\xE9n\xE9rer des blocs de code source destin\xE9\
s \xE0 des modules critiques d\u2019applications :\n- les modules de cryptographie\
\ (authentification, chiffrement, signature, etc.) ;\n- les modules de gestion\
\ des droits d\u2019acc\xE8s des utilisateurs et administrateurs ;\n- les\
\ modules de traitement de donn\xE9es sensibles."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r32
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.5
ref_id: R32
name: "Sensibiliser les d\xE9veloppeurs sur les risques li\xE9s au code source\
\ g\xE9n\xE9r\xE9 par IA"
description: "Il est recommand\xE9 d\u2019effectuer des campagnes de sensibilisation\
\ sur les risques li\xE9s \xE0 l\u2019utilisation de code source g\xE9n\xE9\
r\xE9 par IA. Cette sensibilisation peut s\u2019appuyer sur des rapports publics\
\ sur ce sujet ou bien des papiers de recherche 23d\xE9montrant la pr\xE9\
sence de vuln\xE9rabilit\xE9s dans le code g\xE9n\xE9r\xE9 par IA.\nEn compl\xE9\
ment, les d\xE9veloppeurs peuvent \xE9galement \xEAtre form\xE9s sur les outils\
\ d\u2019IA pour l\u2019optimisation de leurs requ\xEAtes (prompt engineering\
\ 24) afin d\u2019am\xE9liorer la qualit\xE9 et la s\xE9curit\xE9 du code\
\ g\xE9n\xE9r\xE9."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.6
assessable: false
depth: 1
ref_id: '5.6'
name: "Cas particulier de services d'IA grand public expos\xE9s sur Internet"
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r33
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.6
ref_id: R33
name: "Durcir les mesures de s\xE9curit\xE9 pour des services d\u2019IA grand\
\ public expos\xE9s sur Internet"
description: "Il est recommand\xE9 d\u2019apporter une attention particuli\xE8\
re sur certaines mesures de s\xE9curit\xE9 pour les services expos\xE9s au\
\ grand public, notamment :\n- entra\xEEner le mod\xE8le d\u2019IA uniquement\
\ \xE0 partir de donn\xE9es publiques ;\n- s\u2019assurer que les utilisateurs\
\ du syst\xE8me d\u2019IA ont fait l\u2019objet d\u2019une authentification\
\ au pr\xE9alable ;\n- analyser syst\xE9matiquement les requ\xEAtes des utilisateurs\
\ sur le syst\xE8me d\u2019IA ;\n- faire un contr\xF4le et une validation\
\ des r\xE9ponses avant l\u2019envoi aux utilisateurs ;\n- prot\xE9ger en\
\ confidentialit\xE9 les donn\xE9es des utilisateurs (historique des requ\xEA\
tes et des r\xE9ponses, etc.) ;\n- mettre en place des mesures contre les\
\ d\xE9nis de service distribu\xE9s (DDoS);\n- s\xE9curiser le service web\
\ en frontal des utilisateurs."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.7
assessable: false
depth: 1
ref_id: '5.7'
name: "Cas particulier de l'utilisation de solutions d'IA g\xE9n\xE9rative tierces"
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r34
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.7
ref_id: R34
name: "Proscrire l\u2019utilisation d\u2019outils d\u2019IA g\xE9n\xE9rative\
\ sur Internet pour un usage professionnel impliquant des donn\xE9es sensibles"
description: "L\u2019entit\xE9 cliente n\u2019ayant pas la ma\xEEtrise du service\
\ d\u2019IA g\xE9n\xE9rative, il n\u2019est pas possible de s\u2019assurer\
\ que la protection en confidentialit\xE9 des donn\xE9es soumises en entr\xE9\
e respecte les besoins de s\xE9curit\xE9 de l\u2019entit\xE9.\nPar mesure\
\ de pr\xE9caution, il est donc obligatoire de ne jamais int\xE9grer de donn\xE9\
es sensibles de l\u2019entit\xE9 dans les requ\xEAtes des utilisateurs."
- urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:r35
assessable: true
depth: 2
parent_urn: urn:intuitem:risk:req_node:anssi-genai-security-recommendations-1.0:5.7
ref_id: R35
name: "Effectuer une revue r\xE9guli\xE8re de la configuration des droits des\
\ outils d\u2019IA g\xE9n\xE9rative sur les applications m\xE9tier"
description: "Il est recommand\xE9 de faire une revue des droits d\u2019acc\xE8\
s des outils d\u2019IA g\xE9n\xE9rative d\xE8s l\u2019activation du produit\
\ dans l\u2019entit\xE9, afin de s\u2019assurer que les droits positionn\xE9\
s par d\xE9faut ne sont pas trop laxistes ou trop ouverts par conception.\n\
Enfin, une revue r\xE9guli\xE8re des droits d\u2019acc\xE8s doit \xEAtre r\xE9\
alis\xE9e (ex. : tous les mois), afin notamment de s\u2019assurer que les\
\ mises \xE0 jour fonctionnelles et de s\xE9curit\xE9 du produit ne viennent\
\ pas impacter le besoin d\u2019en conna\xEEtre pour les utilisateurs."