automated verification of privacy in security protocols: back and … · 2018. 9. 10. ·...

43
Automated Verification of Privacy in Security Protocols: Back and Forth Between Theory & Practice Journées Nationales 2018 du Pré-GDR Sécurité Informatique Lucca Hirschi Thèse encadrée par David Baelde et Stéphanie Delaune 31 mai 2018 Lucca Hirschi Automated Verification of Privacy in Security Protocols 1 / 20

Upload: others

Post on 09-Sep-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Automated Verification of Privacy in Security Protocols:Back and Forth Between Theory & Practice

Journées Nationales 2018 du Pré-GDR Sécurité Informatique

Lucca Hirschi

Thèse encadrée par David Baelde et Stéphanie Delaune

31 mai 2018

Lucca Hirschi Automated Verification of Privacy in Security Protocols1/20

Page 2: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Concevoir des protocoles cryptographiques sûrs

TLS

Complexité du problème▶ réseau non sécurisé▶ attaquant actif▶ exécutions concurrentes

Méthodes formelles & modèle symbolique▶ analyses mathématiques & exhaustives▶ garanties formelles▶ automatisé ou automatique

Lucca Hirschi Automated Verification of Privacy in Security Protocols2/20

Page 3: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Concevoir des protocoles cryptographiques sûrs

TLSmodeles

maturite industrielle

80’s

00’s

2018

algos/outils

Accessibilite (ex. authentification)

Complexité du problème▶ réseau non sécurisé▶ attaquant actif▶ exécutions concurrentes

Méthodes formelles & modèle symbolique▶ analyses mathématiques & exhaustives▶ garanties formelles▶ automatisé ou automatique

Lucca Hirschi Automated Verification of Privacy in Security Protocols2/20

Page 4: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Concevoir des protocoles cryptographiques sûrs

TLSmodeles

maturite industrielle

80’s

00’s

2018

algos/outils

Accessibilite (ex. authentification)

Standard TLS 1.3 munide garanties formelles

Complexité du problème▶ réseau non sécurisé▶ attaquant actif▶ exécutions concurrentes

Méthodes formelles & modèle symbolique▶ analyses mathématiques & exhaustives▶ garanties formelles▶ automatisé ou automatique

Lucca Hirschi Automated Verification of Privacy in Security Protocols2/20

Page 5: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Concevoir des protocoles cryptographiques sûrs

TLS

Standard TLS 1.3 munide garanties formelles

modeles

Equivalence: privacy (ex. intracabilite)

Mobilite (5G)

maturite industrielle

modeles

80’s

00’s

2018

algos/outils

maturite industrielle ?

E-Voting

algos/outils

Accessibilite (ex. authentification)

Defis scientifiques

Complexité du problème▶ réseau non sécurisé▶ attaquant actif▶ exécutions concurrentes

Méthodes formelles & modèle symbolique▶ analyses mathématiques & exhaustives▶ garanties formelles▶ automatisé ou automatique

Lucca Hirschi Automated Verification of Privacy in Security Protocols2/20

Page 6: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Vérification symbolique de privacy – État de l’art

Probleme: ∀A , P|A ≈ Q|Amodeles de protocoles (ex. applied π-calculus)

equivalence observationnelle

Lucca Hirschi Automated Verification of Privacy in Security Protocols3/20

Page 7: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Vérification symbolique de privacy – État de l’art

Probleme: ∀A , P|A ≈ Q|Amodeles de protocoles (ex. applied π-calculus)

equivalence observationnelle

Décision pour < ∞ sessions

# sessions borné

branchement< ∞

▶ borner le nombre de sessions▶ sémantique symbolique▶ exploration exhaustive des

exécutions symboliques▶ Outils: DeepSec, Apte, Akiss, Spec

Semi-décision pour ∞ sessions

Attaque “réelle”

“Fausse” attaque

▶ sur-approximationsde l’ & la sémantique

▶ forme forte d’≈ (i.e. diff-equivalence)▶ Outils: ProVerif, Tamarin, Maude-NPA

Lucca Hirschi Automated Verification of Privacy in Security Protocols3/20

Page 8: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Vérification symbolique de privacy – État de l’art

