Explications TD Sécurité Informatique
TD1 (exo4)+TD 2+TD3 (exo2)
Série 1: exercice 4 (solution)
Trois services à assurer: Confidentialité (symétrique) + Non-répudiation + Intégrité
Phase1: Partage sécurisé de la clé secrète
A => B : {Kab} PKb . {H (Kab)} SKa
(Ou B => A : {Kab} PKa . {H( Kab)} SKb )
Phase 2 : Communications (ou échanges) sécurisés
A => B : {m} Kab . {H(m)} SKa
B => A : {m} Kab . {H(m)} SKb
La Non-répudiation et
La confidentialité Intégrité sont garanties
assurée par chiffrement par la signature
symétrique
Série 2
Proposition 1: Fausse
A Intrus B
M1: B=>A: B. PKb
M1: I/B =>A: A. PKi
M2: A=>B: {M} PKb
M2: I/A=>B: {M} PKa
Proposition 2: Vraie
A Intrus B
M1: B=>A: B. PKb
M1: I/B =>A: B. PKi
M2: A=>B: {M} PKb/i
M2: I/A=>B: {M} PKb
Proposition 3: Fausse
A Intrus B
M1: B=>A: B. PKb
M1: I/B =>A: B. SKb
M2: A=>B: {M} PKb
M2: I/A=>B: {M} PKb
Certificat numérique = Informations + signature
Informations
- Versio: v3
- Date de validité: jusqu’au 16/12/2021
- ID du porteur de certificat
- Clé publique: (ex:fa:5b:c3:a5:32:4c:d6:24)
- Algorithme: DSA
Signature {H(informations)}SKcertification_authority
[Link]
Trusted
certification
A. PKa authority D=
C A: C >C
A=> A e
rt
A:
u r D .P
p o if Kd
Ce
at ic
Ce
c at
ifi
rt
t
r
r p
ifi
Ce
t
o
A
i
u
fi
ca
r
b
D
c
.PK
(PKa, SKa) D
Kc
t p
a
P
t
B
PKca (PKd, SKd)
ou
C
Ce A:
po
PKca
A:
rt
>C
r
if
=> C
B=
ic
C
r
A= at
C
> B: de
B
A.
PK A
a
B C
(PKb, SKb) (PKc, SKc)
PKca PKca
Client Serveur
Hello message
Server Hello (certificat du serveur)
Pre-master clé + Optionnellement (certificat du client)
Security handshake
Calcul de la clé de session
Client finished
Server finished
Echange sécurisé de données
Chiffrement symétrique (ex: AES)+utilisation du MAC
TLS assure les services suivants:
• Authentification du serveur
• Confidentialité des données
• Intégrité de données
• Optionnellement: authentification du client.
Exercice 2: TD3
Ka: clé secrète partagée entre A et KDC (Key Distribution Center)
Kb: clé secrète partagée entre B et KDC
Kab: clé secrète partagée entre A et B
Remarques !!
*La clé Kab est générée par A et non pas KDC
*Suivant le protocole de l’exercice, le KDC joue le rôle de contrôleur d’accès à B
(qui peut être par exemple un serveur). Donc, toute tentative d’accès à B doit
passer d’abord par KDC Aucun accès direct à B n’est autorisé
TD3, Exercice 2: Question 1
Pourquoi un pirate ne peut pas se faire passer pour A auprès du KDC ?
Parce que A partage Ka avec KDC et le pirate ne dispose pas de cette clé et
ne peut pas l’avoir.
TD3, Exercice 2: Question 2
Pourquoi B est certain que le message provient du KDC?
Parce que le message est chiffré en utilisant Kb qui est seulement partagée
entre B et KDC.
TD3, Exercice 2: Question 3
A quelle type d’attaque le protocole ne résiste t-il pas ?
Attaque par rejeu des messages (Replay attack).
Le message (le travail effectué par le Pirate) qui permet le transfert
de la rémunération, pourrait être rejoué à plusieurs reprises pour
transférer plus d’argents que prévu initialement !
TD3, Exercice 2: Question 4
Comment modifier le protocole pour déjouer l’attaque sans pour autant
augmenter le nombre de messages à échanger?
Solution: Il faut ajouter le timestamp aux messages
Le message doit atteindre son destinataire dans un intervalle de temps
raisonable TTL (time to live). Sinon si temps T > TTL alors ne pas accepter le
message pour éviter les tentatives de rejeu des messages par les attaquants.
TD3, Exercice 2: Question 4 (suite solution)
A, { B,Kab,T } Ka { A,Kab,T+1 } Kb