Inloggegevens leverancier stonden in verkiezingssoftware

De inloggegevens van de leverancier van de Nederlandse verkiezingssoftware OSV2020 stonden in een build. Dat ontdekte een hacker van Zerocopter. Het lek zal bij de verkiezingen niet meer in de software zitten.

Hacker Maarten Boone zegt dat hij de inloggegevens aantrof bij het decompileren van de installer. Hij zocht gelijk contact met de Kiesraad, die verantwoordelijk is voor de software. Die vroeg eerst om meer details om vervolgens een fix voor het lek te laten ontwikkelen.

Bij de verkiezingen zullen de inloggegevens niet meer in de build zitten. De Kiesraad zegt dat kwaadwillenden met de gegevens de integriteit van de software hadden kunnen ondermijnen. Vermoedelijk hadden criminelen valse versies van de software kunnen verspreiden. OSV2020 is geen leidende software bij de verkiezingen, omdat het tellen en verwerken van stemmen handmatig gebeurt.

OSV 2020

Door Arnoud Wokke

Redacteur Tweakers

12-09-2023 • 19:07

84

Submitter: Bakkertje_01

Reacties (84)

84
81
39
3
0
27
Wijzig sortering
Wat ik niet helemaal snap: dit gaat om de optelsoftware. So what?

Iedere gemeente telt apart de stemmen. Als ik de wet een beetje snap, dan is er voor elk stembureau in principe een "proces-verbaal" en een uitslag. Die wordt getekend door de stembureauleden

Hier kun je bvb. van Gemeente Utrecht het "tellingsbestand" vinden van de Provinicale Staten: https://data.utrecht.nl/d...g-provinciale-staten-2023

Ja die is al door OSV geweest, maar het enige dat je hoeft te doen voor een audit, is de procesverbalen vergelijken met de tellingbestanden.

Sterker nog: als in plaats van het door "optelsoftware" te gooien, de data gewoon direct wordt gepubliceerd en vervolgens die gepubliceerde uitslag gecontroleerd en akkoord word verklaar door een stembureau, dan kan iedereen die dat wil *zelf* de tellingen en optellingen controleren.

Sterker nog 2: het staat een ieder vrij om naar het stembureau te gaan en het tellen bij te wonen! Doe dit lekker crowd-sourced op een stevige schaal en je hebt een hele goeie publieke controle op het optelproces.

Natuurlijk zal er ergens alsnog een discrepantie te vinden zijn, vanwege een telfout hier, een dataregistratiefout daar, maar grootschalige verschillen (meer dan 1% van de stemmen) zou zelfs dan niet mogen optreden, of tot verder onderzoek moeten leiden.

Wat dat betreft erger ik me wel een beetje aan mensen die wel van de zijlijn veel roepen over de integriteit van stemmen en het stemproces, maar vervolgens aan de zijkant blijven staan bij oplossingen.

In Nederland worden de stembureaus bemenst door gewone burgers. Het stemproces is bewust transparant en controleerbaar. Vind je democratie echt belangrijk? Doe mee! Help mee!
Het is gewoon voorbereiding om de papieren weer in de ban te doen.

Als na een aantal keer geen lekker (nog) gevonden zijn staan alle vele politici vooraan om te roepen dat het goedkoper en sneller kan met software. Zoals eigenlijk eerder ook al. En dan draait het systeem om.

En uiteindelijk ontdekt men toch een fout en beginnen we weer van voor af aan.
Laten we vooral niet vergeten dat kosten niet het belangrijkste aspect mogen zijn bij iets belangrijks als verkiezingen.

Zodra je volledig digitaal gaat stemmen is er geen enkele vorm van controle meer mogelijk en dat zou in een goed werkende democratie al genoeg reden moeten zijn om er niet eens aan te beginnen.
Softwareontwikkeling is al niet goedkoop, hardware ontwikkeling al helemaal niet. Combineer dat met overheid en een best belangrijk proces en het wordt nog duurder. Lijkt me lastig goedkoper te krijgen dan een proces met papier.
Nou, 1x ontwikkelen en altijd gebruiken of voor altijd tonnen papier drukken, verrijden én door mensen laten tellen.

