October 22, 2008 CSC 682 Security Analysis of the Diebold AccuVote – TS Voting Machine Feldman, Halderman and Felten Presented by: Ryan Lehan.

Slides:



Advertisements
Similar presentations
Electronic Voting Systems
Advertisements

Systems Software System Software Enables the applications software to interact with the computer and Helps the computer manage its internal and external.
Thank you to IT Training at Indiana University Computer Malware.
/// MELSEC Safety /// QS001CPU /// QS0J61BT12 /// QS0J65BTB2-12DT /// MELSEC Safety /// Mitsubishi Electric - MELSEC Safety - Training Documentation -
4/25/2015 6:17 PM Lecture 2: Voting Machine Study Access Control James Hook CS 591: Introduction to Computer Security.
Electronic Voting: Danger and Opportunity J. Alex Halderman Department of Computer Science Center for Information Technology Policy Princeton University.
IP Office Install in Basic Mode Initial Steps. ©2009. All rights reserved. Overview of Process 1. Read all documents sent from Avatel concerning install.
Analysis of an Electronic Voting System
By Varun Jain. Introduction  Florida 2000 election fiasco, drew conclusion that paper ballots couldn’t be counted  Computerized voting system, DRE (Direct.
Charlie Daniels Arkansas Secretary of State HAVA Compliant Voting Systems Security Considerations General Recommendations to Enhance Security and Integrity.
Data and Applications Security Dr. Bhavani Thuraisingham The University of Texas at Dallas Attacks to Databases October 2014.
Dr. John P. Abraham Professor UTPA 2 – Systems Threats and Risks.
1 J. Alex Halderman Security Failures in Electronic Voting Machines Ariel Feldman Alex Halderman Edward Felten Center for Information Technology Policy.
Security strategy. What is security strategy? How an organisation plans to protect and respond to security attacks on their information technology assets.
ECAM ANNUAL MEETING January , 2012 Updates to SEMS And Election Prep Presented by Madalan Lennep, PMP.
Iron Key and Portable Drive Security Zakary Littlefield.
Midterm Exam. Problem 1: Short Answer Access Control –Subject, object, rights Common Criteria –Government Assurance Standard Originator Controlled Access.
6/26/2015 6:12 PM Lecture 5: Integrity Models James Hook (Some materials from Bishop, copyright 2004) CS 591: Introduction to Computer Security.
Information Networking Security and Assurance Lab National Chung Cheng University 2004/03/031 A Real World Attack: wu-ftp Cao er kai ( 曹爾凱 )
WANs and Routers Routers. Router Description Specialized computer Like a general purpose PC, a router has:  CPU  Memory  System Bus Connecting Internal.
1 Semester 2 Module 2 Introduction to Routers Yuda college of business James Chen
Operating Systems Operating System
Chapter-4 Windows 2000 Professional Win2K Professional provides a very usable interface and was designed for use in the desktop PC. Microsoft server system.
Host and Application Security Lesson 4: The Win32 Boot Process.
Data Security.
Configuring the MagicInfo Pro Display
Configuration Overview The BIOS (basic input/output system) is an important motherboard component. The BIOS has the following functions: Holds and executes.
ISNE101 Dr. Ken Cosh Week 14. This Week  Challenges (still) facing Modern IS  Reliability  Security.
The Basic Input/Output System Unit objectives: Access the BIOS setup utility, change hardware configuration values, and research BIOS updates Explain the.
Controlling Files Richard Newman based on Smith “Elementary Information Security”
Booting. Booting is the process of powering it on and starting the operating system. power on your machine, and in a few minutes your computer will be.
EE515/IS523 Think Like an Adversary Lecture 7 Usability/Software Failures Yongdae Kim.
ITIS 1210 Introduction to Web-Based Information Systems Chapter 45 How Hackers can Cripple the Internet and Attack Your PC How Hackers can Cripple the.
3-Protecting Systems Dr. John P. Abraham Professor UTPA.
Chapter 5 Protecting Your PC from Viruses Prepared by: Khurram N. Shamsi.
System Security Chapter no 16. Computer Security Computer security is concerned with taking care of hardware, Software and data The cost of creating data.
EE515/IS523 Think Like an Adversary Lecture 8 Usability/Software Failures Yongdae Kim.
~Computer Virus~ The things you MUST know Brought to You By Sumanta Majumdar Dept. Of Electrical Engg. 2010,GNIT
Evoting using collaborative clustering Justin Gray Osama Khaleel Joey LaConte Frank Watson.
Computer Viruses and Worms By: Monika Gupta Monika Gupta.
CHAPTER 6 Motherboard and ROM BIOS. Chapter Overview Computer Cases Motherboards ROM BIOS.
Satisfy Your Technical Curiosity Specialists Enterprise Desktop -
Wireless and Mobile Security
VIRUS.
CSC414 “Introduction to UNIX/ Linux” Lecture 2. Schedule 1. Introduction to Unix/ Linux 2. Kernel Structure and Device Drivers. 3. System and Storage.
CSC190 Introduction to Computing Operating Systems and Utility Programs.
Electronic Voting: Danger and Opportunity
W elcome to our Presentation. Presentation Topic Virus.
NETWORK SECURITY Definitions and Preventions Toby Wilson.
Computer virus Done: Aaesha Mohammed ID: H
Information Systems Design and Development Security Risks Computing Science.
Vulnerabilities in Operating Systems Michael Gaydeski COSC December 2008.
Virus Infections By: Lindsay Bowser. Introduction b What is a “virus”? b Brief history of viruses b Different types of infections b How they spread b.
2015 Touch Screen Voting Device Training For AVPM and Non-AVPM TSX Counties Presented by: Derrick Cooper Elections Systems Training Specialist Mississippi.
1 Touch Screen Voting Device Training Election Systems & Software.
Touch Screen Voting Device Training Election Systems & Software Presented by: Bill Lowe.
2012 Touch Screen Voting Device Training The Mississippi Secretary of State’s Office, Elections Division 2012 Prepared and presented by: The Secretary.
NT1110 Computer Structure and Logic Unit 8 (Module 5A) COMPUTER OPERATION AND SECURITY.
Information Security Analytics
Create setup scripts simply and easily.
Secure Software Confidentiality Integrity Data Security Authentication
Computer Software.
Outline What does the OS protect? Authentication for operating systems
Chapter 2: System Structures
TOPIC 6: SYSTEM START-UP AND CONFIGURATION
Outline What does the OS protect? Authentication for operating systems
Introduction to Computers
Bethesda Cybersecurity Club
TPM, UEFI, Trusted Boot, Secure Boot
Presentation transcript:

October 22, 2008 CSC 682 Security Analysis of the Diebold AccuVote – TS Voting Machine Feldman, Halderman and Felten Presented by: Ryan Lehan

Outline Overview of Diebold AccuVote-TS Voting Machine Overview of Diebold AccuVote-TS Voting Machine Vulnerability Points Vulnerability Points Hardware Hardware Software Software Classification of Attacks Classification of Attacks Delivery of Attacks Delivery of Attacks Conclusion Conclusion

Diebold AccuVote-TS Manufactured by Diebold Election Systems Manufactured by Diebold Election Systems Subsidiary of Diebold Subsidiary of Diebold Manufacturer of ATM Manufacturer of ATM Now Premier Election Systems Now Premier Election Systems DRE – Direct Recording Electronic Voting Machine DRE – Direct Recording Electronic Voting Machine Voters use machine to record and cast vote Voters use machine to record and cast vote Machine is used to tally the votes Machine is used to tally the votes Custom Software (Ballot Station) ran on top of Windows CE Custom Software (Ballot Station) ran on top of Windows CE

Vulnerability Points - Hardware – Please turn to page 6 Commonly used lightweight lock to secure access. Commonly used lightweight lock to secure access. EPROM (E) – Replace EPROM w/ malware EPROM (E) – Replace EPROM w/ malware PC Card Slot (S) – Used to replace existing software as well as load in malware PC Card Slot (S) – Used to replace existing software as well as load in malware Flash Ext Slot (G) – Used to load in malware Flash Ext Slot (G) – Used to load in malware Keyboard (R) & Mouse (U) Ports – Used to alter OS configuration Keyboard (R) & Mouse (U) Ports – Used to alter OS configuration Serial Keypad Connector (O) – Open communication port. Serial Keypad Connector (O) – Open communication port. Infrared Transmitter and Receiver (N) – Open communication port. Infrared Transmitter and Receiver (N) – Open communication port.

Vulnerability Points - Software - Boot Process Boot Process Software Updates Software Updates Scripting Scripting Authenticity / Authorization Authenticity / Authorization

Boot Process Bootloader is loaded into memory Bootloader is loaded into memory Location is determined by jumpers on the mainboard Location is determined by jumpers on the mainboard EPROM (E) EPROM (E) Onboard flash memory (C) Onboard flash memory (C) Flash memory module in the “ext flash” slot Flash memory module in the “ext flash” slot Looks at PC Card Slot for a memory card Looks at PC Card Slot for a memory card Looks for specially named files Looks for specially named files fboot.nb0 – Replacement bootloader, copied into onboard flash fboot.nb0 – Replacement bootloader, copied into onboard flash nk.bin – Replacement operating system image file nk.bin – Replacement operating system image file EraseFFX.bsq – Erases file system area of the flash EraseFFX.bsq – Erases file system area of the flash

Boot Process OS (Windows CE) is decompressed, loaded into memory and then started. OS (Windows CE) is decompressed, loaded into memory and then started. OS uses a customized ‘taskman.exe’ OS uses a customized ‘taskman.exe’ Automatically launch ‘BallotStation.exe’ Automatically launch ‘BallotStation.exe’ However, if memory card in PC Card slot is present However, if memory card in PC Card slot is present Contains a file called ‘explorer.glb’, then it will launch Windows Explorer instead of ‘BallotStation.exe’ Contains a file called ‘explorer.glb’, then it will launch Windows Explorer instead of ‘BallotStation.exe’ Searches for script files ending with ‘.ins’ and runs them (with user confirmation) Searches for script files ending with ‘.ins’ and runs them (with user confirmation)

Software Updates Takes place in the boot loading process Takes place in the boot loading process Looks for specially named files on memory card Looks for specially named files on memory card Overwrites existing files in the onboard flash memory Overwrites existing files in the onboard flash memory No confirmation is needed No confirmation is needed Messages are printed on screen only Messages are printed on screen only

Scripts Scripts are loaded via a memory card in the PC Card slot Scripts are loaded via a memory card in the PC Card slot Execution of each script requires user confirmation Execution of each script requires user confirmation Found multiple stack-based buffer overflows in handling of the script files Found multiple stack-based buffer overflows in handling of the script files Suggesting malformed.ins files could by-pass user confirmation. Suggesting malformed.ins files could by-pass user confirmation.

Authenticity / Authorization At no time, during the boot loading or script execution, was there a check to validate the authenticity of any of the files on the memory card. At no time, during the boot loading or script execution, was there a check to validate the authenticity of any of the files on the memory card. At no time was a user, supervisor, or admin asked to login into the machine. At no time was a user, supervisor, or admin asked to login into the machine. Without authentication, authorization to perform updates and script execution is non-existent Without authentication, authorization to perform updates and script execution is non-existent

Classification of Attacks Vote Stealing Vote Stealing Alter votes in favor of a politician, party, or issue. Alter votes in favor of a politician, party, or issue. Does not alter the count of votes (discredits ballot stuffing). Does not alter the count of votes (discredits ballot stuffing). Denial of Service (DoS) Denial of Service (DoS) Prevents access to machine Prevents access to machine To vote by the individual. To vote by the individual. To access the voting results. To access the voting results. Purposeful Election Fraud Purposeful Election Fraud Make it look like the “other guy” did it, by forcing a 100% vote in favor of the “other guy”. Make it look like the “other guy” did it, by forcing a 100% vote in favor of the “other guy”. Creates distrust in the “other guy”. Creates distrust in the “other guy”.

Delivery of Attack EPROM EPROM Attack code is created and placed on an EPROM chip Attack code is created and placed on an EPROM chip Attacker gains access into the voting machine and physically replaces the EPROM chip Attacker gains access into the voting machine and physically replaces the EPROM chip Attacker changes the jumper settings so that the boot loader is loaded from the EPROM chip Attacker changes the jumper settings so that the boot loader is loaded from the EPROM chip

Delivery of Attack Memory Card via PC Card Slot Memory Card via PC Card Slot Initial Delivery Initial Delivery Attack code is placed on to the memory card, including a self replicating virus Attack code is placed on to the memory card, including a self replicating virus Memory Card is inserted into PC card slot prior to booting voting machine Memory Card is inserted into PC card slot prior to booting voting machine A malware boot loader is installed via specially named file: fboot.nb0 A malware boot loader is installed via specially named file: fboot.nb0 The malware boot loader loads the OS in normal fashion as well as loads the attack code The malware boot loader loads the OS in normal fashion as well as loads the attack code

Delivery of Attack Memory Card via PC Card Slot (cont.) Memory Card via PC Card Slot (cont.) Subsequent Delivery Subsequent Delivery When a non-infected memory card is inserted an infected machine, the attack code will copy itself from memory onto the memory card, thus infecting the memory card When a non-infected memory card is inserted an infected machine, the attack code will copy itself from memory onto the memory card, thus infecting the memory card When the infected memory card is removed and placed into a non-infected voting machine, the virus is copied onto the machine, infecting it as well. When the infected memory card is removed and placed into a non-infected voting machine, the virus is copied onto the machine, infecting it as well.

Conclusions Diebold AccuVote – TS electronic voting machine is a single self-contained unit. Diebold AccuVote – TS electronic voting machine is a single self-contained unit. Weak Security Weak Security Single point of failure Single point of failure Has no real time outside redundancies for recording votes and logs Has no real time outside redundancies for recording votes and logs Has multiple vulnerability points in both hardware and software Has multiple vulnerability points in both hardware and software Single self-contained unit eliminates the need for a distributed attack against multiple machines simultaneously Single self-contained unit eliminates the need for a distributed attack against multiple machines simultaneously No way to determine if an attack has taken place No way to determine if an attack has taken place Runs on general-purpose hardware and OS Runs on general-purpose hardware and OS Even though it was not mentioned, probably runs under Administrator privileges Even though it was not mentioned, probably runs under Administrator privileges Chain of Possession leaves the voting machine in an unsecure state. No fault of the machine. Chain of Possession leaves the voting machine in an unsecure state. No fault of the machine.