Probleme: ∀A , P|A ≈ Q|Amodeles de protocoles (ex. applied π-calculus)

equivalence observationnelle

Décision pour < ∞ sessions

# sessions borné

branchement< ∞

▶ borner le nombre de sessions▶ sémantique symbolique▶ exploration exhaustive des

exécutions symboliques▶ Outils: DeepSec, Apte, Akiss, Spec

Semi-décision pour ∞ sessions

Attaque “réelle”

“Fausse” attaque

▶ sur-approximationsde l’ & la sémantique

▶ forme forte d’≈ (i.e. diff-equivalence)▶ Outils: ProVerif, Tamarin, Maude-NPA

Explosion # etats

Lucca Hirschi Automated Verification of Privacy in Security Protocols3/20

Page 9: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Vérification symbolique de privacy – État de l’art

Probleme: ∀A , P|A ≈ Q|Amodeles de protocoles (ex. applied π-calculus)

equivalence observationnelle

Décision pour < ∞ sessions

# sessions borné

branchement< ∞

▶ borner le nombre de sessions▶ sémantique symbolique▶ exploration exhaustive des

exécutions symboliques▶ Outils: DeepSec, Apte, Akiss, Spec

Semi-décision pour ∞ sessions

Attaque “réelle”

“Fausse” attaque

▶ sur-approximationsde l’ & la sémantique

▶ forme forte d’≈ (i.e. diff-equivalence)▶ Outils: ProVerif, Tamarin, Maude-NPA

Explosion # etats

Lucca Hirschi Automated Verification of Privacy in Security Protocols3/20

Page 10: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Vérification symbolique de privacy – État de l’art

Probleme: ∀A , P|A ≈ Q|Amodeles de protocoles (ex. applied π-calculus)

equivalence observationnelle

Décision pour < ∞ sessions

# sessions borné

branchement< ∞

▶ borner le nombre de sessions▶ sémantique symbolique▶ exploration exhaustive des

exécutions symboliques▶ Outils: DeepSec, Apte, Akiss, Spec

Semi-décision pour ∞ sessions

Attaque “réelle”

“Fausse” attaque

▶ sur-approximationsde l’ & la sémantique

▶ forme forte d’≈ (i.e. diff-equivalence)▶ Outils: ProVerif, Tamarin, Maude-NPA

Explosion # etatsFaible precision

Lucca Hirschi Automated Verification of Privacy in Security Protocols3/20

Page 11: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Vérification de privacyen pratiqueProtocoles:

ex. mobilité (5G), e-votingPropriétés de privacy:

ex. intraçabilité, anonymat

Standard, Implémentation

Modèle mathématique

Vérification de ≈ dansle modèle symbolique

Modélisation

▶Comparaison formelle etimpacts pratiques des defs.▶Adapter defs. aux

nouveaux threat models

Décision pour < ∞ sessions Semi-décision pour ∞ sessions

Explosion # états Précision

▶Développer notreapproche hybride

▶Importer optims.du model-checking

B-H USA’17, MoST’17

Attaque pratique de privacy sur standards 3G/4G @ #1 hacker conf.

JLAMP

S&P’16Conditions suffisantes

pour la privacyCONCUR’15,

LMCS, POST’14 Partial Order Reduction

Lucca Hirschi Automated Verification of Privacy in Security Protocols4/20

Page 12: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Vérification de privacyen pratiqueProtocoles:

ex. mobilité (5G), e-votingPropriétés de privacy:

ex. intraçabilité, anonymat

Standard, Implémentation

Modèle mathématique

Vérification de ≈ dansle modèle symbolique

Modélisation

▶Comparaison formelle etimpacts pratiques des defs.▶Adapter defs. aux

nouveaux threat models

Décision pour < ∞ sessions Semi-décision pour ∞ sessions

Explosion # états Précision

▶Développer notreapproche hybride

▶Importer optims.du model-checking

B-H USA’17, MoST’17

Attaque pratique de privacy sur standards 3G/4G @ #1 hacker conf.

JLAMP

S&P’16Conditions suffisantes

pour la privacyCONCUR’15,

LMCS, POST’14 Partial Order Reduction

