All bodies  ›  Office of Voting Systems Technology Assessment  ›  Consultant's Source Code Test Report

OVSTA

Consultant's Source Code Test Report

Liberty Vote Democracy Suite 5.19

Office of Voting Systems Technology Assessment · vendors-dominion-ds519-ds519software-report · Testing report · Liberty Vote Systems

Read the report at Liberty Vote Systems ↗

Dominion Democracy Suite 5.19 Voting System Software Test Report for California Secretary of State DOM-23001-CSTR-01 Prepared for: Vendor Name Dominion Voting Systems Vendor System Democracy Suite 5.19 Prepared by: 4720 Independence St. Wheat Ridge, CO 80033 303-422-1566 www.SLICompliance.com Accredited by the Election Assistance Commission (EAC) for Selected Voting System Test Methods or Services Dominion Democracy Suite 5.19 Voting System California Certification Software Test Report v1.0 Copyright © 2025 by SLI ComplianceSM, a Division of Gaming Laboratories International, LLC Revision History Date Release Author Revision Summary 10/30/2024 1.0 B. Roberson Initial Release Disclaimer The information reported herein must not be used by the client to claim product certification, approval, or endorsement by NVLAP, NIST, or any agency of the Federal Government. Trademarks • SLI is a registered trademark of SLI Compliance. • All products and company names are used for identification purposes only and may be trademarks of their respective owners. Copyright © 2024 by SLI ComplianceSM, a Division of Gaming Laboratories International, LLC Page 2 of 8 Document No. DOM-23001-CSTR-01 Dominion Democracy Suite 5.19 Voting System California Certification Software Test Report v1.0 TABLE OF CONTENTS INTRODUCTION ................................................................................................................................. 4 REVIEW SPECIFICATIONS ............................................................................................................... 4 SOURCE CODE REVIEW ...................................................................................................................... 4 REVIEW RESULTS............................................................................................................................. 6 DISCREPANCIES ................................................................................................................................. 7 FINAL REPORT .................................................................................................................................. 8 Page 3 of 8 Document No. DOM-23001-CSTR-01 Dominion Democracy Suite 5.19 Voting System California Certification Software Test Report v1.0 INTRODUCTION This report outlines the test approach SLI Compliance (SLI) followed when performing Software Testing on the Dominion Democracy Suite 5.19 (Dominion DS 5.19) Voting System against the California Voting System Standards (CVSS). The purpose of this document is to provide an understanding of the work SLI conducted. REVIEW SPECIFICATIONS The following are the specifications for source code testing conducted on the Dominion DS 5.19 voting system. Source Code Review The Dominion DS 5.19 voting system includes proprietary software and firmware. The voting system code base was tested to the applicable CVSS requirements. Review of the code included: • Adherence to the applicable standards in sections 5 and 7 of the CVSS. • Adherence to other applicable coding format conventions and standards including best practices for the coding language used. • Analysis of the program logic and branching structure. • Evaluate whether the system is designed in a way that allows meaningful analysis, including: o Whether the architecture and code are amenable to an external review. o Whether code analysis tools can be usefully applied. o Whether the code complexity is at a level that obfuscates its logic. Security considerations reviewed against the code base included: • Search for exposures to commonly exploited vulnerabilities. • Evaluation of the use and correct implementation of cryptography and key management. • Analysis of error and exception handling. • Evaluation of the likelihood of security failures being detected. o Evaluation of whether audit mechanisms are reliable and tamper resistant. o Evaluation of whether data that might be subject to tampering is properly validated and authenticated. • Evaluation of the risk that a user can escalate his or her capabilities beyond those authorized. Page 4 of 8 Document No. DOM-23001-CSTR-01 Dominion Democracy Suite 5.19 Voting System California Certification Software Test Report v1.0 • Evaluation of the design and implementation to ensure that sound, generally accepted engineering practices are followed, checking to verify that code is defensively written against: o Bad data. o Errors in other modules. o Changes in environment. o User errors. o Other adverse conditions. • Evaluation for embedded, exploitable code (such as “Easter eggs”) that can be triggered to affect the system. • Evaluation of the code for dynamic memory access features which would permit the replacement of certificated executable code or control data or insertion of exploitable code or data. • Evaluate the code for use of runtime scripts, instructions, or other control data that can affect the operation of security relevant functions or the integrity of the data. Components and coding languages involved in the voting system applications are shown in Table 1. Table 1 – Dominion DS 5.19 Components Component Language/s Lines of Code Standard ImageCast CPlusPlus_CodingStandard-5.19- C/C++ 475,433 Central (ICC) CA.pdf ImageCast X Java 235,764 dvs_JavaCodingStandards.pdf (ICX) ImageCast CPlusPlus_CodingStandard-5.19- Evolution C/C++ 789584 CA.pdf (ICE) Democracy Suite Election Csharp_AutomatedCodeReview- C# 1,923,782 Management 5.19-CA.pdf System (EMS) ImageCast Csharp_AutomatedCodeReview- Adjudication C# 77,307 5.19-CA.pdf (ADJ) ImageCast CPlusPlus_CodingStandard-5.19- Precinct 2 C/C++ 448,605 CA.pdf (ICP2) Page 5 of 8 Document No. DOM-23001-CSTR-01 Dominion Democracy Suite 5.19 Voting System California Certification Software Test Report v1.0 Source Code Review Tools utilized by SLI included: • Module Finder: an SLI proprietary application used to parse module names from C/C++, Java and VB code and populate the identified module names into the review documents. • CheckMarx: a commercial application used to review code to stated requirements. REVIEW RESULTS Discrepancies Discrepancies are reported such that the California Secretary of State is provided with a basis for evaluating the extent to which the source code meets applicable standards. EMS source code review No source code requirements were found to be an issue within the EMS source code base reviewed; as a result, no discrepancies were written against the code base. ICP2 source code review No source code requirements were found to be an issue within the ICP2 source code base reviewed; as a result, no discrepancies were written against the code base. ICX source code review No source code requirements were found to be an issue within the ICX source code base reviewed; as a result, no discrepancies were written against the code base. ICE source code review No source code requirements were found to be at issue within the ICE source code base reviewed; as a result, no discrepancies were written against the code base. ICC source code review No source code requirements were found to be at issue within the ICC source code base reviewed; as a result, no discrepancies were written against the code base. ADJ source code review Page 6 of 8 Document No. DOM-23001-CSTR-01 Dominion Democracy Suite 5.19 Voting System California Certification Software Test Report v1.0 No source code requirements were found to be at issue within the ADJ source code base reviewed; as a result, no discrepancies were written against the code base. Vulnerabilities For any vulnerabilities discovered, SLI was tasked with identifying the particular standards applicable to each vulnerability. To the extent possible, reported vulnerabilities include an indication of whether the exploitation of the vulnerability would require access by: • Voter: Usually has low knowledge of the voting machine design and configuration. Some may have more advanced knowledge. May carry out attacks designed by others. They have access to the machine(s) for less than an hour. • Poll worker: Usually has low knowledge of the voting machine design and configuration. Some may have more advanced knowledge. May carry out attacks designed by others. They have access to the machine(s) for up to one week, but all physical security has been put into place before the machines are received. • Elections official insider: Wide range of knowledge of the voting machine design and configuration. May have unrestricted access to the machine for long periods of time. Their designated activities include: o Set up and pre-election procedures; o Election operation; o Post-election processing of results; and o Archiving and storage operations. • Vendor insider: Great knowledge of the voting machine design and configuration. They have unlimited access to the machine before it is delivered to the purchaser and, thereafter, may have unrestricted access when performing warranty and maintenance service, and when providing election administration services. SLI will not verify or demonstrate exploitability of the vulnerability, but the report of the vulnerability will identify factors involved in the exploitation. Any vulnerability theories developed by the source code review team members shall, to the extent possible, be referred to the Secretary of State staff. EMS source code vulnerability review No source code vulnerabilities were found to be an issue within the EMS source code base reviewed; as a result, no discrepancies were written against the code base. Page 7 of 8 Document No. DOM-23001-CSTR-01 Dominion Democracy Suite 5.19 Voting System California Certification Software Test Report v1.0 ICP2 source code vulnerability review No source code vulnerabilities were found to be an issue within the ICP2 source code base reviewed; as a result, no discrepancies were written against the code base. ICX source code vulnerability review No source code vulnerabilities were found to be an issue within the ICX source code base reviewed; as a result, no discrepancies were written against the code base. ICE source code vulnerability review No source code vulnerabilities were found to be an issue within the ICC source code base reviewed; as a result, no discrepancies were written against the code base. ADJ source code vulnerability review One improper error handling source code vulnerability was found to be an issue within the ADJ source code base reviewed. The issue was determined to be of low severity and have minimal impact on the operation of the system. It should be noted manual verification found this to only be exploitable by someone with extensive knowledge of the system such as a vendor insider and that the issue can be prevented by ensuring proper use procedures are implemented and followed. FINAL REPORT No discrepancy findings were located within the Dominion DS 5.19 code base. One vulnerability was identified within the Dominion DS 5.19 code base. The vulnerability was examined and categorized as low risk. As directed by the California Secretary of State, this software testing report does not include any recommendation as to whether or not the system should be approved. End of Software Test Report Page 8 of 8 Document No. DOM-23001-CSTR-01