Ik denk dat die 45 miljoen dan goedkoper is ja. Ik ben het niet mee eens dat het primair wordt, maar het is uiteindelijk wel goedkoper.
Grootste probleem met een digitaal systeem is dat je dan super kwetsbaar bent voor fraude. 1 persoon kan dan de hele nederlandse verkiezingen ondermijnen. Ik zou het lekker bij fysiek tellen houden.
Er is geen bezwaar tegen een digitaal systeem dat ook handmatig gecontroleerd kan worden.
Waar het volgens mij ontbreekt is dat een veelvoud aan deskundigen proactief maar ook achteraf hun zegen moeten geven.
Zolang één partij productie en controle (audit) in handen heeft, zullen er problemen blijven.

Er is geen technische belemmering om meervoudige cryptografische ondertekening van hardware, software resultaten en controles te vereisen en gelijktijdig een Paper trail te onderhouden "voor het geval dat"
Eén keer investeren en ontwikkelen en voor altijd gebruiken is een utopie. Uiteindelijk zul je toch de software moeten onderhouden, herschrijven als er aan het onderliggende systeem (waar draait de software op, de Linux-kernel?) iets verandert en grondig testen als de hardware (dan wel onderdelen, dan wel geheel nieuwe computers als ze een keer écht op zijn), etc. En de overheid kennende zal er in de toekomst wel weer van alles moeten worden aangepast.

Voor welk prijskaartje dat kan, is de vraag. Misschien is ook dát op lange termijn wel goedkoper dan papier, maar in elk geval is het niet zo simpel als dat je één keer investeert, ontwikkelt en dat is het dan.
Ik zit al heel lang tijdens verkiezingen op een stembureau, dus doe al mee ;).
Maar na een lange dag al dat getel is wel een crime hoor. Dagen van 20 uur zijn het ongeveer. Zeker als je ook voorzitter bent. De meesten houden dat niet goed vol valt me altijd op. Ik kan er gelukkig goed tegen. Maar met die 'dubbele' verkiezingen met provinciale staten en waterschappen erbij is het helemaal een feest.
Het tellen na zo'n lange dag is inderdaad pittig.

Prettig in Utrecht is dat nu de telling gesplitst is. Op het stembureau zelf doe je alleen de "sneltelling", oftewel, je telt alleen per partij. De splitsing naar individuele kandidaten wordt vervolgens tijdens de centrale telling in de Jaarbeurs gedaan.

Ook fijn: voor de telling komen er speciaal extra "tellers" op de lokatie. Die zijn een stuk frisser dan de stembureauleden die de hele dag al in de weer zijn geweest.
Lijkt me echt leuk om een keer te doen, heb me voor het eerst aangemeld om lid te worden bij ons stembureau in Renkum.
Ga je leuke dag van maken, zeker als je leuk team hebt. Succes.
Logingegevens in de code van de installer laten slingeren is gewoon not done.
Zeker niet met software die daadwerkelijk impact kan hebben op iets.

"Jammer dat de stagiaire een foutje gemaakt heeft"
Dat is leuk als je een website aan het maken bent voor een schoolproject.

Waarom heeft niemand dit nagelopen?
ongeacht wat voor software, dit soort zaken moeten concreet nagelopen zijn door professionals.
"so what"? Om een hoop onrust te voorkomen wellicht. Exit polls worden gepubliceert voor de hertelling dacht ik. Als daar een hoop verschil met de uiteindelijke uitslag in zit krijg je ongetwijfelt samenzweringsprofeten die hier voer uit halen om vuutjes op te stoken.
De oplossing is simpel: de uitslagen niet meer verwerken met software die niet aan de hoogste standaarden voldoet en volgens de NOS niet eens goed is getest.
Je kunt nog zo je best doen met tellen, als de volgende stap niet 100% veilig is dan is de uitslag onbetrouwbaar en betwistbaar.
Al jaren horen wij politici roepen dat zij bang zijn voor buitenlandse invloeden, en dan zou dit niet belangrijk zijn?

