Téléchargement

Transcription

Téléchargement
INF4420a – Sécurité informatique
Contrôle périodique – Hiver 2014
26 février 2014
Prof. : José M. Fernandez
Directives :
- La durée de l’examen est de deux heures (2h00)
- Aucune documentation permise
- Calculatrice non programmable permise
- 4 questions à répondre pour un total possible de 30 points (les points sont entre
crochets)
Des formules utiles sont fournies sur la dernière page du questionnaire.
1. Questions de réchauffement [Total = 10 pt]
Répondez « vrai » ou « faux » et expliquez votre réponse pour chacune des questions suivantes :
a) [2 pt] L’ajout de 3 bits de clé double l’effort de cryptanalyse sur l’algorithme RSA par les
meilleures méthodes connues pour ce faire.
b) [2 pt] Un membre de l’équipe de sécurité a découvert une vulnérabilité non connue dans le
logiciel utilisé par une entreprise pour implémenter son site Web et l’a rapidement communiqué aux
autres membres de l’équipe. Cette situation constitue un risque informatique.
c) [2 pt] Seul des langages utilisant de l’arithmétique de pointeur tel que le C et le C++ sont
susceptibles à des vulnérabilités de débordement de tampon.
d) [2 pt] La découverte d’un algorithme permettant de générer efficacement et rapidement des
collisions dans les fonctions hachage cryptographique commune tel que MD5 et SHA-1 permettrait
à un pirate informatique de pouvoir d’intercepter toutes les communications entre n’importe quel
site bancaire et les clients qui s’y connecte.
e) [2 pt] Étant donné que le vecteur d’initialisation (IV) utilisé dans les algorithmes de chiffrement
par flux est rendu public par Alice lorsqu’elle l’envoie à Bob, n’importe quelles valeurs peuvent
être choisies par Alice pour l’IV lors de ses transmissions à Bob.
2. La machine à voyager dans le temps (et à faire du cash) [Total = 10 pt]
Après plusieurs années d’efforts et des investissements financiers considérables, Alice a finalement
réussi à construire une machine à voyager dans le temps. Cependant, il y a un petit problème
technique : les plusieurs lapins qu’elle a envoyé dans le futur, n’en sont pas revenu du tout ou pas
en très bon état (sauf pour le ragout…). Ceci est fort fâcheux pour Alice car elle avait l’intention
de voyager dans le futur et de ramener de la technologie future pour pouvoir récupérer son
investissement, sauf qu’à ce stade-ci elle ne sait pas ce qui ne fonctionne pas : le voyage d’aller ou
celui de retour.
Afin de vérifier si la machine fonctionnait vraiment, elle a construit une version spéciale de la
machine, qu’elle a appelée « Bob », et qui en fait n’est rien d’autre qu’un ordinateur dont la carte
WIFI est capable de transmettre des paquets radio à travers le temps, et ceci en utilisant un
Page 1 de 4
ingénieux condensateur de flux, construit avec 3 joncs d’ingénieurs, pour courber l’espace-temps.
Son plan est d’envoyer l’ordinateur dans le futur et lui faire envoyer des paquets dans le passé
(c’est-à-dire le présent), pour voir si l’ordinateur est bien arrivé. Autre petit problème, l’ancienne
directrice de thèse d’Alice, la malveillante Ève est très jalouse de ses accomplissements et aimerait
s’arranger pour saboter les expériences d’Alice ou, encore mieux, l’envoyer dans le futur sans
qu’elle puisse en retourner, afin de pouvoir s’approprier son invention.
a) [3 pt] Ève a également construit un condensateur de flux, et son plan consisterait à envoyer un
ordinateur dans le futur afin d’intercepter les paquets IP venant de Bob et les remplacer par d’autres
paquets. Alice envisage de doter Bob d’une clé privée, afin qu’il puisse signer les paquets qu’il lui
envoie et éviter qu’Ève lui envoie des fausses informations sur le succès de Bob à voyager dans le
temps. La clé privée de Bob est une clé RSA de 256 bits. En considérant que l’attaque la plus
efficace contre RSA demande à peu près 2 n/3 , où n est la taille de la clé et que le meilleur ordinateur
dont Ève dispose est capable de réaliser 4 milliards d’opération par seconde, quel est le plus tard
dans le futur qu’Alice devrait envoyer l’ordinateur Bob afin de s’assurer qu’Ève ne puisse pas lui
envoyer de faux message signés.
b) [4 pt] La loi de Moore dit que la puissance de calcul des ordinateurs double à chaque 18 mois.
Supposons que l’ordinateur d’Ève est un robot suffisamment intelligent pour se mettre à jour en
allant de temps à autre aux magasins d’électronique pour acheter des nouveaux composant et ainsi
profiter de la loi de Moore. Dans ce cas, quel serait le plus tard qu’Alice pourrait envoyer Bob dans
le futur ?
Finalement, Alice se rend compte que quoique Bob est capable de se rendre dans le futur, il est
impossible pour elle de s’y rendre, car effectivement les tissus organiques ne survivent pas bien au
voyage dans le temps. Elle décide alors de récupérer son investissement en programmant Bob pour
qu’il puisse enregistrer les résultats de la Loto 6/49 et les envoyer à Alice par paquets IP vers le
passé. Bien sûr, Ève se doute de ceci et il ne faudrait surtout pas qu’elle puisse intercepter ces
vitales informations, car elle pourrait elle aussi miser sur les bons numéros et faire perdre à Alice
de l’argent.
c) [3 pt] Alice décide d’utiliser l’algorithme DES (qui utilise une clé de 56 bits, et une taille de bloc
de 64 bits) pour chiffrer les résultats de la Loto, mais elle utilise un codage un peu particulier. Il
existe 13 983 816 résultats de tirage possibles, que Bob indexe avec une séquence de 24 bits. Ainsi
il n’a qu’à transmettre ces séquences de 24 bits, deux tirages par bloc avec le reste du bloc
rembourré avec des bits aléatoires, avant de chiffrer le tous avec DES. Est-ce qu’Ève sera en
mesure d’intercepter le message et de découvrir quels sont les résultats des tirages futurs? Si oui,
expliquez comment et si non, expliquez quelles sont les raisons pour lesquelles elle n’y arrivera pas.
Page 2 de 4
3. Choix de réponse [Total = 4 pt]
Répondez par la lettre correspondant à la bonne réponse. Une seule réponse par question. Aucune
explication requise :
a) [1 pt] Laquelle des quantités suivantes n’est pas reliée à l’entropie ?
a.
b.
c.
d.
La
La
La
La
difficulté de trouver un mot de passe par une attaque de force brute.
difficulté de réaliser une attaque par cryptanalyse fréquentielle.
taille d’un fichier après avoir été traité par un algorithme de compression.
difficulté de deviner les paramètres de codage par essai et erreur.
b) [1 pt] Lors d'un débordement de monceau (« heap overflow »), on cherche à écraser le _______.
a. Pointeur d’environnement local
b. Argument d'appel de fonction
c. Environnement global
d. Pointeur de retour
c) [1 pt] Lorsqu'un acteur de menace soudoie un employé de la compagnie où se trouve sa cible,
lequel des attributs suivants de l'analyse de risque est affecté:
a. Intégrité
b. Capacité
c. Opportunité
d. Motivation
d) [1 pt] Une attaque de déni de service par inondation de fausses requêtes qui empêche un usager
d'accéder à un site web est un problème de sécurité lié à:
a. Confidentialité
b. Intégrité
c. Chiffrement
d. Disponibilité
e. Toutes ces réponses
4. Certificats de clé publique [Total = 6 pt]
a) [2 pt] Quelle est la fonction principale d’un certificat à clé publique ?
b) [2 pt] Lorsque que votre fureteur Web arrive sur une page Web https://www.chose.com, le
serveur correspondant lui livre un certificat de clé publique dont le champ OU (organizational unit,
dans le standard X.509) correspond à www.autrechose.com. Ce certificat est valide, car il a été
signé par une autorité de certification que le fureteur connait. Que va-t-il se passer et pourquoi ?
c) [2 pt] Nous avons parlé en cours de la nécessité de surveiller et contrôler la liste des certificats
des autorités de certification racine (« root CA »). Expliquez dans vos propres mots pourquoi ceci
est si important.
Page 3 de 4
Formules utiles
Entropie
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 :
o H(S) =  i pi log2 (1/pi); avec 1 i N
Il existe une propriété des logarithmes selon laquelle :
o logN M = logy M / logy N
Cryptographie
L’algorithme 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
Page 4 de 4