New User Special Price Expires in

Let's log you in.

Sign in with Facebook


Don't have a StudySoup account? Create one here!


Create a StudySoup account

Be part of our community, it's free to join!

Sign up with Facebook


Create your account
By creating an account you agree to StudySoup's terms and conditions and privacy policy

Already have a StudySoup account? Login here


by: Cleora Stiedemann


Marketplace > Rice University > ComputerScienence > COMP 527 > COMPUTER SYSTEMS SECURITY
Cleora Stiedemann
Rice University
GPA 3.72


Almost Ready


These notes were just uploaded, and will be ready to view shortly.

Purchase these notes here, or revisit this page.

Either way, we'll remind you when they're ready :)

Preview These Notes for FREE

Get a free preview of these Notes, just enter your email below.

Unlock Preview
Unlock Preview

Preview these materials now for free

Why put in your email? Get access to more of this material and other relevant free materials for your school

View Preview

About this Document

Class Notes
25 ?




Popular in Course

Popular in ComputerScienence

This 3 page Class Notes was uploaded by Cleora Stiedemann on Monday October 19, 2015. The Class Notes belongs to COMP 527 at Rice University taught by Staff in Fall. Since its upload, it has received 10 views. For similar materials see /class/224966/comp-527-rice-university in ComputerScienence at Rice University.

Similar to COMP 527 at Rice University




Report this Material


What is Karma?


Karma is the currency of StudySoup.

You can buy or earn more Karma at anytime and redeem it for class notes, study guides, flashcards, and more!

Date Created: 10/19/15
Hack AVote Part 1 Carey Show amp Derek Sessions Motivation Our changes are partyagnostic and thus we can sell our security flaws to whomever we choose or even sell it to everyone who is interested The exploits that we have added allow for ballotbox stuffing DOS attacks on election machines and can remove voter anonymity Thus any party can use these hacks to affect an election All the hacks do however require an operative to implement them The operatives have little work to do and should be able to accomplish their tasks with little to no risk We intend to sell our security flaws using craigslist The requirement to have an operative present to affect the election was a conscious decision We felt that automatic hacks would appear obvious both within the code and from blackbox testing making it not a feasible solution to our task as we would rather be at a beach on a tropical island than a jail We also avoided the addition of if statements and its ilk as we felt that those would be the most obvious hacks and would be flagged for scrutiny In addition to our exploits we have added additional trycatch blocks to the program that do not report error and have removed error reporting from some trycatch blocks to help create confusion and potentially cover our tracks We feel that these are not worth talking about further since they are minor changes and poll workers are perfect so it should never come up Implementation Password hash security aw Effect The hash of the password entered is checked against the properties file which contains the correct hash However there is nothing stopping the properties file from being modified by a user with malicious intent This effectively changes the password and would allow unauthorized users to take control of the machine or remove the hash to prevent election works ending the election and retrieving the results Details We made the system seem more secure by removing the password from plaintext and also tweaked it to have the password in a properties file such that the vendor could change the password without rebuilding the program a nice software engineering feature However we specifically did not protect the properties file from being changed by an unauthorized party Anyone who knows our hash function which turns out to be Java s StringhashCode could replace the PWD line in the file with the hash of a password they know and gain access to the machine The implementation is straightforward and not meant to be hidden The goal here was to look like we re improving the security while leaving a specific backdoor that we know how to exploit The only way that the properties file would be able to be properly protected is if there was some sort of TPM chip or the file was signed by the vendor Magic Pin Effect The PIN 6231 can always be used to cast a ballot This would allow a malicious user to stuff the ballot box provided he has the ability to reconcile the extra votes with the signin logs If not the extra votes would at least cause confusion Even if the user is unable to reconcile the signin logs it would cast doubt on the election This could be teamed with one of the exploits that allows an operative to end the election early and overwrite all or some of the previously cast results Details We hid the implementation in the niFile class though it actually affects how the Console app runs In niFile s static initializer which is hidden to the right of the file Console s vector which contains an array of valid pins is overridden by a subclass which always returns true on contains 6231 The magic PIN is not actually contained in the list so it s never removed and does not show on the Console GUI We didn t change the BallotControl side at all it still asks over the network if the PIN is okay but our hack causes the Console to say it is when 6231 is entered To allow this to function properly we added a reference to niFile to ConsoleGUI so that niFile would be statically loaded and thus initialize the vector to our overloaded anonymous vector This flaw would allow a voter to vote as normal and then enter the magic PIN and vote again as many times as they wanted Premature election finish Effect Any voter can end an election at will by pressing AltC If the election is restarted by a poll worker on a machine it will begin to overwrite previously cast ballots helping to destroy the paper trail This will create doubt in the legitimacy of an election and can be also used to help cover up use of some of the other available exploits Details A Button was added to the right panel of the main form under the American flag and HackAVote mark The button is sized to be 00 and has is mnemonically bound to c These operations are accomplished within the BallotGUI constructor hidden amongst the initialization ofa large number of GUI components The action listener used is shared between it and the quotEnd Electionquot button through a static field in the BallotControl class This is done to avoid adding an anonymous inner class definition in BallotGUI which contains very few pieces of code that match that style of formatting Upon being called via AltC it executes its attached action listener and ends the election If the machine is restarted the current results will be cleared Nonrandomized vote order Effect The ballot output is not randomized and is instead written out in reverse order Details The call to shuffle the ballot collection was removed from inside of BallotControlendElection Since ballots are added using the Collectionadd method they will appear in reverse order allowing someone with access to the ballot list and a system to watch the order voters put in their ballots would be able to determine exactly who cast which ballot breaking the rule of anonymity of voting If someone were to take a brief look at the output after a test election the effect of this exploit might not be immediately obvious The ballots are in reverse order and thus may appear to be random especially on very small sample sizes where reverse order would be a reasonable outcome of randomization