Het beveiligingsprobleem is waarschijnlijk nooit opgemerkt omdat bij eerdere beveiligingstests de installatiesoftware nooit is onderzocht.
https://nos.nl/artikel/24...ingen-minder-dan-uur-werk
Beetje gekke reactie, welk punt val je over?
Anoniem: 1961754 12 september 2023 19:12
met zulke fouten is het volgens mij een makkelijke keuze: niet gebruiken.
.... deze leverancier ook nooit meer gebruiken, want dit soort fouten zijn vrij amateuristisch...is ook de schuld van het aanbesteding systeem...
Veel succes in 2023 als je elke leverancier van software die eens een domme fout gemaakt heeft gaat bannen.
Je vindt nog wel ergens een 8 bit CPU in een DIP package die je op een manueel bedraad of getekend bordje met wat moeite nog wel zelf direct in machinecode kan programmeren, dan kan je misschien nog Pong spelen.
Er is geen excuus. Dit soort domme fouten zijn gewoon te voorkomen als je je devops goed inregeld.

Bv met azure

https://learn.microsoft.c...canning?view=azure-devops
Zolang het werk uitgevoerd wordt door mensen, zullen domme fouten *altijd* voorkomen.
There is no such thing as onfeilbaar
Ja en daarom gewoon fatsoenlijke devops om dat tegen te gaan. Dit zijn amateuristische fouten.
azure devops kun je net zo goed flink verkloten hoor...
Ja dat kan, maar dan kunnen we door blijven gaan. Het feit is dat je voor dit soort amateuristische fouten technische gatekeepers hebt. Tegen de tijd sta je prod pipeline rubbed behoort deze stal gewoon ingebakken te zijn.
Maar daarvoor maakt het niet uit of het je pipeline in azure of on-prem is... dat was mijn main point. Zowel on-prem als in azure wordt je niet automagisch behoed voor fuck-ups.

Dat ze in de build pipeline van OSV een absolute beginnersfout hadden zitten zijn we het zeker over eens.
OSV2020 is geen leidende software bij de verkiezingen, omdat het tellen en verwerken van stemmen handmatig gebeurt.
Klopt, het tellen gaat handmatig, maar vervolgens worden deze getallen doorgegeven aan het gemeentehuis. Volgens mij gebeurde dat de keren dat ik er bij was digitaal vanaf de smartphone van de voorzitter van het stembureau. Dit ivm de voorlopige uitslag.
Wel schokkend dat dit soort basale fouten worden gemaakt. Voorspelt weinig goeds voor de rest van de software.
Het pas wel weer 'mooi' in de lijn wat we de afgelopen jaren hebben gezien. Als het gaat om overheid en software. Dat lijkt een stug en vooral erg prijzig huwelijk te zijn.

Ben wel benieuwd of dit echt zo dramatisch is, of dat het vergeleken met de commerciële sector niet heel veel schokkender is. Uiteraard moet er goed omgegaan worden met belastinggeld maar de overheid ligt daardoor ook onder een vergrootglas natuurlijk. Ook wordt het niet echt makkelijk gemaakt door dingen als de privacywet en een gigantisch scala aan verschillende systemen.
In de commerciële sector is dit net zo, alleen daar hoeft geen rapport van naar buiten gebracht te worden voor elke vloek en scheet.
Het verschil zit hem in het feit dat bij een commercieel bedrijf enkel het bedrijf zelf en mogelijke klanten geraakt worden. In zaken als dit wordt letterlijk het hele land geraakt (bij misbruik). Dat is nogal een groot verschil.
Dat maakt geen verschil of de stelling van Naaitsab wel of niet klopt, dat gaat alleen over eventuele gevolgen ervan.

Mijn ervaring is in ieder geval ook anders en het is het niet minder erg is in de commerciele sector.
Ah, dus bedrijven als LinkedIn en Twitter hebben amper klanten en dus is er helemaal geen impact. Dat is inderdaad een groot verschil. ;)
Als er daar iets mis gaat worden wellicht veel mensen geraakt, maar het ondermijnt de democratie niet. De democratie ondermijnen door kwetsbaarheden te misbruiken vind ik inderdaad wel van een hele andere orde.
Daar heb je helemaal gelijk in!
Bij dit soort dramatische simplistische fouten is het duidelijk dat de software is gemaakt door een ondeskundige onervaren programmeur, en dat het software bedrijf dit heeft gereleased zonder dat een interne deskundige de code heeft gereviewed. Zo'n bewust nalatige praktijk levert imagoschade voor de gebruiker. De overheid moet zo'n product weigeren te betalen, en de komende paar jaar niets meer bij dat software bedrijf kopen. Wordt er gepubliceerd welk software bedrijf dit is?
Tot april was dit Paragon. Geen idee wie het, slappe, stokje van ze heeft overgenomen…
Dat is nu juist het punt. De rest van de software wordt met regelmaat aan een pentest onderworpen. Daar is meerder malen aangetoond dat zulke fouten er niet in zitten. Deze fout zat in de installatie software en was nog niet getest. Dat wordt vanaf nu wel gedaan.

