Iedereen die een pc heeft, is wel bekend dat elke tweede dinsdag van de maand, de zogenaamde ‘Patch Tuesday’, Microsoft uw pc wil updaten. Maar waarom eigenlijk? Is dit echt nodig? En zijn updates ook nodig voor industriële apparatuur?
Door: Rob Hulsebos
De antwoorden op bovenstaande vragen zijn: om hackers buiten de deur te houden, ja, en ja. Vanuit een IT-afdeling is er veel aandacht voor het bijhouden van pc’s, maar wie kijkt er naar de industriële apparatuur? Daar zit minstens evenveel (of wel meer) software in dan in een pc. Maar de beveiliging is vaak veel slechter: vanwege de ouderdom van de apparatuur, onveilige netwerkprotocollen, lakse leveranciers, en een gebrek aan aandacht van de productievloer.
Waarom is apparatuur kwetsbaar?
Het begint allemaal bij fouten in software. Elke programmeur maakt fouten in zijn of haar software: typfouten, denkfouten, algoritmefouten, architectuurfouten, domheden. Gebruikers maken configuratiefouten. Veel hiervan zullen gevonden (en opgelost) worden tijdens testen, maar er zullen altijd fouten overblijven. Persoonlijk heb ik wel eens fouten in software opgelost die er al meer dan 10 jaar in zaten.
Van de overgebleven fouten kan er soms een zijn die door een hacker kan worden misbruikt. In jargon wordt dit een ‘kwetsbaarheid’ (vulnerability) genoemd. Jaarlijks worden er meer dan 20.000 van bekend, in allerlei soorten software: consumentenproducten, IT-producten, maar ook steeds meer OT-producten (operational technology) .
Mocht een kwetsbaarheid in een product bekend worden, dan is het aan de leverancier om deze kwetsbaarheid te verwijderen. De software krijgt een aanpassing, zodat de kwetsbaarheid verdwijnt. De leverancier stelt dan de nieuwe software ter beschikking aan klanten / gebruikers van die software. In jargon heet dit een patch.
De gebruiker/klant moet die patch dan wél eerst nog installeren. Deze activiteit heet patchen. De (oude) bestanden van de software worden dan overschreven met nieuwe bestanden. Na het opnieuw opstarten van het apparaat is de kwetsbaarheid verdwenen.
Industriële leveranciers, zoals Siemens en Schneider, volgen net als Microsoft het ritme van de tweede dinsdag. Cisco doet het voor sommige productlijnen tweemaal per jaar. Maar de meeste leveranciers hebben geen vastgelegde tijdstippen voor publicaties van patches. En er zijn ook leveranciers die er niets aan doen.
Wat is bekend?
De National Vulnerability Database (NVD) is dé plaats waar alle bekende kwetsbaarheden in software worden bijgehouden. Ook al lijkt ‘National’ te suggereren dat het alleen om Amerikaanse producten gaat, is dat niet zo. In totaal zijn er nu meer dan 150.000 kwetsbaarheden beschreven sinds 1999. Dit betreft dan allerlei mogelijke software- en soms ook hardware-producten. Elke kwetsbaarheid heeft een eigen ‘ID’, die begint met ‘CVE’, gevolgd door een jaar en dan nog een volgnummer. Een voorbeeld is ‘CVE-2020-10292’, die een kwetsbaarheid beschrijft in robotsimulatiesoftware (nvd.nist.gov/vuln/detail/CVE-2020-10292). De CVE-notatie wordt door iedereen binnen de cybersecuritywereld gebruikt.
Industriële producten
Een nadeel van de NVD-database is dat er zo veel in staat – voor consumentenproducten, gewone IT en ook voor OT. Een subset van de NVD, puur gericht op kwetsbaarheden in industriële producten, is de database van CISA, de Amerikaanse Cybersecurity & Infrastructure Security Agency. Kwetsbaarheden zijn hier per leverancier opgesomd (bijvoorbeeld https://www.cisa.gov/uscert/ics/advisories-by-vendor?glossary=B).
Deze website is ooit opgericht in een tijd dat industriële leveranciers zelf niets deden aan cybersecurity, maar er toch behoefte was aan een centraal informatiepunt. Een ‘collega’ van ICS-CERT is het Duitse VDE-VERT (https://cert.vde.com/en/), waar veel Duitse industriële bedrijven hun kwetsbaarheden melden. Ook al is VDE-CERT Duits, alle informatie is in het Engels.
Rapportcijfer 10 = slecht
De ene kwetsbaarheid is de andere niet, qua gevaar. Hoeveel moeite kost het bijvoorbeeld een hacker om binnen te komen? Is de – onbewuste – hulp van de gebruiker nodig? Kan de hacker via internet zijn werk doen, of moet hij toegang hebben tot het lokale netwerk? Dit is een aantal aspecten waarop een kwetsbaarheid beoordeeld kan worden. Hoe zo’n beoordeling gaat, is vastgelegd in de CVSS-standaard – Common Vulnerability Scoring System. Dit resulteert uiteindelijk in een soort rapportcijfer, lopend van 0,1 (zeer onschuldig) tot 10,0 (zeer gevaarlijk !)
Leveranciers
De primaire bron van informatie over kwetsbaarheden moet in principe de leverancier zijn. Veel leveranciers maken kwetsbaarheden (en patches) bekend op een webpagina; en u wordt per email geïnformeerd. Soms komt het voor dat alleen geregistreerde klanten informatie krijgen. Helaas zijn er ook nog veel leveranciers die niets publiceren; als klant bent u in het ongewisse of u kwetsbaar bent voor malware. Spreek uw contactpersoon er op aan hoe dat precies zit.
Ook van belang is de termijn waarop een product patches krijgt. Als u van plan bent een product 10 jaar te gaan gebruiken, maar de ondersteuningstermijn al na 5 jaar stopt, dan is er gedurende de laatste 5 jaar een verhoogd risico: nieuw ontdekte kwetsbaarheden die dus niet opgelost gaan worden.
Welke apparatuur heb ik?
Uiteraard moet wel bekend zijn welke (industriële) apparatuur allemaal aanwezig is in een systeem. En hier gaat het vaak al fout. Veelal is er geen enkel overzicht van wat er allemaal aanwezig is, en indien die er wel mocht zijn, dan is het vaak verouderde informatie. De eerste stap is dus om uit te zoeken wat er is: merk, type, netwerkadres. aanwezige software/firmware-versie, locatie, laatst geïnstalleerde patch enzovoort. De eerste keer zal het een flinke klus zijn, en vaak met een flinke tegenvaller: er kan makkelijk meer dan tweemaal zoveel apparatuur zijn dan gedacht. Als bekend is welke apparatuur er allemaal is, kan verder worden gezocht (bij de leveranciers) naar beschikbare patches.
Patchmanagementproces
Systeembeheerders vinden het patchen vaak vervelend en ondankbaar werk. En als het werk gedaan is, is er de volgende maand misschien wel wéér een nieuwe patch om te installeren. Het is een oneindige stroom van werk, de ene maand weinig, de volgende maand veel.
In veel bedrijven is patchen nu een ad hoc actie – ongedefinieerd, en niet ingepland. Dat levert altijd conflicten op met andere werkzaamheden, leidt tot wrijving met productie, het moet tussen het normale werk door en geeft overwerk. Dit alles voor een activiteit waarvan het nut voor velen geheel onzichtbaar is.
Volgens de norm voor industriële cybersecurity, IEC-62443, kan dat beter. Een bedrijf moet een ‘patchmanagementproces’ hebben. Een gedefinieerd proces dat beschrijft over welke apparatuur het gaat, hoe wordt uitgezocht welke patches er zijn, hoe die worden geselecteerd, hoe de testprocedure is, hoe de installatie gaat, hoe wordt geleerd van opgedane ervaringen. Als de procedure er is, kan hij worden ingepland – persoonlijk begin ik er op de tweede dinsdag van de maand mee – met personen en verantwoordelijkheden, budgetten en KPI’s (Key Performance Indicators). Een goed opgezet proces is ook niet afhankelijk van de opgeslagen kennis in het hoofd van één werknemer.
Installeren
Om een patch te kunnen installeren, is het meestal nodig om de applicatiesoftware te stoppen. Dit heeft de consequentie dat een bijvoorbeeld een complete machine of productielijn ook moet stoppen. Dit is een groot nadeel van patchen, en het zorgt er ook voor dat de productiechef niet enthousiast wordt als u langskomt.
Meestal moet patchen dan ook gebeuren in de kleine uurtjes, op een zondag, of tussen kerst en Nieuwjaar. Zelf had ik eens een keer een klant waar ik alleen op zondagochtend langs mocht komen, omdat dan de operators naar de kerk waren en de productie toch stil lag.
Het installeren van een patch zelf kost niet zo vreselijk veel tijd – gemiddeld een kwartier tot een half uur – als alles goed is voorbereid. Is er misschien speciale installatiesoftware nodig op een speciale laptop, of een bepaald geheugenkaartje, of een speciale kabel? Welke handelingen moeten worden uitgevoerd? Als dit ter plekke nog uitzoekwerk vereist, ligt de productie langer stil. Een goede reden om in het patchmanagementproces vast te leggen dat dit van te voren moet worden uitgezocht.
Advies
Het bijblijven op de laatste softwarestand wordt gezien als een van de meest effectieve maatregelen op het gebied van cybersecurity. Ook al doet u verder niets aan cybersecurity, doe het patchen dan wél.
Wat patch ik wel en wat niet?
Het aantal te installeren patches is vaak zo groot dat ze niet allemaal kunnen worden geïnstalleerd. Voordat u daarmee klaar bent is het alweer de volgende Patch Tuesday. Bovendien moet de productie meestal worden gestopt tijdens de patch-nstallatie. Er moet dus een keuze gemaakt worden, wat wel en wat niet? Een aantal mogelijke strategieën:
– Installeer zo snel mogelijk alle patches met een CVSS-score hoger dan (bijvoorbeeld) 8,0. Patches met lagere scores worden ingepland voor installatie tijdens de volgende productiestop.
– Installeer alleen die patches die het risico op een hack voor een bedrijf sterk verlagen.
– Installeer alleen de patches voor de ‘kroonjuwelen’: de machines/productielijnen voor de belangrijkste producten.
Er zijn geen vaste regels. Iedereen kan zelf bepalen wat het beste past in het eigen bedrijf. Een goede maatregel is ook om alle binnenkomende (nieuwe) apparatuur meteen op de laatste stand van software te brengen.
Dit artikel verscheen eerder in de Wots-special van Aandrijven en Besturen