3

Click here to load reader

INF941 Exam 2010 11 Rattrapage Sujet

Embed Size (px)

Citation preview

Page 1: INF941 Exam 2010 11 Rattrapage Sujet

Page 1 sur 3

Examen UE NI307 (SECUR), 2010-11 J. Leneutre, 14/09/2011

Durée 2H. Les supports de cours sont autorisés, les dispositifs électroniques (calculette, ordinateurs, PDAs, …) interdits.

Le barème détaillé est noté à titre indicatif, mais peut éventuellement être réajusté. Les questions bonus ne sont pas prises en compte dans le barème mais peuvent donner des points supplémentaires.

Exercice 1 : algorithme RSA (5 points)

1. Quels sont les paramètres utilisés dans RSA devant rester secrets ?

2. Un internaute a publié sa clef publique RSA sur sa page Web : (e, n) = (1763, 3599).

En remarquant que (e,n) = (41 * 43, 602 – 1), retrouver tous les paramètres secrets.

Exercice 2 : Protocole SET (9 points)

Le standard SET proposé en 1996/97 par les principaux groupements de carte bancaire (Visa et Mastercard) fournit un ensemble de protocoles de sécurité pour le paiement par carte bancaire sur Internet basé sur des techniques cryptographiques asymétrique (RSA), à clefs secrètes (DES), et de condensation (SHA-1).

L’architecture (simplifiée) est la suivante :

La passerelle de paiement fait l’interface entre le monde Internet utilisant SET et le réseau bancaire.

Le fonctionnement est le suivant :

- l’acheteur connecte son poste sur le serveur du marchand, passe commande, et autorise le paiement ;

- le marchand accepte la commande, la réalise, et adresse à sa banque l’autorisation de paiement de l’acheteur via la passerelle.

SET se divise en trois protocoles permettant de réaliser ces différentes étapes :

- un protocole d’achat,

- un protocole d’autorisation de paiement,

- un protocole de paiement.

1. Pour mettre en œuvre les protocoles, SET définit une phase d’accréditation préalable des acteurs par une autorité de certification (en fait une hiérarchie d’autorités) : l’autorité délivre des certificats aux différents acteurs.

1.a. Qu’est-ce qu’un certificat ? Quelles en sont les propriétés principales ?

PC de

l’acheteur

Serveur du marchand

Banque du marchand

Passerelle de paiement

Banque de l’acheteur

Réseau utilisateurs (internet+SET)

Réseau du groupement bancaire

Page 2: INF941 Exam 2010 11 Rattrapage Sujet

Page 2 sur 3

1.b. Discutez les trois scénarios suivant en terme de sécurité (il faudra, le cas échéant, énoncer les problèmes de sécurité potentiels) :

− deux certificats différents sont signés par la même clef privée,

− deux certificats différents contiennent la même clef publique,

− deux certificats différents ont la même signature.

2. SET utilise DES pour chiffrer les messages, et RSA avec des clés d’une longueur de 1024 bits pour distribuer des clés DES. Quels sont les avantages et les inconvénients d’utiliser une telle longueur de clefs RSA ? Pourquoi ne pas utiliser uniquement RSA pour chiffrer les messages ?

3. SET utilise une méthode de signature numérique basée sur la fonction de condensation SHA-1 et sur RSA : elle consiste à appliquer SHA-1 au message, et à chiffrer le résultat en utilisant RSA avec la clef privée de l’émetteur.

Justifiez que la méthode de signature employée satisfait effectivement les propriétés attendues d’une signature.

4. Le processus d’achat se déroule comme suit :

- l’acheteur envoie en clair au marchand une requête d’intention d’achat,

- le marchand répond en envoyant :

- un identifiant de commande plus sa signature numérique,

- le certificat du marchand (contenant sa clef publique PK),

- le certificat de la passerelle de paiement (contenant la clef publique de la passerelle PKpasserelle),

- l’acheteur vérifie les certificats du marchand et de la passerelle en s’adressant à l’autorité de certification, puis vérifie la signature du marchand, et envoie une requête d’achat, contenant en particulier :

- les informations de commandes, IC, détaillant les produits, les quantités, le prix et l’identification de commande fournie par le marchand lors de l’échange précédent,

- les informations de paiement, IP, qui seront communiquées à la passerelle de paiement, et détaillant les informations relatives à la carte bancaire de l’acheteur, le prix et l’identification de la commande,

- la requête d’achat devra assurée que :

- le paiement ne concerne que la commande identifiée (le paiement n’est effectuée que si la commande est acceptée par le marchand et la commande n’est effective que si la banque approuve le paiement)

- le contenu de IC est caché à la banque,

- le contenu de IP est caché au marchand.

