Sécurité des Infrastructures Web et Cloud
1
Sécurité des infrastructures Web et Cloud
Sécurité des applications web, web services (SOAP/REST)
Sécurité des serveurs web (nginx, apache)
Virtualisation
Service Cloud (PaaS, IaaS, SaaS, Onpremise, Ondevice)
Confidentialité, intégrité et disponibilité
Travaux pratique
2
Sécurité des applications web, web services
(SOAP/REST)
Quelles sont les problèmes de sécurité
dans les web services ?
3
Sécurité des applications web, web services
(SOAP/REST)
• REST (Representational State Transfer)
• SOAP (Simple Object Access Protocol)
4
Sécurité des applications web, web services (SOAP/REST)
Burp
WSFuzzer
Suite
Outils
WS-
SOAP UI
Attacker
5
Éléments d’entrée
- Liste des scénarios d’incidents pertinents identifiés,
incluant l’identification des menaces, vulnérabilités,
actifs altérés, conséquences pour les actifs et les
processus métier
Appréciation des conséquences
- Valoriser les actifs : en termes d’impacts financiers, juridiques et
réglementaires, activités métier, etc.
- Exprimer les conséquences en termes des critères d’impacts (financier,
humain/technique, ou d’autres critères pertinents dans le contexte de
l’organisation)
- Conserver la cohérence entre l’approche quantitative (échelle de
valeurs numériques) et qualitative (échelle de valeurs d’attributs
qualificatifs)
Éléments de sortie
- Liste des conséquences d'un scénario d'incident appréciées
et exprimées en cohérence avec les actifs et les critères
d'impact.
L’appréciation des conséquences donc de s’assurer de la cohérence entre les critères de bases et les scénarios d’incidents
6
Sécurité des serveurs web (apache <> nginx)
Le serveur web Nginx est connu
pour sa rapidité et sa légèreté. Il est
également considéré comme plus
sécurisé que le serveur web
Apache.
7
8
Configurer le pare-feu
Vous devriez configurer un pare-feu pour empêcher les
connexions non autorisées à votre serveur. Si vous utilisez
Ubuntu, vous pouvez utiliser UFW (Uncomplicated Firewall) pour
configurer facilement votre pare-feu. Voici comment autoriser les
connexions entrantes sur les ports 80 et 443 (utilisés pour le
HTTP et HTTPS) :
• sudo ufw allow 80/tcp
• sudo ufw allow 443/tcp
9
server { listen 443 ssl; server_name [Link]; ssl_certificate
/path/to/[Link]; ssl_certificate_key /path/to/[Link]; # ... autres paramètres
de configuration ... }
10
Virtualisation
➢ Ce que vous
➢ Virtualisation faites avec
virtualbox
lourde ➢ OS +
applications
Les 2 types de virtualisation
➢ Containers
➢ Virtualisation
➢ Application
légère seule
12
2 modes de fonctionnement d'un processeur
(classiquement) : mode noyau et mode utilisateur
user
mode
apps
kernel
OS mode
13
apps apps
Mode
utilisateur
OS OS
hyperviseur Mode
noyau
14
Quels sont les types d'hyperviseurs que vous connaissez ?
Le zoo des hyperviseurs
Ø Vsphere de VmWare – 60% du marché
Ø Hyper-V de Microsoft – 20%
Ø Xen Server de Citrix – 4% du marché
Ø Virtualbox d’Oracle
Ø QEMU/KVM, etc
[Link] 16
Dans les années 190-2020, le cout des serveurs décroit
Par rapport du cout des
En valeur absolue du fait
mainframes encore très
de la concurrence
présents
Pourquoi
virtualiser ?
Les éditeurs (Microsoft, distribution Linux)
recommandent une application/service par système
d’exploitation
Une machine pour le Une machine pour le
DNS mail
[Link] 17
Pourquoi virtualiser ?
Les serveurs
deviennent si puissants Remplacer les serveurs
qu’une seule à raison de un pour un
application par serveur n’est plus possible
n’est plus justifiable
Un serveur en 2009 est estimé, en
Processeurs 64 bits multi-coeurs moyenne, 10 à 12 fois plus puissant
qu'un serveur en 2004
18
Avantages de la virtualisation
Réduction des coûts Avantages additionnels: Réduction des coûts
20 à 40 % en général Gain de place 20 à 40 % en général
De nouvelles fonctionnalités
19
Virtualisation légère: les containers Linux
➢ Partage du noyau entre Container versus hyperviseur
toutes les VMs (ou
containers) ➢Sur un serveur
typique:
➢ 10-100 machines virtuelles
➢ 100-1000 containers
➢ Un containter est un
groupe de processus dans
une machine Linux, isolés
des autres processus qui
tournent sur la machine
20
➢ Utilisation des namespaces (du noyau Linux) pour assigner
à un groupe de processus : isolation, leur propre pile réseau
(interfaces, sockets, routage), volumes
➢ Utilisation du cgroups (du noyau Linux) pour assigner des
resources à ces processus par exemple de la CPU, de la
mémoire
➢ Similaire à ce que vous faites sous Virtualbox
21
➢ LXC (LinuX ➢ Docker ➢ Openvz
Containers – (started in (started in
August 2008) March 2013) 2005)
22
Gestion de VMs
Vmware Vsphere, Citrix Xen permettent de
gérer quelques serveurs physiques
➢ Vagrant: Gestion de VMs indépendamment
des hyperviseurs
➢Notion d'images (boxes de
Vagrant)
➢Configuration automatique de
VM: support de Puppet, Chef,
Ansible
➢Un fichier qui contient toute la
configuration
23
Ex de Config
Gestion de VMs
Plateforme de gestion de clouds
➢ Openstack
➢ Chaque fonction (managementdef VM, réseaux,
volumes, identités) est un composant (au :nal un service
Linux) ➢Nova: compute nodes (hyperviseurs)
➢ Cinder : volumes
➢ Neutron : réseaux
➢ Les composants interagissent via une API REST
24
Les nœuds Compute (serveurs physiques) peuvent faire tourner
des hyperviseurs différents : KVM, Xen, Citrix, etc
26
Orchestration de containers
➢ Serveur unique: Docker, LXC
➢ Several multiplesl: Docker Swarm
27
Orchestration avancés : Kubernetes, Swarm, Mesos
28
Pour aller plus loin
SDN : Software Defined
Network
➢ Le réseau version Le Seigneur ➢ des contrôleurs idiots (en:n…)
des Anneaux avec
➢ Un contrôleur unique pour les contrôler
tous !
NFV : network
vitualisation function
➢ Idée : mettre les functions
réseaux du type NAT, répartiteur
de charge, pare-feu dans des VMs
➢ La ➢ CloudRAN (RAN = Radio Access
virtualisation Network)
dans les réseaux
mobiles
[Link] 28
Service Cloud (PaaS, IaaS, SaaS, Onpremise, Ondevice)
30
Service Cloud (PaaS, IaaS, SaaS, On-premise, On-device)
Qu’est-ce que le Cloud pour vous?
???
31
Service Cloud (PaaS, IaaS, SaaS, Onpremise, Ondevice)
C’est quoi la différence entre Paas, IaaS, SaaS,
Onpremise et ondevice ?
32
IaaS vs. SaaS vs. PaaS
❑ En vert : géré par un vendeur
❑ En bleu : géré par vous
33
Service Cloud (PaaS, IaaS, SaaS, Onpremise, Ondevice)
PaaS ➢ Vous gérez le code de l’application
➢ Vous poussez vers le code vers le
Il s’agit d’une plateforme qu’un service géré par le
fournisseur propose à ses clients ➢ gestionnaire de PaaS
via Internet. Elle permet aux ➢ Le gestionnaire de PaaS instancie
équipes, en particulier les votre application sur ses
développeurs, de créer des ➢ serveurs.
applications et des logiciels sur une
➢ Exemples : Elastic Beantalk d’AWS,
solution sans devoir en assurer la
Heroku (au dessus d’EC2),
maintenance.
➢ Windows Azure
34
Service Cloud (PaaS, IaaS, SaaS, Onpremise, Ondevice)
➢ Location d’une machine
IaaS virtuelle
➢ Contrôle complet de la
Il s’agit d’un ensemble de ressources machine : déploiement
informatiques brutes proposées à l’utilisateur arbitraire
par le prestataire de services cloud. Elles ➢ d’applications
peuvent être utilisées pour virtualiser une ➢ Création des VMs, des
infrastructure ou pour des projets exigeants réseaux au travers d’une
en ressources : machine learning, big data, interface Web
hébergement, etc. ➢ ou via API
35
Service Cloud (PaaS, IaaS, SaaS, Onpremise, Ondevice)
SaaS ➢ Accès à un logiciel via
interface Web
➢ Pas de gestion des mises-
Il s’agit du service cloud le plus répandu. à-jour
C’est un logiciel fonctionnant sur
➢ Interaction possible avec
l’infrastructure d’un prestataire. L’utilisateur
une API ou installation
en paie la licence, mais ne s’occupe pas du
d’un client
stockage de données ni de l’entretien du
matériel physique. ➢ Ex : Google Mail, Dropbox
39
SaaS: API Google Mail
[Link] 40
SaaS: API Google Mail
41
Service Cloud (PaaS, IaaS, SaaS, Onpremise, Ondevice)
Onpremise
43
Service Cloud (PaaS, IaaS, SaaS, Onpremise, Ondevice)
Ondevice
44
Service Cloud (Public, privé)
Utiliser un service dont on ne gère pas le matériel (= serveurs
physiques)
Un opérateur (Google Cloud, Amazon Web Services, OVH, etc.)
gère le matériel et multiplexe les utilisateurs ! hyperviseur (ex:
VMware, KVM, VirtualBox) sur machine physique et
une/plusieurs machines virtuelles par client
45
• Établissement du contexte
• Appréciation des risques
• Élaboration du plan de traitement des risques
Plan • Acceptation des risques
• Mise en œuvre du plan de traitement des risques
Do
• Surveillance et revue des risques
Check
• Maintien et amélioration du processus de gestion des risques
Act
46
Préventives
Contre mesures mises en place et Sélection d’une contre-mesure
activées en permanence - Il faut sélectionner l’une de ces contre mesures ci-contre
afin de réduire les risques.
Réactives - Il faut noter que :
- Sont activées en réponse à un - Un risque peut être couvert par plusieurs contre-mesures
événement - Une contre mesure peut est efficace pour plusieurs risques
- Sont préparées comme mesures - Le choix d’nue contre mesure doit se baser sur son
préventives
efficacité
Correctives - Une fois la contre-mesure est mise en place, il faut
déterminer le nouveau niveau de risque
- Permettent de revenir à la
situation S-[INCIDENT]
- Sont préparées comme des
mesures préventives
PASI
Il s’agit du Plan d’Action Sécurité Informatique, qui consiste à
préparer et organiser les contre mesures et les mettre en œuvre
47
Acceptation du risque
Critères
d’acceptation des
risques
Plan de traitement Liste de risques
Acceptation acceptés avec
des risques avec des risques
les niveaux de justification
risque résiduels
Direction générale
Communication et concertation du risque
Liste des risques Comite des Pilotage du SMSI
priorisés en relation risques ou du projet
avec les scenarios
d’incident
Direction
générale
Plan de traitement des Communication
relative aux Liste des
risques avec les
risques composants
niveaux de risque
avec leurs
résiduels
propriétaires
Utilisateurs
Liste de risque
acceptés avec
justification
Relations
publiques et/ou
communication
d'entreprise
Surveillance et Réexamen des risques
Surveillance et
revue des
facteurs du
risque
Identificatio Appréciation
n des actifs de la
vraisemblanc
e des
Identificati scenarios
on des d'incident
vulnérabili
Appréciation
tés
Identificatio des
n des conséquence
menaces s sur les
scenarios Incidents de
d'incident securite de
Valorisation l'information
des actifs
TP3