Buy Material

Are you sure you want to buy this material for

25 Karma

Buy Material

BOOM! Enjoy Your Free Notes!

We've added these Notes to your profile, click here to view them now.


You're already Subscribed!

Looks like you've already subscribed to StudySoup, you won't need to purchase another subscription to get this material. To access this material simply click 'View Full Document'

Why people love StudySoup

Jim McGreen Ohio University

"Knowing I can count on the Elite Notetaker in my class allows me to focus on what the professor is saying instead of just scribbling notes the whole time and falling behind."

Allison Fischer University of Alabama

"I signed up to be an Elite Notetaker with 2 of my sorority sisters this semester. We just posted our notes weekly and were each making over $600 per month. I LOVE StudySoup!"

Steve Martinelli UC Los Angeles

"There's no way I would have passed my Organic Chemistry class this semester without the notes and study guides I got from StudySoup."


"Their 'Elite Notetakers' are making over $1,200/month in sales by creating high quality content that helps their classmates in a time of need."

Become an Elite Notetaker and start selling your notes online!

Refund Policy


All subscriptions to StudySoup are paid in full at the time of subscribing. To change your credit card information or to cancel your subscription, go to "Edit Settings". All credit card information will be available there. If you should decide to cancel your subscription, it will continue to be valid until the next payment period, as all payments for the current period were made in advance. For special circumstances, please email


StudySoup has more than 1 million course-specific study resources to help students study smarter. If you’re having trouble finding what you’re looking for, our customer support team can help you find what you need! Feel free to contact them here:

Recurring Subscriptions: If you have canceled your recurring subscription on the day of renewal and have not downloaded any documents, you may request a refund by submitting an email to

Satisfaction Guarantee: If you’re not satisfied with your subscription, you can contact us for further help. Contact must be made within 3 business days of your subscription purchase and your refund request will be subject for review.

Please Note: Refunds can never be provided more than 30 days after the initial purchase date regardless of your activity on the site.