Lucca Hirschi Automated Verification of Privacy in Security Protocols4/20

Page 13: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Vérification de privacyen pratiqueProtocoles:

ex. mobilité (5G), e-votingPropriétés de privacy:

ex. intraçabilité, anonymat

Standard, Implémentation

Modèle mathématique

Vérification de ≈ dansle modèle symbolique

Modélisation

▶Comparaison formelle etimpacts pratiques des defs.▶Adapter defs. aux

nouveaux threat models

Décision pour < ∞ sessions Semi-décision pour ∞ sessions

Explosion # états Précision

▶Développer notreapproche hybride

▶Importer optims.du model-checking

B-H USA’17, MoST’17

Attaque pratique de privacy sur standards 3G/4G @ #1 hacker conf.

JLAMP

S&P’16Conditions suffisantes

pour la privacyCONCUR’15,

LMCS, POST’14 Partial Order Reduction

Lucca Hirschi Automated Verification of Privacy in Security Protocols4/20

Page 14: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Vérification de privacyen pratiqueProtocoles:

ex. mobilité (5G), e-votingPropriétés de privacy:

ex. intraçabilité, anonymat

Standard, Implémentation

Modèle mathématique

Vérification de ≈ dansle modèle symbolique

Modélisation

▶Comparaison formelle etimpacts pratiques des defs.▶Adapter defs. aux

nouveaux threat models

Décision pour < ∞ sessions Semi-décision pour ∞ sessions

Explosion # états Précision

▶Développer notreapproche hybride

▶Importer optims.du model-checking

B-H USA’17, MoST’17

Attaque pratique de privacy sur standards 3G/4G @ #1 hacker conf.

JLAMP

S&P’16

Conditions suffisantespour la privacy

CONCUR’15,LMCS, POST’14

Partial Order Reduction

Lucca Hirschi Automated Verification of Privacy in Security Protocols4/20

Page 15: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Vérification de privacyen pratiqueProtocoles:

ex. mobilité (5G), e-votingPropriétés de privacy:

ex. intraçabilité, anonymat

Standard, Implémentation

Modèle mathématique

Vérification de ≈ dansle modèle symbolique

Modélisation

▶Comparaison formelle etimpacts pratiques des defs.▶Adapter defs. aux

nouveaux threat models

Décision pour < ∞ sessions Semi-décision pour ∞ sessions

Explosion # états Précision

▶Développer notreapproche hybride

▶Importer optims.du model-checking

B-H USA’17, MoST’17

Attaque pratique de privacy sur standards 3G/4G @ #1 hacker conf.

JLAMP

S&P’16

Conditions suffisantespour la privacy

CONCUR’15,LMCS, POST’14 Partial Order Reduction

Lucca Hirschi Automated Verification of Privacy in Security Protocols4/20

Page 16: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Partial Order ReductionThéorie. Pour une classe de protocoles (action-deterministic):▶ Techniques de Partial Order Reduction (model-checking)▶ s’inspirant du Focusing (théorie de la preuve)

⇝ Sémantique réduite⇝ explore ⊖ exécutions redondantesPratique.▶ Intégration dans Apte, DeepSec, Akiss, Spec▶ Speedup jusqu’à 105

10-3

10-2

10-1

100

101

102

103

104

5 10 15 20

seco

nds

nb. of parallel processes

referencecompression

reduction

10-3

10-2

10-1

100

101

102

103

104

3 6 9 12

seco

nds

nb. of parallel processes

referencecompression

reduction

Exemple jouet Wide Mouthed Frog

Lucca Hirschi Automated Verification of Privacy in Security Protocols5/20

Page 17: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Vérification de privacyen pratiqueProtocoles:

ex. mobilité (5G), e-votingPropriétés de privacy:

ex. intraçabilité, anonymat

Standard, Implémentation

Modèle mathématique

Vérification de ≈ dansle modèle symbolique

Modélisation

▶Comparaison formelle etimpacts pratiques des defs.▶Adapter defs. aux

nouveaux threat models

Décision pour < ∞ sessions Semi-décision pour ∞ sessions

Explosion # états Précision

▶Développer notreapproche hybride

▶Importer optims.du model-checking

