INF8420 – Sécurité informatique
Transcription
INF8420 – Sécurité informatique
INF8420 – Sécurité informatique Contrôle périodique – Automne 2009 19 octobre 2009 Prof. : José M. Fernandez Directives : - La durée de l’examen est de deux heures - Aucune documentation permise - Calculatrice non programmable permise - 3 questions à répondre pour un total possible de 30 points (les points sont entre crochets) 1. Questions de réchauffement [Total = 6 pt] Répondez « vrai » ou « faux » et expliquez votre réponse pour chacune les questions suivantes : a) [1 pt] Lors d’analyse de risques, il est seulement nécessaire de se préoccuper de la probabilité (motivation, capacité, opportunité). b) [1 pt] La perte d’un bloc chiffré par DES en mode CBC (Cipher Block Chaining) au milieu d’une communication n’a pas d’impact sur le reste de la communication. c) [2 pt] Les systèmes de copies de sauvegarde (backups) sont principalement utilisés pour palier à des risques de pertes de disponibilité suite à des pertes ou de la corruption de données. d) [2 pt] Le simple achat d’une mesure de protection est suffisant pour diminuer de façon significative le risque affecté par cette mesure de protection. 2. Cryptographie [Total = 10 pt] Rappel : La fonction RSA utilise une paire de clefs : clef publique : une paire (e, N) clef privée : une paire (d, N) À partir de ces clefs, on peut chiffrer et déchiffrer en utilisant les fonctions suivantes : Fonction de chiffrement o x ZN* y = Ee(x) = xe mod n Fonction de déchiffrement o y ZN* x’ = Dd(y) = yd mod n La compagnie ZYX Industrielle est une entreprise de fabrication grandement automatisée qui possèdent plusieurs usines. Après avoir vu un documentaire animé par Bruce Willis à la télévision décrivant comment des terroristes peuvent s’emparer de l’Internet, le président de la compagnie a décidé de sécuriser ses communications. Vous êtes appelé en renfort pour améliorer la situation. a) [2 points] ZYX Industrielle possède 42 points de présence distinct qui peuvent tous communiquer entre eux. L’administrateur réseau refuse catégoriquement d’avoir à administrer plus d’une centaine de clefs. Combien de paires de clefs seraient nécessaire en utilisant un système de chiffrement à clef publique ? Comparez ce chiffre au nombre de clefs qui serait nécessaire si un système de chiffrement à clef secrète était utilisé. b) [2 points] Le responsable du développement est sceptique de cette nouvelle façon de faire. Vous décidez de démontrer le fonctionnement en utilisant un exemple simple. Encryptez le message « 4 » (i.e. x = 22) avec une clef publique (17, 143) et écrivez la formule pour déchiffrer avec la clef privée (113,143). c) [2 points] Compte tenu de la performance limitée de certains équipements, on vous demande si on pourrait utiliser des clefs de 32 bits. Selon vous, est-ce que ce serait suffisant ? Justifiez. d) [2 points] Pour économiser le coût de déployer une autorité de certification, on propose d’utiliser des certificats générés localement sur chaque machine. Est-ce que vous croyez que cette économie en vaut la chandelle ? Justifiez. e) [2 points] Suite à des tests en laboratoire, vous remarquez que la performance des communications a été sévèrement impactée par l’utilisation de RSA. Suggérez une amélioration pour bénéficier de l’économie d’échelle du système à clef publique tout en ayant une performance équivalente à un système à clef secrète. 3. Analyse de risque et codage [Total = 14 pt] La compagnie PokerMaxProUltime, une nouvelle compagnie de poker sur Internet, vous offre un emploi de rêve en tant qu’analyste principal de sécurité pour leur nouvelle installation dans un paradis fiscal aux Caraïbes. Vous devez toutefois faire face à plusieurs défis. Analyse de risque [Total = 8 pt] a) [2 points] Pour commencer, votre patron vous indique que deux sites potentiels sont retenus pour la nouvelle installation. Le site A se situe sur une île paisible, mais où le marché immobilier est gonflé par les étrangers. Il en coûterait donc 500 000 $ pour s’installer à cet endroit. L’île B, pour attirer des capitaux étrangers, a fait une proposition à votre compagnie. Il en coûterait seulement 100 000 $ pour s’installer sur le site B. Toutefois, selon les données météos que vous avez à votre disposition, l’île B est balayée chaque année par un ouragan qui a 25% de chance de détruire votre installation. Quelle serait votre recommandation et pourquoi ? b) [4 points] Après de long mois d’études, vous avez identifié trois agents de menace potentiels pour votre entreprise : Tricheurs professionnels : gens qui connaissent peu en informatique, mais beaucoup au jeu; Crime organisé : groupes criminalisés qui ont plusieurs experts à leur solde et qui possèdent une solide infrastructure avec des milliers d’ordinateurs compromis; Sites de poker concurrents : le jeu en ligne est un milieu lucratif et certains de vos concurrents sont prêts à tout pour connaître le secret de votre succès. Décrivez à l’aide des principes d’analyse de risque que vous avez vu en classe (i.e. motivation, capacité, opportunité), quel est votre adversaire le plus probable pour chacune des aspects de la sécurité : Confidentialité, Intégrité, Disponibilité. c) [2 points] Un vendeur vous amène une solution qui vous permet d’analyser les journaux de transaction de votre application pour découvrir des comportements étranges. Est-ce que l’achat de ce type d’appareil vous inciterait à modifier votre analyse de risque ? Justifiez. Codage [Total = 6 pt] d) [2 points] Après quelques mois, vous remarqué que certains joueurs ont tendance à remporter des mains avec des Flush Royales très souvent. Comme vous savez que ce type de main est rare, vous voulez vérifier si vous avez un problème logiciel. Vous commencez par votre source aléatoire de cartes. Votre source est une source parfaitement aléatoire qui sort des chaînes de 0 et de 1 de longueur arbitraire. Pour générer une carte, vous prenez une chaîne de caractères et vous passez cette chaîne dans un codeur développé maison qui choisi 1 carte sur 52 en fonction de la chaîne binaire. Quelle serait la longueur minimale de chaîne binaire nécessaire pour générer une carte ? De plus, en considérant que chaque carte sera représentée sur un octet, calculez l’entropie d’un octet représentant une carte. Rappel : Soit S une source d'information probabiliste markovienne, sortant des symboles dans un alphabet = {i : 1 i N}, telle que les probabilités de sortie de chaque symbole soient définies : pi = Pr [S sorte i]. L'entropie de Shannon de la source S est alors définie comme : H (S) = i pi log2 pi ; avec 1 i N e) [2 points] Vous générez un grand nombre de cartes aléatoires et vous calculez l’entropie pour chaque carte. Vous obtenez une entropie moyenne d’approximativement 4,2. Est-ce que vous avez un problème ? Si oui, expliquez aux développeurs quel est le problème. f) [2 points] Après investigations, vous trouvez sur le site tricheurs.com une vidéo montrant comment utiliser un éditeur de mémoire pour changer le contenu de sa main pendant une partie. Vos développeurs vous affirment que ce type d’attaque est impossible puisqu’ils ont « chiffrés » les cartes sur le logiciel client. Vous découvrez que pour effectuer le chiffrement, les développeurs ont chiffré individuellement chaque carte avec 3DES en mode ECB (Electronic Code Book) à partir d’une clef qu’ils obtiennent du serveur. Expliquez pourquoi cette approche est mauvaise même s’il n’existe aucune vulnérabilité dans 3DES.