Twijfels over kwaliteitschecks en testprocedures
Veiligheidsexperts tasten nog in het duister over de dieperliggende oorzaken achter de massale uitval van zakelijke Windows-systemen waarop de Falcon-beveiligingssoftware van Crowdstrike draait. De omstandigheden waaronder dit kon gebeuren, vragen om opheldering van de fabrikant.
Miljoenen computers toonden afgelopen vrijdag een blauw scherm ten teken dat opstarten niet mogelijk was. In de loop van de dag wisten veel organisaties de systemen te herstellen. Ze werden langzaam weer operationeel. Volgens een schatting van Microsoft zijn er wereldwijd 8,5 miljoen apparaten getroffen. Dat is minder dan 1 procent van alle apparaten die op Microsoft Windows draaien. Een klein percentage, maar met grote gevolgen.
Sandbox
Weliswaar is duidelijk waar het fout is gegaan, maar softwareleverancier Crowdstrike heeft nog geen verklaring gegeven voor het feit dat een programmeerfout in een routinematige update onopgemerkt bleef en door de testfase heen glipte. De vraag is of wel de juiste testprocedures zijn gevolgd voordat de uitrol van deze veelgebruikte software plaatsvond. Normaal wordt een nieuw stukje software eerst in afgeschermde omgeving (sandbox) geplaatst om te kijken hoe de code zich gedraagt.
Deze isolatie voorkomt dat de rest van het systeem schade ondervindt of zelfs helemaal uitvalt. De frequentie waarmee softwarebedrijven updates uitbrengen, kan er toe leiden dat testprocedures worden afgeraffeld. Persbureau Reuters citeert op dit punt diverse security-experts.
Crowdstrike meldt in een blog een grondige analyse van de hoofdoorzaak uit te voeren om te bepalen hoe deze programmeerfout in de logica is ontstaan. Het bedrijf uit Texas bekijkt ook of fundamentele verbeteringen of een betere workflow nodig zijn om dit soort fouten in de toekomst tegen te gaan.
Dat het probleem zo snel een enorme omvang kon krijgen, komt door de automatische verspreiding van updates. Als die een fout bevatten, worden meteen alle computers aangetast die op dat moment aanstaan of zich in actieve modus bevinden.
De verkeerde update van het programma Falcon Sensor werd afgelopen vrijdag om 04.09 uur plaatselijke tijd (UTC) verspreid. 78 minuten lang tastte de fout overal ter wereld ingeschakelde computers aan. Volgens sommige experts vielen de hersenen van Windows, de kernel, uit met als gevolg een complete crash. Computers konden niet meer opstarten.
Kanaalbestand
De bijgewerkte configuratiebestanden zijn van het type ‘kanaalbestand’. Dergelijke updates vinden meerdere keren per dag plaats als reactie op nieuwe tactieken, technieken en werkwijzen van aanvallers. Deze bestanden bevatten gegevens ter neutralisering van cyberdreigingen. Dit is beslist geen nieuw proces. Crowdstrike gebruikt al sinds de lancering van Falcon dezelfde architectuur.
Hoewel de kanaalbestanden (in dit geval nummer 291) eindigen met de extensie .sys, zijn ze volgens Crowdstrike geen kernel-stuurprogramma’s. De fout heeft ook geen betrekking op nulbytes in een kanaalbestand, aldus het bedrijf. Ontkend wordt dat een Null-aanwijzer uit de geheugenonveilige taal C++ de boosdoener was.
Hoe het ook zij, Crowdstrike heeft nog heel wat uit te leggen om het vertrouwen te herstellen. Omdat Crowdstrike veel (groot)zakelijke klanten heeft, kon de foutieve configuratie-update leiden tot een van de meest wijdverspreide technische rampen. Niet uitgesloten is dat dergelijke problemen zich in de toekomst herhalen. De storing was overigens niet het gevolg van een cyberaanval.
Noodplan
Minister David van Weel (Justitie en Veiligheid) raadt bedrijven daarom aan om noodplannen te maken wanneer systemen uitvallen. Ze moeten daar mee oefenen, zo schrijft hij in een brief aan de Tweede Kamer over de problemen met de Crowdstrike-beveiligingssoftware.
Door de verwevenheid van processen in het digitale ecosysteem kan iedereen gevolgen ervaren van een cyberincident zoals afgelopen vrijdag toen massaal vluchten moesten worden afgelast en ook banken, winkels en ziekenhuizen werden getroffen.
De snelheid waarmee de problemen werden opgelost, verschilde zeer per bedrijf en per afdeling. Omdat veel getroffen machines niet konden opstarten, moesten support-teams persoonlijk langskomen. De implementatie van de herstel-software die handmatig dient te gebeuren, kost veel arbeid en tijd. Volgens het NCSC in Den Haag is de workaround van Crowdstrike effectief geweest.
Meerdere cybersecurity-organisaties waarschuwden voor een toename in phishing. Cybercriminelen probeerden van de situatie te profiteren door zogenaamd oplossingen aan te reiken.
Niet alleen Crowdstrike moet met de billen bloot want bij vele organisaties ontbrak een plan B waardoor een fout tot een kettingreactie leidde van discontinuïteit in allerlei diensten die misschien niet kritisch zijn maar wel essentieel. Never waste a good crisis is het een goed moment om aandacht te geven aan NIS2 want huidige loketdenken in de cyberbeveiliging gaat om een patchwork aan oplossingen. En hierin zit een grote afhankelijkheid van organisaties zoals Crowdstrike waardoor vele architecturen per definitie onveilig zijn doordat met één druk op de knop de werking van op z’n minst allerlei essentiële diensten in het publiek-private domein verstoord kunnen worden.
Als reactie op een ander artikel stelde Dino voor om de smoke test weer in te voeren als extra controle in het proces van automatische updates door leveranciers die wel met de billen bloot moeten vanwege hun falende kwaliteitsnormen. Een smoke test is namelijk een eenvoudige, snelle en oppervlakkige test van een softwaretoepassing om te controleren of de basisfunctionaliteiten werken. Ondervonden opstart problemen na een wijziging komen namelijk al snel naar boven bij een paar eenvoudige testen in een beperkte omgeving zoals een virtuele zandbak. Te goed van vertrouwen zijn juridische teams al aan het kijken of ze vervolgschade kunnen claimen bij Crowdstrike want de claim dat ze beschermen tegen alle risico’s is onjuist gebleken.
Ik mis in de analyses, reacties en aanbevelingen het feit dat het foutje bij Crowdstrike alleen Windows als OS betrof. Vragen als: is het verstandig om voor al je (vitale) systemen van 1 OS afhankelijk te zijn, zou een dergelijk falen bij een Open Source OS niet veel transparanter en sneller opgelost kunnen worden, of minder makkelijk erin kunnen sluipen, etc.
@Fred, gevaarlijk dat dergelijke vragen aan de orde komen naar aanleiding van zo’n praktijkincident. Het zou zoiets kunnen zijn als ter discussie krijgen of we wel af hadden moeten spreken tegemoetkomend verkeer rechts te laten houden bij de eerste frontale botsing en ons afvragen of we niet toch beter dat vrij hadden kunnen laten.
Een dergelijk incident zegt helemaal niets over de kwaliteit van het collectieve resultaat van de individueel gemaakte keuzen. Alleen aan de manier waarop keuzevorming heeft plaatsgevonden kun je conclusies verbinden. Een centraal aansturend team van experts (getoetst op hun voorspellend vermogen in het algemeen en hun voorspellend vermogen inzake hun voorspellend vermogen in het bijzonder) maakt in iets over de 50% van de gevallen de betere keuze tussen A en B. Een goed opgezet systeem (zoals o.a. een markt) doet dat in circa 67% van de gevallen. Maar dat haalt een markt alleen zonder verstorende invloeden zoals informatie-bias of regulering (zoals bijvoorbeeld meer geld vooraf verwerven als je niet alleen over de keuze van ministerie A beslist maar over die van alle ministeries). Je zult anders de werkelijkheid minstens 15, 20 keer herhaald af moeten kunnen laten spelen om enige significantie uit praktijkervaring te halen.
Eén ding dat mij, als redelijke leek, in het hele verhaal niet duidelijk is en waar ik, voor wat ik ervan heb gelezen, nog geen vraag of opmerking over heb gezien: hoe kan het dat een software update een heel OS kan laten crashen / locken? Zegt dit dan ook niet iets over de robuustheid van Microsoft Windows?
Ik ben het roerend eens met de reageerders dat we lessen moeten trekken. Zijn we tegenwoordig té kwetsbaar? Ja! Maar wat moet je daarmee, als baas van een bedrijf, instelling, bestuursorgaan, of anderszins? In ieder geval op een eerlijke manier de waarheid over je eigen kwetsbaarheden uitpluizen en die onder ogen durven zien. En tegelijk ook de nodige maatregelen nemen. Er is nog heel wat te doen…
Duidelijk een OTP-tje (Ongetest naar Productie).
Steeds meer organisaties verkorten/skippen het functionele end-to-end testproces en beperken zich tot de technische tests.
Je ziet de gevolgen van als het een keer goed mis gaat.
Duidelijk dat Crowdstrike hier nalatig is geweest, zij kunnen hoge schadeclaims gaan verwachten (en terecht).