En dan nog waren er andere waarborgen, waaronder het checken van de integriteit van de software voordat deze werd geïnstalleerd.

Nee, zeker niet goed en basale fout, maar je kunt niet extrapoleren naar: dan zal alles wel slecht zijn.

[Reactie gewijzigd door BytePhantomX op 22 juli 2024 14:19]

De OSV cd’s hebben een hash.
En deze hash moet vergeleken worden en overeen komen met een hash die via een aparte brief binnen is gekomen weet ik uit ervaring :+

Uiteraard is het zeer onprofessioneel en slordig dat de gegevens die in de installer staan, dat is echt not done.

Er zijn denk ik genoeg lui die de software installeren zonder de hash te checken. (Wat dan weer de verantwoordelijkheid is van de medewerker die de installatie uitvoert en niet de leverancier van de software)
Formeel wel, maar ik vind het wel de verantwoordelijkheid van de leverancier om een fool-proof systeem te bouwen. Of op z'n minst een systeem dat gebruiksvriendelijk is, ook voor stemkantoormedewerkers die minder IT-vaardig zijn.
De hack kan natuurlijk ook al in die hash zitten, bijvoorbeeld doordat de compiler besmet is. Bugs en andere beveiligingsproblemen of niet expliciet zo bedoelt gedrag door de opdrachtgever vang je er sowieso niet mee.
CD's? Wie heeft het over CD's? De Kiesraad heeft het zelf over een download die er wordt aangeboden.
https://www.avgregisterri...trekking-software-osv2020
Afgelopen verkiezingen in maart waren het nog steeds CD's die werden geleverd in een verzegelde CD doosjes in een verzegelde enveloppe.
maar dan ben je als dev bedrijf toch al fout bezig, je dient elke build en check in door een repo scanner te halen die op zijn minst een credscan uitvoert.
Je dient als eerste je medewerkers met harde hand op te voeden dat ze er niet eens aan denken dit soort code te schrijven. Wat niet in de code zit kan ook niet fout gaan. Begint met medewerkers die blijkbaar de basisprincipes niet beheersen. En dat is wel degelijk zorgelijk als je aan dit soort software mag werken.
Als je het blog leest dan zie je dat de fout in de configuratie van de tool ziet die de installer maakt van de software. Het is dus geen eigen code waar de fout in zit, maar een configuratiefout in het gebruik van de installer. Vraag me dus erg af of dit met een credscan was gevonden.
"dat wordt vanaf nu wel gedaan"

Maar het toont juist aan dat de controle niet 100% is en nooit 100% zal zijn. Daarom zal een software oplossing nooit gaan werken, er zullen altijd nieuwe methoden gevonden worden om maatregelen te omzeilen. Dat je nu een extra controle toevoegt, maakt het niet automatisch goed. Het maakt het ietsje beter, maar zullen altijd onbekende factoren aanwezig blijven.

Tenzij de software altijd een hardware matige kopie afdrukt en deze achteraf gescant en gecontroleerd wordt met andere software, zal software nooit een vervanging kunnen bieden. Het stemgeheim is simpelweg absoluut.
Paar posts hieronder knvb die toch ransom betaald.. Betekent dat je anno vandaag nog steeds geen basis backup system hebt ingericht. Bedrijven hebben hun it zaken gewoon niet op orde. Pas janken als het misgaat
Ze hadden zeker wel een backup systeem. Ze hebben betaald om publicatie van contracten & paspoorten te voorkomen.
ik denk dat de overheid heel weinig eigen ontwikkelaars heeft. Wordt voornamelijk uitbesteed aan bedrijven die project na project lekker goedkoop binnenslepen en vervolgens uiteindelijk langer duren en meer kosten dan begroot en geraamd. Snel en makkelijk geld verdienen aan de overheid is een kunst op zich.
Ze hebben inderdaad weinig ontwikkelaars in dienst, maar de regie van de projecten wordt tegenwoordig wel steeds vaker gevoerd door interne mensen.

