Automatically Binding Cryptographic Context to Messages in Network Protocols Using Formal Methods

dc.contributor.advisorSherman, Alan T
dc.contributor.authorGolaszewski, Enis
dc.contributor.departmentComputer Science and Electrical Engineering
dc.contributor.programComputer Science
dc.date.accessioned2024-08-09T17:11:55Z
dc.date.available2024-08-09T17:11:55Z
dc.date.issued2024-01-01
dc.description.abstractUsing formal methods, we identify and correct the failure of cryptographic network protocols to establish explicit session contexts and cryptographically bind their messages to these contexts. To characterize this failure, we formally analyze two protocols, Session Binding Proxy (SBP) and the FIDO Universal Authentication Framework (UAF), in the strand space model. We then apply lessons learned from our analyses to devise an automatic method by which two communicants, engaging in an arbitrary two-party protocol, agree on a final session context. First, we analyze SBP, which protects a vulnerable system by wrapping it and introducing a reverse proxy between the system and its clients. SBP mitigates thefts of authentication cookies by cryptographically binding the authentication cookie---issued by the server to the client---to an underlying Transport Layer Security (TLS) channel using the channel's master secret and a secret key known only by the proxy. Our analysis verifies that the original SBP design mitigates cookie stealing under the client's cryptographic assumptions but fails to authenticate the client to the proxy. Next, we analyze UAF's cryptographic channel binding mechanisms. First, we show that UAF's channel bindings fail to mitigate protocol interaction by a Dolev-Yao (DY) adversary, enabling the adversary to transfer the server's authentication challenge to alternate sessions of the protocol. Second, we implement a proof-of-concept man-in-the-middle attack against eBay's open source FIDO UAF implementation. Third, we propose and verify an improvement of UAF channel binding that better resists protocol interaction, in which the client and the server, rather than the client alone, bind the server's challenge to the session. Finally, we present an automatic method to bind arbitrary two-party protocols to unique cryptographic sessions by binding the original protocols to cryptographic session contexts, alongside a technique for proving security properties of the augmented protocols automatically. Cryptographic session contexts are hashes that incorporate identities of each communicant, fresh nonces from each communicant, all introduced session variables, or session variables that appear in messages, and protocol descriptors such as the protocol name, version, and message identifiers. To construct the final session context, communicants complete a session context exchange protocol, which we generate using our automatic method and interleave with messages of the original protocol. When evaluated against two examples---Needham-Schroeder (NS) and Blanchet's Simple Protocol (BSP)---our transformation provably eliminates protocol interactions between sessions of the transformed protocols in the DY model.
dc.formatapplication:pdf
dc.genredissertation
dc.identifierdoi:10.13016/m22bin-gfgk
dc.identifier.other12895
dc.identifier.urihttp://hdl.handle.net/11603/35292
dc.languageen
dc.relation.isAvailableAtThe University of Maryland, Baltimore County (UMBC)
dc.relation.ispartofUMBC Computer Science and Electrical Engineering Department Collection
dc.relation.ispartofUMBC Theses and Dissertations Collection
dc.relation.ispartofUMBC Graduate School Collection
dc.relation.ispartofUMBC Student Collection
dc.rightsThis item may be protected under Title 17 of the U.S. Copyright Law. It is made available by UMBC for non-commercial research and education. For permission to publish or reproduce, please see http://aok.lib.umbc.edu/specoll/repro.php or contact Special Collections at speccoll(at)umbc.edu
dc.sourceOriginal File Name: Golaszewski_umbc_0434D_12895.pdf
dc.subjectFormal Methods
dc.subjectProtocol Security
dc.subjectStrand Spaces
dc.titleAutomatically Binding Cryptographic Context to Messages in Network Protocols Using Formal Methods
dc.typeText
dcterms.accessRightsDistribution Rights granted to UMBC by the author.

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Golaszewski_umbc_0434D_12895.pdf
Size:
900.21 KB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Golaszewski-Enis_Open.pdf
Size:
4.89 MB
Format:
Adobe Portable Document Format
Description: