Begin jaren tachtig scoorde de Amsterdamse popband De Dijk een bescheiden hitje met de titel ‘Bloedend hart’. Hoewel het nummer ergens halverwege in de Top 100 bleef steken, duikt het nog steeds elk jaar op in de Top 2000 aller tijden. Wie had kunnen bevroeden dat deze titel ruim dertig jaar later de letterlijke vertaling is van Heartbleed, een nieuw beveiligingsschandaal dat op 7 april jongstleden de it-wereld weer eens op zijn grondvesten liet schudden?
Heartbleed is een kwetsbaarheid in OpenSSL, een protocol voor encryptie van internetgegevens. Hoewel de afkorting staat voor Secure Sockets Layer blijkt nu dat het protocol, dat op open source is gebaseerd, allerminst veilig is. Het meest schokkend is misschien nog wel dat de kwetsbare code sinds maart 2012 onderdeel uitmaakt van OpenSSL. Aanvallers hebben dus twee jaar de tijd gehad om misbruik te maken van deze kwetsbaarheid en alles duidt erop dat dit ook is gebeurd.
Het goede nieuws is dat zowel de autoriteiten als de softwarebedrijven de communicatie over dit nieuwe beveiligingslek uiterst serieus nemen. Leveranciers duikelden de afgelopen weken over elkaar heen en publiceren aan de lopende band security alerts, fixes en patches. Op de website Naked Security van Sophos leggen beveiligingsexperts Chester Wisniewski en Paul Ducklin in een podcast (Chet Chat) in heldere taal uit hoe om te gaan met Heartbleed. Het is overigens nog maar de vraag of het verstandig is om nu hals over kop alle wachtwoorden te wijzigen.
Schaal
De impact van Heartbleed wordt door Oracle opmerkelijk genoeg met een ‘magere 5’ op een schaal van 10 beoordeeld. Het softwarebedrijf gebruikt het zogenoemde Common Vulnerability Scoring System (CVSS) om cijfers aan beveiligingslekken toe te kennen. Dit naar analogie van de schaal van Richter die de impact van aardbevingen meet.
Die laatstgenoemde schaal loopt overigens door tot 12, waarbij sprake is van ‘totale verwoesting’. Dan valt er natuurlijk helemaal niets meer te patchen. Het Nationaal Cyber Security Centrum (NCSC) spreekt in tegenstelling tot de gemiddelde impactbeoordeling van Oracle van een ‘ernstige kwetsbaarheid’ en stelde daarom een factsheet op waaruit we zes tips destilleren. Allereerst de feiten.
Feiten
Er is een kwetsbaarheid gevonden in OpenSSL waardoor een aanvaller van buitenaf het interne geheugen uit kan lezen van de applicatie die OpenSSL gebruikt. In het interne geheugen van de applicatie staan geheime sleutels van certificaten voor ssl/tls opgeslagen. Ook andere vertrouwelijke gegevens uit de applicatie, zoals wachtwoorden en klantgegevens, zijn zo bereikbaar. Veel webservers, vpn-servers, mailservers en andere applicaties maken gebruik van OpenSSL om beveiligde verbindingen op te zetten.
Ook andere apparaten kunnen OpenSSL gebruiken. Voorbeelden zijn appliances, routers, Wi-Fi-accesspoints en sommige applicaties op clientsystemen. De meeste beveiligde verbindingen via het internet werken op basis van ssl/tls. Een sprekend voorbeeld is het https-protocol, het bekende slotje in de browser, om een beveiligde verbinding met een webserver op te zetten.
De kwetsbaarheid ontstond door een programmeerfout in de heartbeat-functionaliteit: de ontdekkers hebben de kwetsbaarheid daarom Heartbleed genoemd. Sinds de kwetsbaarheid is gepubliceerd, is er code publiek beschikbaar gekomen om deze kwetsbaarheid te misbruiken. Deze code wordt inmiddels dan ook op grote schaal gebruikt om apparaten te testen of aan te vallen.
Zes tips
Het NCSC geeft zes tips:
1. Inventariseer welke van je servers en andere apparaten een kwetsbare versie van OpenSSL gebruiken.
2. Inventariseer welke geheime sleutels van certificaten worden gebruikt op een kwetsbare server of ander apparaat.
3. Upgrade alle apparaten met een kwetsbare versie van OpenSSL naar een versie die niet meer kwetsbaar is. Is upgraden niet mogelijk, compileer OpenSSL dan zonder ondersteuning voor de heartbeat-functionaliteit. Herstart de applicaties die OpenSSL gebruiken.
4. Genereer nieuwe geheime sleutels en vraag nieuwe certificaten aan voor alle sleutels die mogelijk gecompromitteerd zijn (zie stap twee).
5. Vervang de mogelijk gecompromitteerde sleutels en certificaten door nieuwe exemplaren op servers en andere apparaten met een opgewaardeerde versie van OpenSSL. Plaats geen nieuwe sleutels en certificaten op apparaten zolang deze nog kwetsbaar zijn.
6. Laat je certificaatleverancier de certificaten intrekken die je zojuist vervangen hebt.
Tot slot
De wereld wordt overspoeld met onveilige openbare Wi-Fi-verbindingen, dus maak alleen verbinding met vertrouwde Wi-Fi-netwerken. Dat is ook het welgemeende advies van het Nationaal Cyber Security Centrum. Het tv-programma Brandpunt heeft inmiddels aangetoond hoe kinderlijk eenvoudig het is om met een eigen hotspot de data van bezoekers van bijvoorbeeld een complete Starbucks-vestiging af te tappen, zonder dat iemand hier iets van merkt. Dat doet me overigens denken aan een ander liedje van De Dijk: ‘Binnen zonder kloppen…’.
Eric van der Steen, contentmanager Yellow Communications