Een jaar of 5 geleden kwam ik nog situaties tegen dat er simpelweg zakken met geld werden gedumpt bij Capgemini managers. Die dan weer werden afgerekend op het aantal mensen wat ze geplaatst hadden. En niet op de mate van succes van het project. Tegenwoordig zie ik dat de inhuur in eigen regie wordt gehouden en dat de architecten in dienst zijn van de overheid.

Daarnaast moet ik zeggen dat ook het niveau bij Capgemini gestegen is. Er is nog steeds een tekort aan mensen tussen de 30 en 45 jaar oud, maar ik zie minder van die vastgeroeste vijftig plussers meer, ook omdat de inhuur meer in eigen beheer is genomen ipv overgelaten aan Cap.

Al met al ben ik dus redelijk positief gestemd over de ontwikkelingen van de softwareprojecten bij de overheid.
Graag enig bewijs hiervoor
Op een andere Nederlandse website wordt uitgebreid verteld over ICT en overheid vanuit een insiders perspectief (met naam en toenaam):

https://www.geenstijl.nl/search/?keyword=feuilleton
https://www.geenstijl.nl/...van-een-faalfabriek/#more

Op basis van dat feuilleton lijkt het niet te liggen aan de kwaliteiten en competenties van de ontwikkelaars, maar eerder aan interne politiek, machtsstrijd en vriendjespolitiek. M.a.w. corruptie.
En wat kan men met deze inloggegevens? Inloggen op de website van de developer om te kijken wat er deze week op kantoor voor broodjes te eten zijn? Valse stemmen invoeren? Zit nog wel een verschilletje in.
Volgens het NOS-artikel:
Door het lek konden kwaadwillenden toegang krijgen tot de infrastructuur van de softwareleverancier die de stemmentelsoftware maakt. Daarmee zou een aangepaste, gemanipuleerde versie van de software kunnen worden verspreid, waarmee uiteindelijk bijvoorbeeld de uitslag van verkiezingen zou kunnen worden aangepast.
https://nos.nl/artikel/24...ingen-minder-dan-uur-werk
Uiteindelijk zijn er genoeg controlepunten waar dat wel was opgevallen, maar het is wel zorgwekkend dat een dergelijke fout gemaakt wordt. Maar goed, verder ga ik geen conclusies trekken over de software an sich zonder kennis te hebben over de kwaliteit.
Er zijn juist niet genoeg controlepunten. Als iemand de CD met software die naar Amsterdam gaat weet te onderscheppen en verwisselt met een zelfgemaakte versie aan de hand van wat Maarten Boone heeft gevonden, dan gaat het om meer dan een half miljoen stemmen die iemand zou kunnen manipuleren.

Er vinden tegenwoordig wel handmatige steekproeven plaats op de uitslag die uit dit pakket komt rollen, maar die gaan vooral op partijniveau en in een gemeente als Amsterdam zijn ze onwerkbaar (dan moet je handmatig de telling van honderden bureaus bij elkaar optellen) dus ik betwijfel of men dit ook echt doet.

