(Open Source) Placeholder for Uniq-Id

Frans Bolk heeft in IB magazine 2014 #5 een 'marketing' artikel geplaatst, getiteld 'Heartbleed en het risico van open source software' (lokale kopie)

Helaas bevat dat artikel flink wat onwaarheden die wij proberen op te lossen door een eigen artikel te schrijven met behulp van open source software. Ook deze site wordt volledige gerund op open source software.

De echte site van Uniq-ID is te vinden op http://www.uniq-id.com

De onderstaande brief, en de reactie van Frans Bolk (Uniq-ID) is uiteindelijk gepubliceerd in PvIB 7-2014. (PDF)

De domeinnaam uniq-id.nl is beschikbaar voor Frans Bolk in ruil voor een openlijk excuus aan de Open Source beweging en een donatie aan de ontwikkelaars van een cryptografische bibliotheek naar keuze.

Open brief aan Frans Bolk

Beste Frans Bolk,

Met grote interesse hebben wij je artikel gelezen in het InformatieBeveiliging Magazine van juni jongstleden. Je uitleg en begrip van de Heartbleed-bug en Open Source software baart ons grote zorgen en door middel van deze ingezonden reactie willen wij een en ander rechtzetten, verklaren en aanvullen.

Heartbleed is een bug in de oudere versies van de OpenSSL softwarebibliotheek. OpenSSL wordt bijna overal gebruikt, omdat OpenSSL lange tijd een van de weinig vrij beschikbare, maar volledige implementaties van cryptografie functies is geweest. De licentie van OpenSSL (de 'OpenSSL'- of 'SSLeay'-license) staat vrij gebruik toe; zelfs het opnemen van OpenSSL in gesloten commerciële software en hardware (zoals je browser, smartphone of auto!). Het is daarmee echter niet altijd duidelijk dat OpenSSL onderdeel is van de software of een apparaat, met als gevolg dat kwetsbaarheden niet altijd direct worden opgemerkt. De omzet (of het budget) van OpenSSL bedraagt daarnaast niet "€ 2000", maar zo rond de $1 miljoen per jaar, onder andere door donaties van privégebruikers en grote bedrijven/organisaties als de Amerikaanse Department of Homeland Security en de Department of Defense: http://en.wikipedia.org/wiki/OpenSSL.

