Open pleasework-sh opened 3 months ago
This makes me question if you can trust who submitted the vote potentially. Just thinking out loud.
Check out https://github.com/siv-org/siv/issues/69 !
Ah, I didn't look far back enough. I'll check past issues before submitting. Thanks!
Thanks again for participating! This submission earned $22.68 from SIV and $67.14 from the Public Vote, for a total of $89.82.
Here's what we noted in our evaluation:
Issue to track getting paid: https://github.com/siv-org/hack.siv.org/issues/5
Testing was done in the mock election live during DEFCON32.
If you intercept your POST request to the /api/submit-vote endpoint after you've made your selections, you can just resend the same ciphertexts.
On the election status page, they show up as different votes, but the same ciphertexts. They also end up having the same verification numbers.
See the below for the sample POST request.
Sample request in burp suite repeater that you can use to resend POST requests.
See the votes that show up with the same ciphertexts here.
After you enter your information in the /auth page multiple times, your verification number ends up the same even though you technically voted multiple times and entered your information to the /auth page with different ID's.
Maybe additional device verification checks would be in order? (EX - looking at the request IP - if the request keeps coming from the same IP, same browser - don't allow that to be submitted.)