DOCKER EN PRODUCTION ?
ET LA SÉCURITÉ … ?
Jean-Marc Meessen
1
BONJOUR
Jean-Marc MEESSEN
Bruxelles, Belgique
"Brol Engineer" @ Worldline-BE
(Development Infrastructure Expert)
2
0:32
3
ET VOUS ?
développeurs ?
Ops ?
Sécurité ?
Manager ?
4
VOUS ET DOCKER ?
Jamais entendu parlé ?
Quelques "Proof of Concept" ?
L’utilise tout les jours ?
En Production ?
567
DOCKER EN PRODUCTION ?
Voilà en général la réaction…
89
LE PROBLÈME
La popularité de Docker est le re et du désir de moins en
moins de friction.
Sa facilité d’utilisation fait qu’on néglige les véri cations et
les compromis.
Et pourtant la Sécurité est importante.
10
ET POURQUOI ?
Nos clients nous con ent leurs systèmes / leurs données.
Il n’y a pas de sanctions pour les entreprises IT
seulement un coût
pas de principe "pollueur/payeur"
11
J’estime que nous avons une responsabilité morale de
rappeler les bonnes pratiques à nos managers.
12
LA SITUATION DE DOCKER
13
RAPPEL
14
QUE CHERCHE-T-IL ?
15
QUE CHERCHE-T-IL ?
Des données
Accéder à d’autres systèmes
Élévation de privilège
16
LES DANGERS AVEC DOCKER ?
Kernel exploits
Denial of service attack
Container breakout
Poisoned images
Compromising Secrets
17
EST-CE QUE DOCKER EST "SECURE" ?
Beaucoup d’attentes, d’illusions
"Silver bullet"
positionnement de concurrents (VM, Con guration Mgt)
jalousie
18
DOCKER, INC ET LA SÉCURITÉ
La Sécurité (= opérabilité) est une de leur préoccupation
fondamentale
Conscient de la jeunesse de la technologie
Très réactifs
Attitude positive sur l’approche
19
20
21
2223
"CONTAINER DO NOT CONTAIN !"
perception erronée du "public"
Progrès énormes en 3 ans
mais utilisable…
24
25
26
2728
EN PARTICULIER
Cap drop
User namespace
selinux / apparmor
CAPABILITY DROP
option du "Docker run"
vas au de la de la dichotomie root/non-root
exemple container avec NTP
docker run --cap-drop ALL --cap-add SYS_TIME ntpd
29
USER NAMESPACE
3031
SELINUX / APPARMOR
pro ls appelés à chaque "Docker run"
permettent d’aller plus loin dans la granularité
tel programme (ex ping) n’a pas accès au réseau
#include <tunables/global>
profile docker-default flags=(attach_disconnected,mediate_deleted) {
#include <abstractions/base>
network,
capability,
file,
umount,
deny @{PROC}/{*,**^[0-9*],sys/kernel/shm*} wkx,
deny @{PROC}/sysrq-trigger rwklx,
deny mount,
deny /sys/[^f]*/** wklx,
deny /sys/f[^s]*/** wklx,
33
DES CONTAINERS "PROPRE" ?
32
34
Contenus malveillants
Contenus buggés ou vulnérables
35
TRUSTED REGISTRY
Utilisation systématique de TLS
renforcement de l’identi cation des layers
upgrade avec la version 1.10
NOTARY
Système de signature d’images et de validation
véri cation de l’auteur et non-altération du contenu
Protection Against Image Forgery
Protection Against Replay Attacks
Protection Against Key Compromise
Utilisation de support physique pour les clés
36
YUBIKEY 4
37
NAUTILUS
Scanner d’images Docker
Vulnérabilité (CVE check)
Validation des licences
Optimisation des images
Tests fonctionnels simpli és
38
RECOMMENDATIONS
39
RECOMMANDATIONS
Maintenir votre host/images à jour
Cloisonner
partition disque Docker séparée
pas exploiter d’autres applis
Container dans une VM ?
Limiter les communications inter-container
logger/auditer
contrôle d’accès
40
RECOMMENDATIONS
Ne pas utiliser "priviliged" si c’est pas nécessaire
Users applicatifs dans les containers
d’où viennent mes images ? Sont elles à jour ?
permissions sur les chiers
4142
CONCLUSIONS
"Docker est-il 'secure' ?"
Pas plus ni moins que la porte d’un appartement
La sécurité est l’affaire de tous : DevOps + SecOps
CONTACT INFO
Twitter: @jm_meessen
jean-marc@meessen-web.org
4344
CRÉDITS PHOTOGRAPHIQUES
Vidéo Capt. Igloo
Boite de shSticks
Question
Panique
Docker shark
Docker overview
45
CRÉDITS PHOTOGRAPHIQUES - 2
Slides de la Keynote de Dockercon 2015 à Barcelone
Hacker
Trésor
Démo
prévention
Question

Docker en production et la sécurité … _