“In DEF CON, a man in jeans was passing out cards. There was no company logo or name on the card, just this message” (via @mikko)
In the news
Another fake google.com certificate (but allegedly it was just a bizarre mistake):
TURKTRUST Inc. incorrectly created two subsidiary CAs […] The *.EGO.GOV.TR subsidiary CA was then used to issue a fraudulent digital certificate to *.google.com.
Identify high-level information that is generated, transported, or used by each component: e.g., ballot, recorded vote
Security assumptions (confidentiality, integrity, availability) about this information:
data loaded on DTD is the same as that generated at election central
data on DTD cannot be altered
2. Misuse cases
Devise scenarios where some security assumptions is violated and determine the resulting failure
What-if scenarios
Data on DTD can be altered without being detected:
→ invalid ballot information
→ invalid election results
3. Low-level information flow
Model input/output interface of each software and hardware component
Identify data, protocol, data format, and physical carrier
Determine how data is authenticated and validated by each component and how it is protected from eavesdropping, MITM attacks, tampering and replay attacks
Understand how encryption is used and how key material is managed
Components and information flow
4. Threats and exposures
Threat modeling
who are the attackers?
what are their motivations, capabilities, and goals?
Identify actual attack scenarios, combining
threat modeling,
misuse cases (step 2), and
low-level information (step 3)
5. Attacking a component
Vulnerability analysis of a component
Exploit development
Ad hoc tools (debuggers, exploitation frameworks, etc.
long days (and nights) in the lab :-)
6. Compromising the system
Leverage the vulnerabilities identified earlier to compromise the entire system
Evaluate how a compromised component can take advantage of legitimate information flow to take control of other devices
Findings
Autorun vulnerability on election management system at election central → arbitrary code execution
Integer overflow vulnerability in DRE → arbitrary code execution
Voter cards are encrypted but key is stored on the card itself → multiple voting
DRE store in a global variable whether it's in testing mode → detection evasion
many, many more!
An election stealing virus
By leveraging the autorun vulnerability, install a Trojan on the election management system
The Trojan modifies the DTD data to exploit the integer overflow vulnerability and install a malicious firmware on the DRE
The malicious firmware modifies the vote, causes denial of service attacks, and disrupts the elections