In je artikel komt het duidelijk naar voren dat je geen hoge dunk hebt van Open Source software. Dat bevreemdt ons, aangezien het Internet gebouwd is op Open Source software en Open Standaarden (bijvoorbeeld protocollen: afspraken over/voor communicatie). De open implementaties uit de begintijd vormen ook tegenwoordig nog de uitgangspunten voor software, diensten en netwerken, inclusief die van commerciële bedrijven als Microsoft, Apple, enzovoorts. Bovenop deze basis is het World Wide Web ontwikkeld (door Tim Berners-Lee). Wederom gebeurde dat niet op basis van gesloten software en protocollen, maar door het openbaar specificeren en vrij beschikbaar en implementeerbaar maken van de de onderliggende standaarden. Open Source software-implementaties van webservers, zoals Apache en Nginx webservers, vormen daardoor verreweg het grootste deel van de webservers op het Internet. Van alle webbrowsers die we op dit moment kennen, is het grootste deel eveneens Open Source: Chrome, Firefox en zelfs delen van Safari, ondanks dat zij worden ontwikkeld door commerciële teams (zie bijvoorbeeld: http://opensource.apple.com).

Het is eigenlijk een principiële vereiste dat implementaties van cryptografische functies voor veilige communicatie 'Open Source' moeten zijn. Alleen bij dergelijke implementaties kan men onafhankelijk van de ontwikkelaars verifiëren dat cryptografische functies op een correcte wijze zijn geïmplementeerd, zodat men zeker weet dat informatie onderweg niet kan worden afgeluisterd of aangepast. Dit is ook wel bekend als het Kerckhoffs' principe (http://en.wikipedia.org/wiki/Kerckhoffs%27s_principle), genoemd naar een belangrijke Nederlandse cryptografisch expert. Alle gangbare implementaties van cryptografie zijn om die reden Open Source (en vaak Open License): niet alleen OpenSSL, maar ook LibreSSL, GnuTLS, PolarSSL (oorspronkelijk van het bekende Nederlandse commerciële beveiligingsbedrijf Fox-IT), NSS, CyaSSL en axTLS. Sterker nog: als de Heartbleed-bug één beveiligingsprobleem heeft blootgelegd, is het de risico's van gesloten software. Open Source pakketten die gebruikmaken van OpenSSL zijn na bekendwording van de Heartbleed-bug snel bijgewerkt om het probleem op te lossen. Bij gesloten software kun je als derde partij slechts hopen dat deze problemen tijdig en correct worden opgelost; echte verificatie volgens het Kerckhoffs' principe blijft echter niet mogelijk.

Wat je schrijft onder "Risico's Open Source software" bevreemdde ons eveneens. Je schuift 'goedkope' gesloten software onder dezelfde noemer als Open Source software. Tevens noem je allerlei doemscenario's van lekkende software, die alleen maar op te lossen zijn door je telefoon in een koekblik te stoppen. Open Source geeft je juist de mogelijkheid om te inspecteren wat er nu precies gebeurt, het probleem eventueel op te lossen of onschadelijk te maken, al dan niet een eigen variant te maken en gebruiken. Die zou je daarna zelfs kunnen verspreiden om zo de originele versie uit de markt te drukken of de aanbieder ervan te dwingen de implementatie te verbeteren.

Je onderstreept daarnaast het belang van digitale certificaten: "De meest eenvoudige [...] is deze software te ondertekenen met een echt certificaat, dat wil zeggen van een erkende Certificate Authority (CA), bij voorkeur eentje van Nederlandse bodem onder Nederlands recht.". Het principe van digitale ondertekening heeft echter een ander doel dan je schetst in je artikel: een digitale ondertekening zorgt namelijk dat de manipulatie van informatie is te detecteren. Zogenaamde 'Digital Signature Algorithms' verzorgen deze functionaliteit met behulp van een certificaat dat door een erkende CA is ondertekend. Hierdoor is de identiteit van de ondertekening te herleiden naar een natuurlijk persoon en kan de integriteit van de informatie worden gewaarborgd. Anders gezegd: digitale ondertekening wordt gebruikt ten behoeve van het controleren van de identiteit en integriteit van informatie. Versleuteling, waar de rest van je artikel echter over gaat, is een onderdeel van de bewaking van vertrouwelijkheid van informatie. Het mechanisme en principe achter digitale certificaten is niet gegarandeerd foutvrij: Certificate Authorities als DigiNotar en TURKTRUST gaven onterecht ondertekende certificaten uit, met ernstige gevolgen.

Je stelt tenslotte voor om de Heartbleed-bug te lijf te gaan door de inzet van zogenaamde Hardware Security Modules (HSMs). HSMs bieden een aantal functionaliteiten, zoals het beschermen van de sleutels die bij cryptografie worden gebruikt en het ondertekenen van digitale certificaten. De impact van de Heartbleed-bug is echter groter: dit zorgt voor een klein venster naar het werkgeheugen van een computer. Via dat venster heeft men een rudimentair inzicht in wat zich afspeelt in de computer op dat moment, waaronder mogelijke gevoelige informatie als netwerkverbindingen, wachtwoorden of cryptografische sleutels zou kunnen worden bemachtigd. Een HSM zal hierbij dus geen totaaloplossing kunnen bieden: hij zal slechts de cryptografische sleutels beschermen. Dat is weliswaar een begin, maar ook het lekken van de overige informatie kan een grote impact hebben op de veiligheid van gebruikers en organisaties.

Certificeringen op het gebied van informatiebeveiliging bieden eveneens geen absolute veiligheidsgarantie. Er zijn ook Nederlandse auditbedrijven geweest die -naar later bleek- onterecht een dergelijke certificering hebben afgegeven. Een certificering is uiteindelijk niets meer dan een momentopname; veiligheid is een continu proces dat onderdeel van het functioneren van een bedrijf moet zijn. Zo was het grote Amerikaanse retailbedrijf Target weliswaar in het bezit van relevante certificeringen (zoals PCI-DSS), maar is Target desondanks het slachtoffer geworden van een enorm datalek: http://www.darkreading.com/risk/compliance/target-pci-auditor-trustwave-sued-by-banks/d/d-id/1127936. Nog recenter blijkt hetzelfde aan de hand te zijn geweest bij Home Depot: https://corporate.homedepot.com/mediacenter/pages/statement1.aspx.

Een punt waar we het roerend met je eens zijn, is dat je er gerust van uit kunt gaan dat elke organisatie vatbaar is (geweest) voor dit lek. Het is essentieel dat alle benodigde stappen worden doorlopen om een organisatie door te lichten en te beveiligen. Als er één ding is wat de Heartbleed-bug ons echter heeft geleerd, is dat een continue doorontwikkeling en verbetering van software (welke dan ook) essentieel blijft. Juist in deze tijd van diefstal van persoons- en betalingsgegevens, schandalen over het afluisteren door beveiligingsinstanties en het lekken van privéfoto's wordt het belang van goede beveiliging nog eens extra onderstreept. Daarom willen we via deze weg meteen een oproep doen aan alle lezers: doneer vandaag nog aan de ontwikkelaars van veilige, open cryptografische software!

Was getekend, met vriendelijke groet,

Arnim Eijkhoudt, docent en onderzoeker in IT Security en Digital Forensics, Hogeschool van Amsterdam
Jeroen van der Ham, docent en onderzoeker System and Network Engineering, Universiteit van Amsterdam
Oscar Koeroo, beleidsmaker voor o.a. het onderwerp cryptografie, KPN
Rashid Niamat, journalist
Michiel Klaver, Linux/Unix expert bij internetprovider Luna.nl
Jo Lahaye, voorzitter HollandOpen, directie IRP
Menso Heus, coordinator Internet Protection Lab

N.B.: deze reactie is geschreven op persoonlijke titel en niet representatief voor genoemde bedrijven/organisaties.

P.S. Best slordig om een "marketing" artikel te publiceren zonder de vermelde domeinnaam, uniq-id.nl, te registreren. Dat hebben we maar vast voor je gedaan. Deze is beschikbaar in ruil voor een openlijk excuus aan de Open Source beweging en een donatie aan de ontwikkelaars van een cryptografische bibliotheek naar keuze.
We zijn met uniq-id.nl op geen enkele manier uit op geldelijk gewin, of concurrentie met uniq-id.com. Wij hebben deze reactie hier opgesteld uit liefde voor Open Source, Open Standaarden en Open Security.

Contact info: @1sand0s of @zaanpenguin

Laatste wijziging: 21:32 26/09/2014