EPITA Option SRS : Système Réseau Sécurité Matière : Sécurité SI Professeur : Sébastien BOMBAL. Sécurité SI. Mini PKI. Sujet. Version : 1.

Dimension: px
Commencer à balayer dès la page:

Download "EPITA Option SRS : Système Réseau Sécurité Matière : Sécurité SI Professeur : Sébastien BOMBAL. Sécurité SI. Mini PKI. Sujet. Version : 1."

Transcription

1 EPITA Option SRS : Système Réseau Sécurité Matière : Professeur : Sébastien BOMBAL Version : 1.1

2 Table des matières 1. ORGANISATION 1 Mode de rendu 1 Informations complémentaires 1 2. SUJET 2 Partie 1 : la PKI 2 Partie 2 : Application HTTPs 4 Version : 1.1 Page ii

3 1. Organisation Mode de rendu o Le dossier est à faire à 3. o Le rapport devra être déposé sous forme imprimé et relié à l'adm avant le vendredi 19 avril 2007 à 16h. o Le rapport devra être communiqué par mail à l adresse epita@bombal.org, sujet [HSEC][3]Rendu login1 login2 login3 Informations complémentaires Pour toutes questions concernant le sujet, merci de mailer à : o o epita@bombal.org, : [HSEC][QUESTIONS] sujet du groupe. Pour tout devoir l'orthographe ne sera pas pardonnée. Le dossier demandé n'est pas une somme. En revanche tout dossier considéré comme "léger" se verra attribuer forcément une note inférieure à la moyenne. Tout dossier rendu en retard ou n'ayant pas respecté le protocole de rendu ne sera pas corrigé. Les fichiers de configuration doivent être fournis en annexe épurés de tous les éléments non nécessaires. Le plagia par copier / coller depuis des sites Internet / revues / livres sera sévèrement puni, excepté s'il fait l'objet d une citation avec une référence. Sachez que l'ompi réprime même la copie d'une image ou d'un site Internet. Le script attendu devra fonctionner avec le shell «sh». Le script «minipki.sh» et le fichier de «openssl.cnf» devront être rendus en pièces jointes du mail. Les commentaires devront être ajoutés dans l'un des deux fichiers à l'endroit approprié. L appel au fichier openssl.cnf depuis le script sera effectué à partir de la variable OPENSSL_CONF Version :

4 2. Partie 1 : La PKI Le but est de créer une mini-pki pour le laboratoire SRS sous forme d'un script (perl ou sh) avec OpenSSL ayant les fonctionnalités décrit ci-dessous. On supposera que le format de sortie et d'entrée est toujours du PEM pour les certificats, csr, crl... La personnalisation des certificats sera fortement prise en compte 1. Création du certificat de la root CA ainsi que l'arborescence nécessaire. La commande attendu doit être : $>./mini-pki create-ca Cette commande doit créer l'arborescence suivante : minica/ : contenant les fichier nécessaires au bon fonctionnement d'openssl (fichier d'index...) minica/private : contenant la clé privée de la CA minica/public : contenant la clé publique de la CA et à terme la CRL minica/cert : l'ensemble des certificats signés minica/csr : l'ensemble des CSR soumis à la CA pour pouvoir regénérer les certificats soumis. Le certificat de l'ac devra posséder au moins les caractéristique suivante (man openssl.cnf) nscarevocationurl : l'adresse http ou récupérer la CRL. Avoir une utilisation de clé pour signer une CRL et créer un certificat 2. Création utilisateur de certificat de chiffrement ou de signature a partir d'un CSR correct La commande attendu doit être pour la demande csr au format PKCS10 (sbombal.csr) : $>openssl genrsa -out sbombal-key.pem $>openssl req -key sbombal-key.pem -out sbombal.csr -new Version :

5 $>./mini-pki user-sign sbombal.csr Cette commande devra créer dans le répertoire minica/cert le certificat de l'utilisateur sbombal.crt et déplacer le fichier sbombal.csr dans le répertoire minica/csr. Attention la création du certificat ne doit être effectué que si la CSR répond exactement aux critères suivants : Même pays Même société (Oganisation) Avoir au moins une unité Avoir au moins une ville Avoir au mois une adresse . Le certificat une fois créer devra posséder ces informations : Avoir un nscomment avec son nom. Avoir un nscerttype="client, , société" Avoir un subjectaltname="cn=client, cn= , ou= dc=..." 3. Création et remise à jour de la CRL La CRL peut être mis à jour par la commande suivante de votre script, ou 2 représente le numéro d'index de votre certificat : $>./mini-pki revoke minica/cert/sbombal.crt $>./mini-pki gencrl - Pour révoquer un certificat regardez l'aide sur la commande suivante : $>openssl ca -revoke minica/cert/sbombal.crt - Pour régénérer la CRL, regardez l'aide sur la commande suivante : $>openssl ca -gencrl 4. Création du certificat pour le serveur OCSP La ligne suivante devront créer le certificat ocsp.pem dans cert et la clé privée du serveur ocsp, ainsi que le démarrer avec la ligne de commande openssl ci-dessous. $>./mini-pki genocsp $>openssl ocsp -index minica/index.txt -port rsigner minica/private/ocsp.pem -CA minica/cert/ocsp.pem -text -out log.txt Importance sur le certificat du serveur OCSP : subject : cn=minica OCSP responder,... Version :

6 nscarevocationurl : l'adresse http ou récupérer la CRL. extkeyusagesyntax : id-kp-ocspsigning Partie 2 : Application HTTPs L objectif est de créer un certificat pour un serveur http qui assurera un service pour l intranet de notre organisation factice. Le client windows XP SP2 de l organisation devra lui aussi s authentifier avec un certificat sur le serveur http Le serveur HTTP apache version 2.2.X, hébergé sous un Linux / DEBIAN ne devra accepter que des connexions SSLv3, bien entendu valides et authentifiant le client à l aide de son certificat. Le serveur et le client devront vérifier à minima la CRL pour la validité des certificats. L utilisation de l OSCP sera créditée d un bonus. En fin si la connexion SSLv3 est validée des deux côtés le serveur apache devra afficher une page PHP à partir des données du certificat client contenant : Bonjour M. «XXXXX» Votre numéro de certificat est : XXXX Votre adresse est : XXXX Version :

7 Fiche d identification du document Titre Sous-titre Sous-titre Type DM Émetteur EPITA - SRS Référence 2008_SSI_3 Version 0 Cycle éditorial Professeur Sébastien BOMBAL 23/03/08 Texte(s) de référence Historique des versions Version Date d application Date de retrait Diffusion Version :