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.