Скачать презентацию An Update on Network Protocol Security Anupam Datta Скачать презентацию An Update on Network Protocol Security Anupam Datta

ca1be0d7a1b087354c7286dd9934eca0.ppt

  • Количество слайдов: 33

An Update on Network Protocol Security Anupam Datta John Mitchell Stanford University Stanford Computer An Update on Network Protocol Security Anupam Datta John Mitchell Stanford University Stanford Computer Forum, 2007

Roadmap u. Network protocol examples u. Are industrial protocols secure? • Case studies of Roadmap u. Network protocol examples u. Are industrial protocols secure? • Case studies of industry standards u. Research state-of-the-art • Fully automated bug-finding tools • Methods for proving absence of bugs – Protocol Composition Logic • Modular proof-techniques • Cryptographic soundness u. Conclusions and Future Work

Many Protocols u. Authentication • Kerberos u. Key Exchange • SSL/TLS handshake, IKE, JFK, Many Protocols u. Authentication • Kerberos u. Key Exchange • SSL/TLS handshake, IKE, JFK, IKEv 2, u. Wireless and mobile computing • Mobile IP, WEP, 802. 11 i, 802. 16 e, Wi-Fi u. Electronic commerce • Contract signing, SET, electronic cash, …

802. 11 i Wireless Authentication Supplicant Auth/Assoc Un. Auth/Un. Asso 802. 1 X c 802. 11 i Wireless Authentication Supplicant Auth/Assoc Un. Auth/Un. Asso 802. 1 X c Un. Blocked 802. 1 X Blocked PTK/GTK No Key 802. 11 Association EAP/802. 1 X/RADIUS Authentication 4 -Way Handshake Group Key Handshake Data Communication MS K Widely used in wireless LANs

TLS protocol layer over TCP/IP http telnet ftp Application nntp SSL/TLS Transport Internet (TCP) TLS protocol layer over TCP/IP http telnet ftp Application nntp SSL/TLS Transport Internet (TCP) (IP) Network interface Physical layer Widely used on internet

