Voting activist Bev Harris and a computer scientist say they found more vulnerabilities in an electronic voting system made by Diebold Election Systems, weaknesses that could allow someone to alter votes in the election this November.
Diebold said Harris' claims are without merit and that if anyone did manage to change votes, a series of checks and balances that election officials perform at the end of an election would detect the changes.
Harris demonstrated the vulnerabilities to officials in the California secretary of state's office several weeks ago and will be showing them to federal legislative staff and journalists Wednesday in Washington, D.C. Harris and another activist have filed a lawsuit against Diebold in California, which the state has joined, maintaining that Diebold engaged in aggressive marketing to sell millions of dollars worth of equipment that it knew was insecure. Harris and the activist stand to make millions from the suit if they and the state win their case.
The vulnerabilities involve the Global Election Management System, or GEMS, software that runs on a county's server and tallies votes after they come in from Diebold touch-screen and optical-scan machines in polling places. The GEMS program generates reports of preliminary and final election results that the media and states use to call the winners.
David Jefferson, a computer scientist at Lawrence Livermore National Laboratory and a member of the California secretary of state's voting systems panel, agreed with Diebold that election procedures could help prevent or detect changes in votes, but said that election officials and poll workers do not always follow procedures. Therefore, election observers need to know about the vulnerabilities so they can help reduce the risk that someone could use them to rig an election.
Jefferson added that he doesn't believe that the vulnerabilities show deliberate malice on Diebold's part to aid fraud, as Harris has sometimes contended in public statements. But the vulnerabilities do show incompetence and indicate that Diebold programmers simply don't know how to design a secure system.
Harris said the problem lies in the fact that GEMS creates two tables of data that don't always match. One table consists of rows showing votes for each candidate that were recorded on voting machine memory cards at each precinct. The other table consists of summaries of that precinct data. Officials use the raw precinct data to spot-check accuracy. For example, if all of the machines at a precinct record a total of 620 votes for Arnold Schwarzenegger, then the data in GEMS should show 620 votes for Schwarzenegger for that precinct. The official results that go to the state are based on the vote summaries produced by GEMS.
When election officials run a report on GEMS on election night, it creates the vote summaries from the raw precinct data. Then as absentee and provisional ballots get counted after Election Day and added into GEMS, the raw data numbers increase, while the vote summaries remain the same until the next time officials run a summary report and it regenerates totals from the raw precinct data.
Harris said it's possible to alter the vote summaries while leaving the raw data alone. In doing so, the election results that go to state officials would be manipulated, while the canvas spot check performed on the raw data would show that the GEMS results were accurate. Officials would only know that the summary votes didn't match precinct results if they went back and manually counted results from each individual polling place and compared them to the vote summaries in GEMS.
Diebold said because the two sets of data are coupled in GEMS it would be impossible for someone to change the summaries without changing the precinct data that feeds the summaries. And if they did, the system would flag the change.
But Harris said it's possible to change the voting summaries without using GEMS by writing a script in Visual Basic -- a simple, common programming language for Windows-based machines -- that tricks the system into thinking the votes haven't been changed. GEMS runs on the Windows operating system.
The trick was uncovered by Herbert Thompson, director of security technology at Security Innovation and a teacher of computer security at the Florida Institute of Technology. Thompson has authored several nonfiction books on computer security and co-authored a new novel about hacking electronic voting systems called The Mezonic Agenda: Hacking the Presidency.
After Harris met Thompson at the Defcon hacker conference this year, she asked him to examine the GEMS program. He found he could write a five-line script in the Notepad text editor that would change the vote summaries in GEMS without changing the raw precinct data. The auditing log in GEMS wouldn't record the change because it only tracks changes that occur within GEMS, not changes that occur on the computer outside of GEMS.
After writing the script, Thompson saved it as a Visual Basic file (.vbs) and double-clicked it to execute it.
The command happens in the background where no one can see it. To verify that the changes occurred, Thompson could write another script to display the vote data in a message box after the change. Once the scripts finished their work, they would go into the Recycle Bin, where Thompson could delete them.
When Harris demonstrated the vulnerability to officials in California, she opened the GEMS program to show that the votes changed as the script commanded them to.
"You have to know in advance what you want to change," Thompson said, "but it's pretty easy to write a script to find the data that you want to change. If you want Stan Smith to have more votes than he currently has, you write a line of your script that says select everything in the table where candidate equals Stan Smith, and increment the votes. Then you delete the votes from another candidate by the same amount."
Thompson acknowledged that the hack would take an insider with knowledge of the voting system and election procedures and access to GEMS. But this could include technical people working for a county or Diebold employees who sometimes assist technically challenged election officials on election night. It's unlikely that unsavvy election officials or observers would notice or understand the significance of someone writing five lines of code in Notepad.
Thompson was pretty stunned to find that some of the same vulnerabilities that appear in the Diebold system appear in the fictional voting system he and his co-author created in their recent novel.
"When we wrote the book, we thought the election system it described was a bit far-fetched," Thompson said. "We thought it's impossible that any real voting system would have these problems. Then we saw the GEMS software, and it had four of the vulnerabilities that we wrote about in the book."
Thompson said Diebold could easily have designed the system to use cryptographic hashes to detect if vote summaries changed when they weren't supposed to change. But he said the company probably never imagined a scenario in which someone would change the vote data through Windows, bypassing the audit logs.
There is one way in which changing vote totals in GEMS might not work. If someone changed the summary totals before all precinct votes came in, the altered summary votes would be written over with the new precinct data once election officials ran another summary report. But Harris said that "a hidden program for vote manipulation" exists in GEMS that could allow "any teenager or terrorist with a laptop" or "anyone with an agenda or a profit motive" to trick the system into thinking the votes haven't changed by using what Harris calls a "two-digit code" or trigger in GEMS.
Thompson said the "hidden program" is more of a feature in GEMS that is put there for a good reason, but is easily abused. GEMS has a method for flagging whether vote data is old or up-to-date by marking it with a 0 or a -1. Thompson said it's likely that when election officials run a new summary report, the 0 and -1 tell the program which data is old and which is new or updated. But someone could trick the system into thinking that old data is updated data by switching the numbers. Harris was able to do this easily in demonstrations.
When asked to comment on this, Diebold sent Wired News an excerpt from a seven-page rebuttal that it distributed to election officials to counter Harris' claims. The excerpt said that the flagging feature is "typically used (for example) to reset any test results that were uploaded as part of any pre-election testing." No further explanation of this feature was forthcoming.
But speaking generally on the vulnerabilities Harris mentions, Diebold spokesman David Bear said by phone that no one would risk manipulating votes in an election because it's against the law and carries a heavy penalty. He also said that election "policies and procedures dictate that no (single) person has access or is in control of a (voting) system," so it would be impossible for anyone to change votes on a machine without others noticing it. And even if someone managed to change the votes, auditing procedures would detect it.
Diebold spokesman Mark Radke said that after an election, counties are supposed to go back to the memory cards taken from voting machines and manually add vote totals stored on the cards as well as vote totals on a paper printout that poll workers take from each machine at the close of the polls. Officials compare these totals to the GEMS summary totals and if there is a discrepancy, Radke said, the totals from the memory cards take precedence over the GEMS totals.
Jefferson, the Lawrence Livermore computer scientist, agreed that election procedures usually indicate that there should not be one person operating the counting software. He also agreed with Bear that officials could catch discrepancies in vote totals if they went back and manually added up the results from every individual polling place and compared the totals with the tallies in the summary report. But Jefferson said that election officials and poll workers don't always follow procedures. In the California March primary, he pointed out, several counties refused to follow procedures that were requested by the secretary of state's office and others failed to follow procedures that are mandated under California election law.
Rather than creating a system that relies on the "perfect execution of (poll worker) procedures," Jefferson said, Diebold should have designed the system to better prevent fraud.
"You don't want to make up for poor design by adding more burden to beleaguered poll workers and election officials who don't understand the reasons for all of the rules that they have to obey and (are therefore) likely to cut corners," Jefferson said.
As for why Diebold would have designed such a poor system, Jefferson thinks the company simply didn't know how to do it any better.
"There are a lot of reasons why you might want parallel tables of vote totals," Jefferson said. "But there are better designs that avoid (these vulnerabilities) entirely. If you are not a world-class designer, if you're making it up as you go along and not deeply educated in data management, this is the kind of design you might come up with.
"I think the designers of the Diebold system never seriously understood what it would take to prevent vote manipulation by insiders," Jefferson said. "I consider that to be inexcusable."
By Erica Werner
The Associated Press
Wednesday, September 22, 2004; 11:07 PM
Activists and computer programmers Wednesday demonstrated what they said were flaws with electronic voting machines that could allow hackers to change vote outcomes Nov. 2. They recommended new procedures for states and counties to put in place before Election Day.
Voting machine manufacturers, however, denied their machines could be tampered with and dismissed the demonstration as scare tactics. The head of the U.S. Election Assistance Commission said at least some of the proposed changes were unrealistic.
Bev Harris, an outspoken critic of electronic voting and author of "Black Box Voting: Ballot Tampering in the 21st Century," led the National Press Club demonstration that included a film of a chimpanzee hacking an election.
Using a laptop computer, she demonstrated what she said were easy hacks to software by Ohio-based Diebold Inc., which is used in central tabulators that will count votes Nov. 2 in some 1,000 counties. Harris contended that hackers could easily change vote totals by entering the database through a backdoor method. She also claimed hackers could enter the standard way after obtaining passwords, then manipulate vote totals and cover their tracks.
"It's astonishingly easy to get in," she said. "There's no security whatsoever."
Programmer Jeremiah Akin, of Riverside, Calif., showed what he said was a flaw in software by Oakland, Calif.-based Sequoia Voting Systems Inc., that would allow a hacker to switch votes by people voting in Spanish or another foreign language.
Spokesmen for Diebold and Sequoia strongly denied the claims.
"What you witnessed was a staged event to convey something that isn't possible," said Diebold spokesman David Bear. "The fact of the matter is touchscreens have been around for many, many years, they've conducted hundreds of elections, and there's never been a single factual problem with touchscreens."
"It's so amazing to see people use fear tactics this close to a major election on issues that are so remote and unlikely," said Sequoia spokesman Alfie Charles. "They still haven't explained to people how these attackers would be able to walk into a county voting system, get the password and start reprogramming elections."
Harris offered several suggestions for eliminating potential problems with electronic systems.
Up to 50 million voters will use touchscreen machines in November; even more will have their votes tabulated electronically by central vote tabulators.
Harris said that poll workers should print out vote totals on the precinct level. Those could then be checked against the county total. She also recommended that jurisdictions with touchscreen machines allow voters to vote by absentee ballot on Election Day, and that precincts not relay vote totals to counties via modems, which could be vulnerable to hackers.
Another activist at the event, National Ballot Integrity Project co-founder Joan Krawitz, said that all races for federal offices should be done on paper ballots Nov. 2 - even if that means voters going back to the most primitive system of checking off someone's name on a slip of paper.
DeForest B. Soaries, chairman of the new U.S. Election Assistance Commission, said the idea of all federal races being conducted on paper was "a farce," and that it was irresponsible to recommend absentee ballots nationwide given that each state has their own system.
But, he said, "No one in their right mind would disagree that there are vulnerabilities."
His commission has recommended a list of security procedures, and he said there will be improvements Nov. 2 over past elections, including election administrators working harder to keep track of who has access to voting equipment.