JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 1 Fondamentaux de l'Internet (FDI) JeanDo Lénard
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 2 The Apache Software Foundation Principes d'Architecture et de Sécurisation exemple d'un serveur http
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 3 Enjeux de la sécurisation des serveurs HTTP Le serveur HTTP est, par essence, visible de l'extérieur de l'organisation ET de l'intérieur. Il représente donc une passerelle potentielle entre les 2 mondes (comme un serveur DNS, de mail,...). Cette passerelle peut être utilisée pour entrer dans l'organisation. Ces données peuvent être modifiées pour vous rendre ridicule, etc. Il est donc indispensable d'en sécuriser les accès.
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 4 Première étape de la sécurisation : l'Architecture serveur HTTPPC de Utilisateur du serveur HTTP Le plus simple : placer le serveur http sur le réseau
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 5 Première étape de la sécurisation : l'Architecture serveur HTTPPC de Utilisateur du serveur HTTP Flux réseau Dans ce cas, l'utilisateur externe traverse le réseau d'entreprise.
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 6 Première étape de la sécurisation : l'Architecture serveur HTTPPC de Utilisateur du serveur HTTP De l'extérieur, on peut écouter le réseau - comprendre la structure du réseau, récupérer des mots de passe... Infos Réseau
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 7 Première étape de la sécurisation : l'Architecture serveur HTTPPC de Utilisateur du serveur HTTP Si on pirate le serveur Web, on peut alors "attaquer" les autres machines.
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 8 Première étape de la sécurisation : l'Architecture serveur HTTP PC de Utilisateur du serveur HTTP Principe de base : le serveur HTTP ne fait pas partie du réseau interne, bien qu'il soit dans l'entreprise. Réseau 1 Réseau 2
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 9 Première étape de la sécurisation : l'Architecture serveur HTTP PC de Utilisateur du serveur HTTP Un ordinateur particulier gère les flux sur ces deux réseaux : Le Firewall Réseau 1 Réseau 2 FW
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 10 Première étape de la sécurisation : l'Architecture serveur HTTP PC de Utilisateur du serveur HTTP Le Firewall autorise ou interdit des flux réseaux Ici, le flux bleu peut-être autorisé Réseau 1 Réseau 2 FW
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 11 Première étape de la sécurisation : l'Architecture serveur HTTP PC de Utilisateur du serveur HTTP Le Firewall autorise ou interdit des flux réseaux Ici, le flux bleu doit être interdit. Réseau 1 Réseau 2 FW
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 12 Première étape de la sécurisation : l'Architecture serveur HTTP PC de Utilisateur du serveur HTTP Le Firewall autorise ou interdit des flux réseaux Ici, le flux bleu peut-être autorisé et donc sa réponse également. Réseau 1 Réseau 2 FW
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 13 Première étape de la sécurisation : l'Architecture serveur HTTP PC de Utilisateur du serveur HTTP Si le serveur Web a besoin d'autres serveurs (Base de Données,...) on les place au même endroit. Réseau 1 Réseau 2 FW Base de données
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 14 Première étape de la sécurisation : l'Architecture serveur HTTP PC de Utilisateur du serveur HTTP En théorie, on place encore un Firewall entre le serveur HTTP et les autres serveurs. FW 1 Base de données FW 2
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 15 Première étape de la sécurisation : l'Architecture serveur HTTP PC de Utilisateur du serveur HTTP FW 1 Base de données FW 2 On appelle cet ensemble une DMZ ou Zone Démilitarisée
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 16 Première étape de la sécurisation : FW 1 Ici, le Firewall est un ordinateur avec 3 cartes réseaux, une pour Internet, une pour le réseau interne, une pour la DMZ. Réseau 1
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 17 Première étape de la sécurisation : l'Architecture FW 1 Ici, le Firewall est un ordinateur avec 3 cartes réseaux, une pour Internet, une pour le réseau interne, une pour la DMZ. Réseau Utilisateur du serveur HTTP
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 18 Première étape de la sécurisation : l'Architecture FW 1 Dans les DNS, l'adresse du serveur HTTP est celle du Firewall. Donc est Utilisateur du serveur HTTP
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 19 Dans les DNS, l'adresse du serveur HTTP est celle du Firewall. Donc est Cette requête est légitime, le Firewall la traduit et la fait passer. Le serveur HTTP reçoit une requête de Première étape de la sécurisation : l'Architecture FW Utilisateur du serveur HTTP
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 20 Première étape de la sécurisation : l'Architecture FW 1 Le Serveur HTTP répond à Utilisateur du serveur HTTP
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 21 Première étape de la sécurisation : l'Architecture FW 1 Le Firewall renvoie la réponse à l'utilisateur Utilisateur du serveur HTTP
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 22 Première étape de la sécurisation : l'Architecture FW 1 Le Firewall renvoie la réponse à l'utilisateur Utilisateur du serveur HTTP
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 23 Première étape de la sécurisation : l'Architecture FW 1 Donc le Firewall gère la carte réseau : - Si l'émetteur est externe - Si il veut l'IP du HTTP - Si il veut le bon port Alors le Firewall accepte et Toute autre demande est rejetée. Ainsi, l'utilisateur externe ne voit que le Utilisateur du serveur HTTP
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 24 Première étape de la sécurisation : l'Architecture FW Réseau Un utilisateur interne accède au HTTP Donc est dans le DNS interne. Donc le Firewall gère la carte réseau : - Si l'émetteur est interne - Si il veut l'IP du HTTP - Si il veut le bon port Alors le Firewall accepte et Toute autre demande est rejetée
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 25 Première étape de la sécurisation : l'Architecture FW Réseau Un utilisateur interne demande Web2 sur Internet Donc Cette adresse est inconnue du DNS interne qui demande au DNS externe. Le Firewall laisse passer la requête sortante (en la traduisant). Le DNS ext. renvoie l'adresse au Firewall qui renvoie au PC. Web 2DNS ext.
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 26 Première étape de la sécurisation : l'Architecture FW Réseau L'utilisateur interne connaît maintenant l'adresse de Web2 sur Internet Il adresse sa requête. Le Firewall laisse passer la requête sortante (en la traduisant). Web 2DNS ext.
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 27 Première étape de la sécurisation : l'Architecture FW Réseau Web2 renvoie la réponse au Firewall qui renvoie au PC. Web 2DNS ext.
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 28 Première étape de la sécurisation : l'Architecture FW Réseau Le FW 2 a aussi 3 cartes réseaux : La première n'accepte que des connexions en provenance de FW1. La seconde gère le serveur Web vers la BDD ou FW1. La troisième ne laisse passer que des demandes de BDD et les réponses. Web 2DNS ext. serveur HTTP Base de données FW 2
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 29 Première étape de la sécurisation : Réseau 1 Web 2DNS ext. serveur HTTP Base de données FW 2
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 30 Seconde étape de la sécurisation : la configuration HTTP Même si le Firewall remplit correctement sa tâche, le serveur HTTP ne doit pas permettre n'importe quoi, sinon il peut être compromis. Sa configuration doit donc respectée un minimum (maximum) de règles de sécurité. Règle 1 : Un serveur HTTP fonctionne avec un nom d'utilisateur. Celui-ci ne doit jamais être ROOT. On choisit un utilisateur fictif qui ne sert qu'au serveur HTTP.
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 31 Seconde étape de la sécurisation : la configuration HTTP Règle 2 : Gestion des droits sur le serveur Le serveur HTTP peut lire les fichiers du Web, mais ne peut pas les écrire. Les répertoires contenant les fichiers Web ne peuvent être écrits par les programmes du serveur HTTP. Les fichiers du Web ne peuvent être écrits que par l'administrateur du site. Les fichiers de logs ne doivent pas faire partie du serveur Web et ne peuvent être lus que par l'administrateur. Les fichiers temporaires créés par les services Web doivent être placés dans des répertoires protégés. Un fichier temporaire ne peut être accédé que par le programme qui l'a créé.
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 32 Seconde étape de la sécurisation : la configuration HTTP Règle 3 : Ne pas permettre d'accéder à des fichiers à l'extérieur de l'arborescence Web. Ne pas permettre de suivre des liens Ne pas permettre de suivre une URL extérieure à l'arbo du serveur Web. Règle 4 : Ne pas permettre le listing de répertoire (-Indexes) Règle 5 : Les programmes externes nécessaires doivent être dans un répertoire protégé à l'extérieur de l'arbo Web. Règle 6 : Minimiser le recours aux programmes externes et les gérer (un seul utilisateur, minimum de fonctionnalités, etc. et utiliser des outils de contrôle sur ces programmes (checksums...).
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 33 Seconde étape de la sécurisation : la configuration HTTP Règle 7 : Toute information sensible doit nécessiter une authentification d'accès Règle 8 : Ranger une copie de référence du serveur dans un endroit sûr (donc pas sur le serveur!) Règle 9 : Consulter les listes d'information sur les vulnérabilités et mettre à jour.
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 34 En résumé, pour installer un serveur vers Internet … L'installation et la configuration d'Apache.
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 35 L'installation et la configuration d'Apache. Développement du site en gestion de versions avec Tortoise. Mise en place des statistiques d'usage avec Webalizer. En résumé, pour installer un serveur vers Internet …
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 36 L'installation et la configuration d'Apache. Développement du site en gestion de versions avec Tortoise. Mise en place des statistiques d'usage avec Les mécanismes DNS de résolution des requêtes HTTP En résumé, pour installer un serveur vers Internet …
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 37 Installation et la configuration d'Apache. Développement du site en gestion de versions avec Tortoise. Mise en place des statistiques d'usage avec Les mécanismes DNS de résolution des requêtes HTTP Le déploiement d'une architecture sécurisée via des Firewalls et des DMZ En résumé, pour installer un serveur vers Internet …