Lang verhaal kort; met gemanipuleerd software kan je waarschijnlijk zonder dat het opvalt zo'n 10 tot 20 procent van de stemmen beïnvloeden. Als je dit in Amsterdam doet, komt dat neer op twee of drie zetels bij landelijke verkiezingen.
De software wordt gecontroleerd aan de hand van hashes, afgezien van het feit dat het me niet lijkt dat het op een CD staat maar een download is, dan is dat nog steeds op validiteit te controleren.
Gebruikers zouden de software hash moeten controleren, of dat gebeurt is natuurlijk vraag 2. Daarnaast is het natuurlijk goed dat er extra checks zijn, en die zijn er ook juist zodat het ergens op deze manier fout kan gaan en dat dan toch gevonden word. Maar dat maakt het niet minder erg dat het ergens fout gegaan is (op zo'n amateuristische wijze ook nog eens).
Absoluut, dat inloggegevens op een dergelijke manier te achterhalen zijn is niet oké. De gebruikers zijn de gemeentes in dit geval, aangezien deze controlestappen genoemd werden ga ik er ook van uit dat er -zeker in het geval van verkiezingen- protocollen zijn die gevolgd moeten worden.
Dus eigenlijk niet veel meer als een "op wie moet ik stemmen" website oprichten welke mensen door misleiding richting een bepaalde partij duwt. Niet dat het niet slordig is hoor om zo'n fout te maken in je software, maar wilde graag weten of dit nu echt bijzonder schadelijk was. Niet dus :+

[Reactie gewijzigd door Notlupus op 22 juli 2024 14:19]

Aangepaste installer neerzetten die een aangepaste versie van de stemsoftware installeert. Wie weet staat er wel een sappig config.php bestandje met database wachtwoord. Waarna medewerkers gedoxed of geblackmaild kunnen worden. Of een interne GIT waarop de broncode van de software staat met misschien ook nog de username en pass van de backend.
Mogelijkheden te over dus. Afhankelijk van hoe gecompartimaliseerd ze hun set up hebben gemaakt.
Waarom ontbreekt de hamvraag ? Klopten de uitslagen van de afgelopen 12 jaar wel en is dit te na te gaan ?
Ten eerste omdat het om de versie van 2020 gaat.
Ten tweede omdat het in de installer stond.
Ten derde omdat het programma een hulpmiddel was, met de hand geteld is en was de leidraad.
Dus jouw hamvraag slaat nergens op en geeft aan, dat je er geen snars van snapt.
Niet helemaal correct.
Waar zit ik dan fout?
Omdat er steekproeven worden genomen, dus nog steeds niet 100% waterdicht.
Tom Scott heeft een mooi filmpje over waarom e-voting een slecht idee is; de conclusie is dat er gewoon teveel single points of failure zijn en dat er gebrek aan transparantie is. https://youtu.be/w3_0x6oaDmI?si=iZ6DltWqIMNedgkX
Het gaat niet over e-voting..
Iedereen mag zoveel minnetjes geven als ze willen hoor, is het systeem niet voor bedoeld maar ga je gang. Dacht dat het een redelijke vraag was. Verkiezingsfraude is nu eenmaal een gevoelig onderwerp. Zit nog wel een verschil tussen een dom onbenullig foutje en een (bedrijfs)kritieke fout. Je mag best mijn username en wachtwoord weten hoor, kun je op zich alles mee in mijn bedrijfsnetwerk. Moet je alleen ook wel mijn fysieke VPN token hebben, oh, en mijn mobiel en telefoonnummer om de MFA mee te omzeilen. En dan hopen dat je net in de goeie geografische locatie zit dat deze wordt geaccepteerd.
Ik ben benieuwd of het nieuwe bedrijf dit beter doet... 45 miljoen voor een paar jaar software pielen. Een paar formuliertjes inlezen en tellen. En voornamelijk testen op bugs e.d. Echt een idioot bedrag hiervoor. De minister die dit ondertekend heeft mag het uit eigen zak betalen van mij, kijken of het het dan nog waard is.

Bestaande software een beetje verbouwen en dan nog overgenomen worden door een bedrijf dat weer onderdeel is van een groep. Ik heb zoiets letterlijk nog nooit goed zien gaan. Altijd gaan dat soort overnames, en met name als het onderdeel is van een groep, verkeerd. Er gaat dan echt altijd iets mis.

Ook heb ik ergens gelezen dat de software op basis van Java geschreven is. Nou, dan kan ik je wel garanderen dat er miljarden bugs in zitten, als het al functioneerd zoals bedoeld. Is het de software zelf niet, dan is het wel Java zelf... Genoeg ervaring met de top grootste leveranciers in NL.

Ik citeer uit een toetsingsrapport van Expleo:
"OSV is oorspronkelijk ontwikkeld door IVU (IVU Traffic Technologies AG, zie: www.ivu.com) op basis van een bestaand softwarepakket voor verkiezingen. IVU.elect is in 2020 overgenomen door elect iT3 (onderdeel van vote iT, zie www.elect-it.com). Zij zorgen voor beheer en onderhoud (correctief en adaptief) van OSV2020."
Dit had letterlijk een google sheet kunnen zijn.
Daar kan je geen 45 miljoen voor berekenen. De mensen willen wel hun zakken kunnen blijven vullen he.
Wanneer halen ze de wachtwoorden eruit? id3Mp********Vd4CLEnt :/

Op dit item kan niet meer gereageerd worden.