B-H USA’17, MoST’17

Attaque pratique de privacy sur standards 3G/4G @ #1 hacker conf.

JLAMP

S&P’16Conditions suffisantes

pour la privacyCONCUR’15,

LMCS, POST’14

Partial Order Reduction

Lucca Hirschi Automated Verification of Privacy in Security Protocols6/20

Page 18: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Conditions suffisantes pour laprivacy

[H., Baelde, Delaune: Security & Privacy’16]

Page 19: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Exemple

Voiture #7 Voiture #7

test dec

Ouvrir Voiture #7

Clé symétrique k7 Clé symétrique k7

Ouvrir Voiture #7

0

0

0

Nonce X Nonce Y

enc(⟨#7, X⟩, k7)

enc(⟨X, Y ⟩, k7)

Attack: stealsAttack: tracks (attack on unlinkability)

= ⇐⇒ =Authentification: 3

Intraçabilité: ?

Lucca Hirschi Automated Verification of Privacy in Security Protocols8/20

Page 20: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Exemple

Voiture #7 Voiture #7

test dec

Ouvrir Voiture #7

Clé symétrique k7 Clé symétrique k7

Ouvrir Voiture #7

0

0

0

Nonce X Nonce Y

enc(⟨#7, X⟩, k7)

enc(⟨X, Y ⟩, k7)

Attack: stealsAttack: tracks (attack on unlinkability)

= ⇐⇒ =

Authentification: 3Intraçabilité: ?

Lucca Hirschi Automated Verification of Privacy in Security Protocols8/20

Page 21: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Intraçabilité[ISO/IEC 15408] Assure que l’utilisateur peut utiliser le système plusieurs fois

sans que les autres puissent relier ces utilisations.

≈Id 1Id 1 Id 2

2 sessions1 utilisateur

Id 3 Id 4 Id 5

Id 2Id 3Id 4Id 5

∞∞∞∞

!new Id. !new Sess. P !new Id. new Sess. P≈?

fausses attaques systématiquesavec l’état de l’art

Strong Unlinkability [Arapinis, Chothia, Ritter, Ryan CSF’10]

Lucca Hirschi Automated Verification of Privacy in Security Protocols9/20

Page 22: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Intraçabilité[ISO/IEC 15408] Assure que l’utilisateur peut utiliser le système plusieurs fois

sans que les autres puissent relier ces utilisations.

≈Id 1Id 1 Id 2

∞ sessions∞ utilisateurs

Id 3 Id 4 Id 5

Id 2Id 3Id 4Id 5

∞∞∞∞

!new Id. !new Sess. (P |P ) !new Id. new Sess. (P |P )≈?

fausses attaques systématiquesavec l’état de l’art

Strong Unlinkability [Arapinis, Chothia, Ritter, Ryan CSF’10]

Lucca Hirschi Automated Verification of Privacy in Security Protocols9/20

Page 23: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Contributions

Approche novatrice▶ conditions suffisantes pour la privacy, dont propriété d’accessibilité▶ chaque condition capture une classe d’attaques (modularité)

Théorie▶ 2 conditions impliquant intraçabilité et anonymat▶ large classe de protocoles 2-parties▶ chaque condition est fondamentalement plus simple (modularité)

Pratique▶ les 2 conditions sont vérifiables automatiquement avec précision▶ développement de l’outil UKano: vérification “push-button”▶ nouvelles preuves & attaques sur des protocoles industriels e.g. e-passport

Lucca Hirschi Automated Verification of Privacy in Security Protocols10/20

Page 24: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Un exemple dans la 1ère classe d’attaques

Clé symétrique k7Clé symétrique k7

Nonce Y

Nonce X

Clé symétrique k3

enc(⟨#7, X⟩, k7) enc(⟨#7, X⟩, k7)

enc(⟨#7, X⟩, k7)

enc(⟨X, Y ⟩, k) test 3

test 3/5

test 3= ⇐⇒

∃ comportement de t.q. une conditionnelle révèle la présence d’agents

Lucca Hirschi Automated Verification of Privacy in Security Protocols11/20

Page 25: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

1ère Condition

1ère classe d’attaques∃ comportement de t.q. une conditionnelle révèle la présence d’agents

Idées pour concevoir une condition capturant ces attaques:▶ Par convention: n’interfère pas ⇒ test 3

▶ Problématique quand: a interféré ⇒ test 3/5 selon l’agent▶ Condition 1: test 3 ⇐⇒ n’a pas interféré pour l’agent évaluant ce test

Condition 1

Fondamentalement plus simple: propriété d’accessibilité

Lucca Hirschi Automated Verification of Privacy in Security Protocols12/20

Page 26: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Un fix ?

Voiture #7 Voiture #7

Ouvrir Voiture #7

Clé symétrique k7 Clé symétrique k7

Ouvrir Voiture #7

0

0

0

Nonce X

X

enc(X, k7)

Attack: stealsAttack: tracks (attack on unlinkability)

= ⇐⇒ =

Lucca Hirschi Automated Verification of Privacy in Security Protocols13/20

Page 27: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Un exemple dans la 2nde classe d’attaques

Key k

Key k′

R[k, sess1]

R[k′, sess2]

0

enc(0, k)

0

enc(0, k′)

k′ = k ⇐⇒ == ⇐⇒

... ∃ relation entre messages qui révèle la présence d’agents.Pour un comportement de l’ ...

Lucca Hirschi Automated Verification of Privacy in Security Protocols14/20

Page 28: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

2nde Condition

2nde classe d’attaques∃ comportement de t.q. une relation entre messages révèle la présenced’agents

Idées pour concevoir une condition capturant ces attaques:▶ capturer relation entre messages non uniformes en les identités▶ Condition 2: ∀ exécution produisant des messages M ,

M ∼ Ideal(M)︸ ︷︷ ︸uniforme par définition

Condition 2

Fondamentalement plus simple: équivalence statique sur les messages

Lucca Hirschi Automated Verification of Privacy in Security Protocols15/20

Page 29: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Le résultat

ThéorèmeTout protocole dans la classe qui vérifie les deux conditions assureintraçabilité et anonymat.

Résumé de l’approche:▶ modularité:

chaque condition capture 1 classe d’attaques, 1 aspect de la propritété

▶ simplification graduelle:condition 2 peut se concentrer sur les exécutions satisfaisants condition 1

Lucca Hirschi Automated Verification of Privacy in Security Protocols16/20

Page 30: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Impact pratiqueOutil UKano: modèle → encode les deux conditions → ProVerif → 3/ /?

Protocoles RFID C2 C1 Intra.Feldhofer 3 3 prouvéHash-Lock 3 3 prouvéLAK (stateless) − 5

Fixed LAK 3 3 prouvé

[*] C2 C1 Intra.DAA sign 3 3 prouvéDAA join 3 3 prouvéabcdh (irma) 3 3 prouvé

E-passeport C2 C1 Intra.BAC 3 3 prouvéBAC/PA/AA 3 3 prouvéPACE (dec faillible) − 5

PACE (test manquant) − 5

PACE − 5

PACE avec tags 3 3 prouvé

▶ Nouvelles preuves et détection de nouvelles attaques grâce à UKano▶ Impossible auparavant: fausses attaques systématiques sauf pour [*]▶ Les conditions sont assez précises en pratique

Lucca Hirschi Automated Verification of Privacy in Security Protocols17/20

Page 31: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Conclusion

Page 32: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Résumé

Décision pour < ∞ sessionsSemi-décision pour ∞ sessions

Vérification de ≈ dansle modèle symbolique

Vérification de privacyen pratique

Pb: passage à l’échelle Pb: faible précision

Implem + Benchmarks

Techniques POR

Outil + Nvlles. Preuves/Attaques

Privacy par sous-conditions

Lucca Hirschi Automated Verification of Privacy in Security Protocols19/20

Page 33: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Résumé

Décision pour < ∞ sessionsSemi-décision pour ∞ sessions

Vérification de ≈ dansle modèle symbolique

Vérification de privacyen pratique

Pb: passage à l’échelle Pb: faible précision

Implem + Benchmarks

Techniques POR

Outil + Nvlles. Preuves/Attaques

Privacy par sous-conditions

Lucca Hirschi Automated Verification of Privacy in Security Protocols19/20

Page 34: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Future WorkDecision for < ∞ sessions Semi-decision for ∞ sessions

Vérification de ≈ dansle modèle symbolique

Vérification de privacyen pratique

Issue: scales too badly Issue: not precise enough

Techniques POR Privacy par sous-conditions

▶ Éliminer l’hypothèsed’action-déterminisme

▶ POR pour la recherche en arrière

▶ Étendre la classe: +états & >2 parties▶ Vérification de Cond2 via reachability:

Untrac. & Ano. 7→ reachability pure

Exploiter dans d’autres contextes& en déduire des guidelines

Profiter du model-checking

Prêt à guider l’analyse/design/standardisation ?

(i) Modélisation, (ii) Précision, (iii) Passage à l’échelle

Lucca Hirschi Automated Verification of Privacy in Security Protocols20/20

Page 35: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Future WorkDecision for < ∞ sessions Semi-decision for ∞ sessions

Vérification de ≈ dansle modèle symbolique

Vérification de privacyen pratique

Issue: scales too badly Issue: not precise enough

Techniques POR Privacy par sous-conditions

▶ Éliminer l’hypothèsed’action-déterminisme

▶ POR pour la recherche en arrière

▶ Étendre la classe: +états & >2 parties▶ Vérification de Cond2 via reachability:

Untrac. & Ano. 7→ reachability pure

Exploiter dans d’autres contextes& en déduire des guidelines

Profiter du model-checking

Prêt à guider l’analyse/design/standardisation ?

(i) Modélisation, (ii) Précision, (iii) Passage à l’échelle

Lucca Hirschi Automated Verification of Privacy in Security Protocols20/20

Page 36: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Future WorkDecision for < ∞ sessions Semi-decision for ∞ sessions

Vérification de ≈ dansle modèle symbolique

Vérification de privacyen pratique

Issue: scales too badly Issue: not precise enough

Techniques POR Privacy par sous-conditions

▶ Éliminer l’hypothèsed’action-déterminisme

▶ POR pour la recherche en arrière

▶ Étendre la classe: +états & >2 parties▶ Vérification de Cond2 via reachability:

Untrac. & Ano. 7→ reachability pure

Exploiter dans d’autres contextes& en déduire des guidelines

Profiter du model-checking

Prêt à guider l’analyse/design/standardisation ?

(i) Modélisation, (ii) Précision, (iii) Passage à l’échelle

Lucca Hirschi Automated Verification of Privacy in Security Protocols20/20

Page 37: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Future WorkDecision for < ∞ sessions Semi-decision for ∞ sessions

Vérification de ≈ dansle modèle symbolique

Vérification de privacyen pratique

Issue: scales too badly Issue: not precise enough

Techniques POR Privacy par sous-conditions

▶ Éliminer l’hypothèsed’action-déterminisme

▶ POR pour la recherche en arrière

▶ Étendre la classe: +états & >2 parties▶ Vérification de Cond2 via reachability:

Untrac. & Ano. 7→ reachability pure

Exploiter dans d’autres contextes& en déduire des guidelines

Profiter du model-checking

Prêt à guider l’analyse/design/standardisation ?

(i) Modélisation, (ii) Précision, (iii) Passage à l’échelle

Lucca Hirschi Automated Verification of Privacy in Security Protocols20/20

Page 38: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Future WorkDecision for < ∞ sessions Semi-decision for ∞ sessions

Vérification de ≈ dansle modèle symbolique

Vérification de privacyen pratique

Issue: scales too badly Issue: not precise enough

Techniques POR Privacy par sous-conditions

▶ Éliminer l’hypothèsed’action-déterminisme

▶ POR pour la recherche en arrière

▶ Étendre la classe: +états & >2 parties▶ Vérification de Cond2 via reachability:

Untrac. & Ano. 7→ reachability pure

Exploiter dans d’autres contextes& en déduire des guidelines

Profiter du model-checking

Prêt à guider l’analyse/design/standardisation ?(i) Modélisation, (ii) Précision, (iii) Passage à l’échelle

Lucca Hirschi Automated Verification of Privacy in Security Protocols20/20

Page 39: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Backup

Page 40: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

Vérification de privacyen pratiqueProtocoles:

ex. mobilité (5G), e-votingPropriétés de privacy:

ex. intraçabilité, anonymat

Standard, Implémentation

Modèle mathématique

Vérification de ≈ dansle modèle symbolique

1: Compréhension Formelle de Privacy

▶Comparaison formelle etimpacts pratiques des defs.▶Adapter defs. aux

nouveaux threat models

Décision pour < ∞ sessions Semi-décision pour ∞ sessions

3: Profiter du Model-Checking 2: Approche Hybride

▶Développer notreapproche hybride

▶Importer optims.du model-checking

B-H USA’17, MoST’17

Attaque pratique de privacy sur 3G/4G

JLAMP’17

S&P’16S&P’16 , CSF’18Conditions suffisantes

pour la privacyCONCUR’15,

LMCS’17, POST’14 Partial Order Reduction

Lucca Hirschi Automated Verification of Privacy in Security Protocols20/20

Page 41: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

1er Axe : Compréhension formelle de la privacyBesoin de privacy Modélisation−−−−−−→ Déf. formelle dans le modèle symboliqueExigence, e.g. ISO, loi

“Pas traçable” !Id. !Sess.(P |P ) ≈ !Id.Sess.(P |P )

ISO 15048 Modélisations−−−−−−−→existantes

(!Id. !Sess.P )|!P ≈ (!Id.Sess.P )|!P

3GPP TS 33.849 !Id. !Sess.(P |P ) ≈m !Id.Sess.(P |P ). . .

⇝ +15 modélisations capturant des garanties +/− fortes⇝ comparaison?, choix?, ?

Objectifs:

▶ Hiérarchisation formelle des modélisations mathématiques en général etpour des classes réalistes de protocoles (pertinence pratique des =)

▶ Définitions formelles des nouveaux modèles d’attaquants + vérification:compromission d’agents, post/pre-compromission, attaquant quantique.

Lucca Hirschi Automated Verification of Privacy in Security Protocols20/20

Page 42: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

2ème Axe : Approche hybride pour la privacy

▶ Modularité: 1 condition capture 1 classe d’attaques, 1 aspect de la propritété▶ Simplification graduelle: conditionn peut supposer conditionj<n

▶ Avantages: + précisions & efficacité, modulaire, explicatif

Objectifs:

▶ Utiliser ce nouvel outil pour résoudre les nombreux problèmes de l’état de l’art:▶ E-voting: avec coercion, comptage, revote, etc. (état de l’art très limité)▶ Protocoles d’auth.: nombreuses limitations, ex. 5G (+2 parties, stateful)

▶ Unifier ces idées pour proposer un outil de vérification générique pour la privacy

Résultats préliminaires: 2 instantiations spécifiques▶ Intraçabilité/anonymat: 2-parties & stateless▶ Secret du vote: classe restrictive de protocoles e-voting

Lucca Hirschi Automated Verification of Privacy in Security Protocols20/20

Page 43: Automated Verification of Privacy in Security Protocols: Back and … · 2018. 9. 10. · Concevoir des protocoles cryptographiques sûrs TLS modeles maturite industrielle 80's 00's

3ème Axe : Profiter des avancées en Model-Checking

Exemple: Anonymat pour Private Authentication: (avec Apte)1 session 7→ 1 seconde, 2 sessions 7→ 1 heure, 3 sessions 7→ >2 jours.

Model-Checking:▶ POR statique/dynamique▶ réduction de symétries, etc.

⇝Vérification de privacy:▶ ≈ + attaquant▶ sémantique symbolique

Objectifs:

Importer les avancées en model-checking à la sécurité:

▶ POR dynamique▶ POR statique pour recherche en arrière▶ CounterExample-Guided Abstraction

Refinement

▶ Idéalement via untransfert direct surun encodage de ≈

Résultats préliminaires: Partial Order Reduction extrêmement efficace (speedup 105)mais ad-hoc et pour une classe restrictive de protocoles (CONCUR’15, LMCS, POST’14)

Lucca Hirschi Automated Verification of Privacy in Security Protocols20/20