Analysis of the Security Design, Engineering, and Implementation of the SecureDNA System
Alan T. Sherman, Jeremy J. Romanik Romano, Edward Zieglar, Enis Golaszewski, Jonathan D. Fuchs, William E. Byrd
TL;DR
This work analyzes the security design, engineering, and implementation of SecureDNA's privacy-preserving hazard screening system for DNA synthesis orders. It applies formal-methods (strand spaces and CPSA) to model the basic order-request and exemption-handling protocols, uncovering fundamental weaknesses that undermine defense-in-depth through a flawed SCEP and weak bindings. The authors demonstrate that SCEP provides only one-way authentication and that critical bindings are insufficient, proposing SCEP+ and other mitigations that are formally validated, with Version 1.1.0 implementing the fixes. The study highlights the crucial role of formal-methods analysis in protocol design and offers concrete guidance for strengthening security engineering in privacy-preserving biomedical screening with practical regulatory and safety implications.
Abstract
We analyze security aspects of the SecureDNA system regarding its system design, engineering, and implementation. This system enables DNA synthesizers to screen order requests against a database of hazards. By applying novel cryptography, the system aims to keep order requests and the database of hazards secret. Discerning the detailed operation of the system in part from source code (Version 1.0.8), our analysis examines key management, certificate infrastructure, authentication, and rate-limiting mechanisms. We also perform the first formal-methods analysis of the mutual authentication, basic request, and exemption-handling protocols. Without breaking the cryptography, our main finding is that SecureDNA's custom mutual authentication protocol SCEP achieves only one-way authentication: the hazards database and keyservers never learn with whom they communicate. This structural weakness violates the principle of defense in depth and enables an adversary to circumvent rate limits that protect the secrecy of the hazards database, if the synthesizer connects with a malicious or corrupted keyserver or hashed database. We point out an additional structural weakness that also violates the principle of defense in depth: inadequate cryptographic bindings prevent the system from detecting if responses, within a TLS channel, from the hazards database were modified. Consequently, if a synthesizer were to reconnect with the database over the same TLS session, an adversary could replay and swap responses from the database without breaking TLS. Although the SecureDNA implementation does not allow such reconnections, it would be stronger security engineering to avoid the underlying structural weakness. We identify these vulnerabilities and suggest and verify mitigations, including adding strong bindings. Software Version 1.1.0 fixes SCEP with our proposed SCEP+ protocol.