IKE sub-protocol from IPSEC m 1 A, (ga mod p) A B, (gb mod IKE sub-protocol from IPSEC m 1 A, (ga mod p) A B, (gb mod p) , sign. B(m 1, m 2) m 2 B sign. A(m 1, m 2) Result: A and B share secret gab mod p Used in corporate Virtual Private Networks

Kerberos Protocol AS-REQ Client AS-REP KAS TGS-REQ Client TGS-REP TGS AP-REQ Client AP-REP Server Kerberos Protocol AS-REQ Client AS-REP KAS TGS-REQ Client TGS-REP TGS AP-REQ Client AP-REP Server Running example in this talk Used for network authentication

Roadmap u. Network protocol examples u. Are industrial protocols secure? • Case studies of Roadmap u. Network protocol examples u. Are industrial protocols secure? • Case studies of industry standards u. Research state-of-the-art • Fully automated bug-finding tools • Methods for proving absence of bugs – Protocol Composition Logic • Modular proof-techniques • Cryptographic soundness u. Conclusions and Future Work

Microsoft Security Bulletin MS 05 -042 Vulnerabilities in Kerberos Could Allow Denial of Service, Microsoft Security Bulletin MS 05 -042 Vulnerabilities in Kerberos Could Allow Denial of Service, Information Disclosure, and Spoofing (899587) Published: August 9, 2005 Affected Software: • Microsoft Windows 2000 Service Pack 4 • Microsoft Windows XP Service Pack 1 and Microsoft Windows XP Service Pack 2 • Microsoft Windows XP Professional x 64 Edition • Microsoft Windows Server 2003 and Microsoft Windows Server 2003 Service Pack 1 • Microsoft Windows Server 2003 for Itanium-based Systems and Microsoft Windows Server 2003 with SP 1 for Itanium-based Systems • Microsoft Windows Server 2003 x 64 Edition

Kerberos Error I. Cervesato, A. D. Jaggard, A. Scedrov, J. -K. Tsay, and C. Kerberos Error I. Cervesato, A. D. Jaggard, A. Scedrov, J. -K. Tsay, and C. Walstad u. Formal analysis of Kerberos 5 • Several steps – Detailed core protocol – Cross-realm authentication – Public-key extensions to Kerberos u. Attack on PKINIT • Breaks association of client request and the response • Prevents full authentication and confidentiality u. Formal verification of fixes preventing attack • Close, ongoing interactions with IETF WG

Public-Key Kerberos u Extend basic Kerberos 5 to use PKI • Change first round Public-Key Kerberos u Extend basic Kerberos 5 to use PKI • Change first round to avoid long-term shared keys • Originally motivated by security – If KDC is compromised, don’t need to regenerate shared keys – Avoid use of password-derived keys • Current emphasis on administrative convenience – Avoid need to register in advance of using Kerberized services u This extension is called PKINIT • • Current version is PKINIT-29 Attack found in PKINIT-25; fixed in PKINIT-27 Included in Windows and Linux (called Heimdal) Implementation developed by Cable. Labs (for cable boxes)

Attack C Cert. C, [t. C, n 2]sk. C, C, T, n 1 I Attack C Cert. C, [t. C, n 2]sk. C, C, T, n 1 I I I C {[k, n 2]sk. K}pk. C, C, TGT, {AK, …}k • I knows fresh keys k and AK • C receives K’s signature over k, n 2 and assumes k, AK, etc. , were generated for C (not I) Cert. I, [t. C, n 2]sk. I, I, T, n 1 {[k, n 2]sk. K}pk. I, I, TGT, {AK, …}k K K I • Principal P has secret key sk. P, public key pk. P • {msg}key is encryption of msg with key • [msg]key is signature over msg with key

Fix Adopted in pk-init-27 u. The KDC signs k, cksum (instead of k, n Fix Adopted in pk-init-27 u. The KDC signs k, cksum (instead of k, n 2) – k is reply. Key – cksum is checksum over AS-REQ – Easier to implement than signing C, k, n 2 u. Formal proof: this guarantees authentication • Assume checksum is preimage resistant • Assume KDC’s signature keys are secret

Attacks on Industry Standards u. IKE [Meadows; 1999] • Reflection attack; fix adopted by Attacks on Industry Standards u. IKE [Meadows; 1999] • Reflection attack; fix adopted by IETF WG u. IEEE 802. 11 i [He, Mitchell; 2004] • Do. S attack; fix adopted by IEEE WG u. GDOI [Meadows, Pavlovic; 2004] • Composition attack; fix adopted by IETF WG u. Kerberos V 5 [Scedrov et al; 2005] • Identity misbinding attack; fix adopted by IETF WG; Windows update released by Microsoft Identified using logical methods

Roadmap u. Network protocol examples u. Are industrial protocols secure? • Case studies of Roadmap u. Network protocol examples u. Are industrial protocols secure? • Case studies of industry standards u. Security analysis state-of-the-art • Fully automated bug-finding tools • Methods for proving absence of bugs – Protocol Composition Logic • Modular proof-techniques • Cryptographic soundness u. Conclusions and Future Work

Security Analysis Methodology Kerbe ros Our tool: Protocol Composition Logic (PCL) Protocol authentication Property Security Analysis Methodology Kerbe ros Our tool: Protocol Composition Logic (PCL) Protocol authentication Property Analysis Tool Security proof or attack ~40 line axiomatic proof Attacker model -Complete control over network -Perfect crypto

Automated Finite-State Analysis u. Define finite-state system • Bound on number of steps • Automated Finite-State Analysis u. Define finite-state system • Bound on number of steps • Finite number of participants • Nondeterministic adversary with finite options u. Pose correctness condition • Authentication, secrecy, fairness, abuse-freeness u. Exhaustive search using “verification” tool • Error in finite approximation Error in protocol • No error in finite approximation ? ? ? u. Example • SSL analysis with 3 clients and 2 servers

Bug-finding Tools and Case Studies u. Murphi model-checking of protocols • Generic model-checker developed Bug-finding Tools and Case Studies u. Murphi model-checking of protocols • Generic model-checker developed by David Dill’s group at Stanford • Method for security protocol analysis developed by Mitchell, Shmatikov et al (1997 -) • Many case studies including SSL, 802. 11 i • Tool and case studies available at http: //cs 259. stanford. edu u. Many other fully automated tools • AVISPA project, SRI constraint solver, … u. Ready for industrial use

Roadmap u. Network protocol examples u. Are industrial protocols secure? • Case studies of Roadmap u. Network protocol examples u. Are industrial protocols secure? • Case studies of industry standards u. Security analysis state-of-the-art • Fully automated bug-finding tools • Methods for proving absence of bugs – Protocol Composition Logic • Modular proof-techniques • Cryptographic soundness u. Conclusions and Future Work

Proving Security of Protocols u. Cryptographic reductions • More realistic model involving probabilistic polynomial Proving Security of Protocols u. Cryptographic reductions • More realistic model involving probabilistic polynomial time attackers • Difficult to scale to industrial protocols u. Symbolic methods and proof tools • NRL Protocol Analyzer, Paulson’s Inductive Method, Process calculi, Specialized protocol logics, MSR (see http: //cs 259. stanford. edu ) • 2 challenges: – Scale to industrial protocols: modular analysis desired – Use cryptographic model instead of idealized symbolic model • Progress on challenges in last 5 years

Our Result u. Protocol Composition Logic (PCL): • Unbounded number of sessions (vs. model Our Result u. Protocol Composition Logic (PCL): • Unbounded number of sessions (vs. model -checking) • Short high-level proofs: 2 -3 pages • Sound wrt – symbolic model – computational cryptography model Focus today • Modular proof techniques [DMP 01, DDMP 03, …, RDDM 06]

PCL Results: Industrial Protocols u IEEE 802. 11 i [IEEE Standards; 2004] [HSDDM 05] PCL Results: Industrial Protocols u IEEE 802. 11 i [IEEE Standards; 2004] [HSDDM 05] u. TLS/SSL [RFC 2246] is a component (Attack using model-checking; fix adopted by WG) u GDOI Secure Group Communication [RFC 3547] [MP 04] (Attack using PCL; fix adopted by IETF WG) u Kerberos V 5 [IETF ID; 2004] [CMP 05, RDDM 06] u Mobile IPv 6 [RFC 3775] in progress u IKE/JFK family u. IKEv 2 [IETF ID; 2004] in progress [RDM 06] Except Kerberos, results currently apply only to symbolic model

Kerberos Stage 1 Programs C, T, n C {AKey, n, T}K_CK, {AKey, C}K_AT KAS Kerberos Stage 1 Programs C, T, n C {AKey, n, T}K_CK, {AKey, C}K_AT KAS Client 1 = (C, K, T)[ new n; send C, K, {C, T, n}; receive K, C, {AKey, n, T}K_CK, TGT KAS = (K)[ receive C, K, {C, T, n}; new AKey; send K, C, {AKey, n, T}K_CK, {AKey, C}K_AT ]< ]< > > A protocol is a set of programs, one for each role

PCL: Syntax u. Action formulas a : : = Send(P, t) | Receive (P, PCL: Syntax u. Action formulas a : : = Send(P, t) | Receive (P, t) | … u. Formulas : : = a | Indist(P, t) | Good. Key. Against(X, k) | Honest(N) | | 1 2 | x | a < a | … u. Modal formula [ actions ] P u. Examples • secret indistinguishable from random – ( X A X B) Indist(X, secret) Specifying secrecy

Kerberos Stage 1 Property u. Client guarantee true [ Client 1(C, T, K) ] Kerberos Stage 1 Property u. Client guarantee true [ Client 1(C, T, K) ] C Honest(C, T, K) (Good. Key. Against(X, AKey) X {C, T, K} ) u. Key usable for encryption

Complexity-theoretic semantics u. Q |= if adversary A distinguisher D negligible function f n Complexity-theoretic semantics u. Q |= if adversary A distinguisher D negligible function f n 0 n > n 0 s. t. Fraction represents probability |[[ ]](T, D, f(n))|/|T| > 1 – f(n) T(Q, A, n) • • Fix protocol Q, PPT adversary A Choose value of security parameter n Vary random bits used by all programs Obtain set T=T(Q, A, n) of equi-probable traces [[ ]](T, D, f) [DDMST 05]

PCL: Proof System u Property of signature: Honest(X) Verifies(Y, m, X) Signed(X, m) u PCL: Proof System u Property of signature: Honest(X) Verifies(Y, m, X) Signed(X, m) u Soundness proof: u Assume axiom not valid A D negligible f n 0 n > n 0 s. t. [[ ]](T, D, f(n))|/|T| < 1 –f(n) u Construct attacker A’ that uses A, D to break CMAsecure signature scheme u Standard cryptographic reduction [DDMST 05, DDMW 06]

Inductive Secrecy Pick a nonce s and set of keys K = {k 0, Inductive Secrecy Pick a nonce s and set of keys K = {k 0, k 1, k 2} Secretive(s, K) Generate s Enc with k 0 • Terms explicitly containing s are encrypted by a key in K before sending out. • New terms obtained through decryption by a key in K are re-encrypted by a key in K before sending out by an honest principal. Adversary Dec with k 1 Enc with k 2 Dec with k’ [RDDM 06]

Inductive Secrecy “Good” Keys u Secrecy axiom Secretive(s, K) Good. Init(s, K) Good. Key. Inductive Secrecy “Good” Keys u Secrecy axiom Secretive(s, K) Good. Init(s, K) Good. Key. For(s, K) u. Read • If – protocol is “secretive” – nonce-generator is honest – key-holders are honest then w. Soundness proof is by reduction to a multiparty IND-CCA game [BBM 00] w. One-time effort – the key generated from the nonce is a “good” key (usable for encryption)

CPCL analysis of Kerberos V 5 u Kerberos has a staged architecture • First CPCL analysis of Kerberos V 5 u Kerberos has a staged architecture • First stage generates a nonce and sends it encrypted • Second stage uses this nonce as a key to encrypt another nonce. • Third stage uses the nonce exchanged in the second stage to encrypt other terms u We prove “Good. Key”-ness of both the nonces assuming encryption scheme is IND-CCA u Authentication properties proved assuming encryption scheme is INT-CTXT secure u Modular proofs (including PKINIT) using composition theorems u Result by Boldyreva et al showing that encryption scheme provides required properties

Logic and Cryptography: Big Picture Protocol security proofs using proof system Axiom in proof Logic and Cryptography: Big Picture Protocol security proofs using proof system Axiom in proof system Semantics and soundness theorem Complexity-theoretic crypto definitions (e. g. , IND-CCA 2 secure encryption) Crypto constructions satisfying definitions (e. g. , Cramer-Shoup encryption scheme)

Conclusions u Practical protocols may contain errors • Automated methods find bugs that humans Conclusions u Practical protocols may contain errors • Automated methods find bugs that humans overlook u Variety of tools • Model checking can find errors • Proof method can show correctness – with respect to specific model of execution and attack u Modular analysis is a challenge u Closing gap between logical analysis and cryptography • Symbolic model supports useful analysis – Tools, case studies, high-level proofs • Computational model more informative – Includes probability, complexity – Does not require strong cryptographic assumptions – More accurately reflects realistic attack • Two approaches can be combined – Several current projects and approaches [BPW, MW, Blan, CH, …] – One example: computational semantics for symbolic protocol logic u Research area coming of age • Interactions with and impact on industry

Thanks! Questions? Thanks! Questions?