4.a. Le protocole SET introduit un mécanisme de signature dit « signature duale » SD, basé sur la fonction SHA-1 et un chiffrement RSA. Cette signature SD est construite pat l’acheteur en utilisant sa clef privée clef privée de l’acheteur SKacheteur, et doit pouvoir être vérifiée par le vendeur ainsi que par la passerelle. SD est définie comme suit : SD= { SHA-1 (SHA-1(IC), SHA-1(IP)) }SKacheteur .

Expliquer l’intérêt de ce mécanisme (on expliquera en particulier en quoi il n’est nécessaire de réaliser plusieurs hachages avec la fonction SHA-1).

4.b. Utiliser ce mécanisme pour construire la requête d’achat envoyée par l’acheteur au vendeur.

4.c. (BONUS) Construire la requête de paiement envoyée par le vendeur à la passerelle.

Exercice 3 : Protocole MTI (6 points)

MTI est une famille de protocoles qui incorporent de l’authentification dans le protocole de distribution de clefs Diffie-Hellman1. Dans cet exercice, nous considérons le premier protocole de la famille MTI, s’appelant MTI_ A[0].

On considérera les notations suivantes : - g est un générateur d’un groupe multiplicatif G. - xA (resp. xB) une clef privée à long terme de A (resp. B),

1 T. Matsumoto, Y. Takashima & H. Imai, « On seeking smart public key distribution systems », Transactions of the IECE of Japan, E69(2) :99-106, 1986.

Page 3: INF941 Exam 2010 11 Rattrapage Sujet

Page 3 sur 3

- CertA (resp. CertB) est un certificat émis par une autorité de certification connue de A et de B, liant l’identité de

A (resp. de B) à sa clef publique gxA (resp. gxB),

- rA (resp. rB) une valeur pseudo-aléatoire secrète, générée par A (resp. B).

Les messages du protocole MTI_ A[0] sont les suivants :

1. A --> B : CertA, grA

2. B --> A : CertB, grB A calcule KAB= (grB)xA (gxB)rA= grA xB + xA rB

B calcule KAB= (grA)xB (gxA)rB= grA xB + xA rB

A la fin du déroulement du protocole, A et B utilisent KAB comme clef de session.

1. Expliquez brièvement le principe du protocole (on explicitera en particulier quelle(s) propriété(s) le protocole est sensé vérifier) (10 lignes maximum).

2. On dit qu’un protocole d’authentification avec distribution de clef vérifie la propriété de « Perfect Forward Secrecy (PFS)2 » si la compromission d’une ou plusieurs clefs à long terme n’implique pas la compromission des clefs de sessions passées.

2.a. Le protocole MTI_ A[0] satisfait-il la propriété de PFS si les deux clefs privées sont compromises (i.e. l’attaquant connaît xA et xB) ? (justifiez votre réponse).

2.b. Le protocole MTI_ A[0] satisfait-il la propriété de PFS si une seule des deux clefs privées est compromise (i.e. l’attaquant connaît soit xA, soit xB) ? (justifiez votre réponse).

3. On effectue l’hypothèse (H) suivante : un attaquant X possède un certificat CertX, liant la clef publique gxAxX à son identité, avec xX une valeur générée par X, et CertX émis par une autorité de certification connue de B.

On considère le scénario suivant :

1. A --> X/B : CertA, grA

1’. X --> B : CertX, grA

2’. B --> X : CertB, grB

2. X/B --> A : CertB, grB xX

Les messages 1 et 2 appartiennent à une première session impliquant A et X (se faisant passer pour B), et les messages 1’ et 2’ à une seconde impliquant X et B.

3.a. Quel objectif de sécurité du protocole est mis en défaut par ce scénario (justifiez). Y a-t’il des conséquences sur l’(les) autre(s) objectif(s) du protocole ?

3.b. L’hypothèse (H) concernant le certificat CertX, vous semble-t’elle raisonnable (justifiez) ?

4. (BONUS) Montrez que le scénario d’attaque informel suivant est réalisable (pour cela, il faudra détailler complètement le scénario en décrivant tous les messages et leur contenu) :

i. X enregistre une session du protocole entre A et B, où la clef échangée est KAB ;

ii. X démarre une nouvelle session du protocole avec A en utilisant une information enregistrée au cours de l’étape i ; on supposera que X connaît la nouvelle clef de session KXA ; X ne peut pas calculer directement KXA, mais on considérera que X peut convaincre A de la lui fournir (c’est une hypothèse pouvant être raisonnable pour certains scénarios d’application dans le sens où A pense que X connaît déjà la clef) ;

iii. de même X démarre une nouvelle session du protocole avec B en utilisant une information enregistrée au cours de l’étape i ; on supposera que X connaît la nouvelle clef de session KXB ;

iv. grâce aux informations acquises dans les précédentes étapes, X déduit KAB.

2 Cette notion a apparemment initialement été introduite par C.G. Günther en 1989. La propriété de PFS est supportée (en option) par le protocole « Internet Key Exchange » (IKE) d’IPSEC. De nos jours, le terme de « Perfect Forward Secrecy » est souvent remplacé par celui « Forward Secrecy ».