Tegen het begin van dit decennium stierf het populairste besturingssysteem voor pc's. Windows 7 is nu dood, maar lang leve Windows 7! Tenminste, als je niet bang bent om wat externe software op je systeem te draaien die daar best vergaande rechten krijgt en waar je toch een zekere mate van vertrouwen in moet hebben. 0patch is een dienst die nog betaalde patches uitbrengt voor systemen die niet meer ondersteund worden. Ook handig: de updates komen, volgens het bedrijf dan, sneller binnen dan wanneer je op de gemiddelde softwarefabrikant moet wachten. De vraag is alleen: welk bedrijf durft het risico te nemen om dergelijke software te draaien?
Windows 7 mag je inmiddels gerust 'software van vroeger' noemen. Het besturingssysteem krijgt sinds 14 januari 2020 geen officiële beveiligingsondersteuning meer van Microsoft. Bedrijven die het OS alsnog per se nodig hadden of die misschien nog niet aan upgraden waren toegekomen, konden tot voor kort gebruikmaken van Extended Security Updates. Met dat betaalde pakket kregen ze drie jaar langer securityondersteuning, maar die stopte in januari van dit jaar. Windows 7 is daarmee niet meer veilig, behalve als je je durft te wagen aan alternatieve, externe diensten zoals 0patch, dat sinds de ESU-stopzetting plotseling populair werd.
Micropatchen
Een micropatch, dat is wat 0patch maakt. Dat zijn geen patches zoals je ze gewend bent, met nieuwe versies van executables of dll's, maar patches die alleen in het geheugen draaien. 0patch bestaat al een paar jaar, maar kreeg de afgelopen maanden bekendheid toen het bedrijf bekendmaakte tot januari 2025 ondersteuning voor Windows 7 en Windows 8.1 aan te blijven bieden. Ook biedt 0patch tot dat moment Edge-patches aan voor die besturingssystemen, uiteraard wel tegen betaling.
Afgedankte software patchen is waar 0patch voornamelijk bekend mee werd, maar nieuwe patches voor verouderde software zijn slechts een deel van de usecase van de dienst, zegt oprichter Mitja Kolsek tegen Tweakers. "We patchen allerlei soorten code, dat kan ook gaan om bestaande kwetsbaarheden in moderne software waar op dat moment nog geen patch voor bestaat." Dat gebeurt via een tool, de 0patch Agent, die zijn tentakels diep in het besturingssysteem van een gebruiker heeft en constant aan moet blijven staan. De Agent belt vervolgens regelmatig met de servers van 0patch. Komt er software voorbij waarvoor 0patch een patch heeft, dan wordt die patch gedownload en vervolgens in het geheugen gedraaid om de gebruiker zo alsnog te beschermen, zelfs als de fabrikant die patch nog niet officieel heeft uitgebracht.
Zo makkelijk dat het saai werd
Kolsek is een van de onderrichters van het Sloveense securitybedrijf Acros, waar 0patch onderdeel van is. "Ik begon als beveiligingsonderzoeker in de tijd dat je nog aan responsible disclosure kon doen", vertelt hij. In 2023 ziet hij daar veel minder brood in; de markt is volgens hem zowat verzadigd, er zijn 'veel mensen' die ook naar softwarebugs zoeken en daar dan via een responsibledisclosurebeleid of een platform als HackerOne geld voor krijgen om zo een maandsalaris bij elkaar te freelancen. Kolsek vond dat maar niks, dus begon hij Acros. Hiermee deden ze voornamelijk pentests voor bedrijven die hen daarvoor inhuurden. "We gingen kwetsbaarheden zoeken, maar we kwamen vaak eenvoudig bij netwerken binnen, via kwetsbaarheden waar al vaak patches voor beschikbaar waren. Bedrijven installeerden ze gewoon niet. Het was zo makkelijk dat het eigenlijk saai werd. En dat was niet omdat we er zo goed in waren."
Een belangrijke reden dat bedrijven hun software vaak niet of nauwelijks patchen, is volgens Kolsek geen luiheid of gemakzucht, maar juist het tegenovergestelde. "De bedrijven waarmee we spraken installeerden patches niet omdat die in het verleden de productie stukmaakten", zegt hij. "Elke keer als we bij een bedrijf wisten in te breken via een ongepatchte machine, vroegen we aan de systeembeheerders waarom ze die patches niet hadden doorgevoerd. Het was elke keer hetzelfde verhaal: 'Het uitgebreid testen voor we een patch uitrollen duurt vaak lang en we hebben er in het verleden slechte ervaringen mee gehad.'"
Roll-outs die lang duren, bedrijven die niet meewerken... Dat is waarom 0patch begon met een alternatieve vorm van patchen. In tegenstelling tot wachten op het moment dat Microsoft of Adobe een nieuwe, gepatchte dll uitsturen tijdens hun maandelijkse patchronde, maakt 0patch softwarepatches die direct via een eigen client in het geheugen worden gezet. "Dat is niet heel inventief hoor, die manier van patchen bestaat al langer, maar we hebben het alleen commercieel succesvol weten te maken", zegt Kolsek.
Op zoek naar patches
Centraal in 0patch staat de 0patch Agent. Die tool maakt ieder uur verbinding met de servers van 0patch. Dat beheert een reeks aan patches van tientallen softwarepakketten en besturingssystemen. 0patch probeert patches te maken voor kwetsbaarheden die daarin zitten, maar verzamelt ook bestaande patches die het direct via de 0patch Agent kan uitrollen. Bedrijven hoeven zo niet te wachten op een maandelijkse patchronde. 0patch draait de patches in het geheugen en verandert de software op het systeem dus niet. Dat heeft ook het bijkomende voordeel dat de software niet eerst hoeft te worden gevalideerd, getest en uitgerold, maar de keerzijde daarvan is dat een bedrijf alleen beschermd is, zolang het de client actief blijft draaien.
Dat levert volgens Kolsek uiteindelijk patches op die in een van twee categorieën vallen. Aan de ene kant zijn er wat hij 'legacypatches' noemt: reparaties voor oude, niet meer ondersteunde software, zoals Windows 7 en 8.1. Daarnaast zijn er patches voor kwetsbaarheden van moderne software waar in sommige gevallen wel, maar net zo vaak ook nog geen patch voor is. Dat zijn bijvoorbeeld zerodays waarbij onderzoekers informatie over een bug online hebben gezet. 0patch-onderzoekers speuren het internet af naar zulke blogs en bouwen op basis daarvan een patch.
'Belangrijke' kwetsbaarheden
0Patch maakt patches voor 'belangrijke' kwetsbaarheden, maar dat is behoorlijk vrijblijvend
Dat is geen zaligmakende oplossing voor de beveiliging van een bedrijf. Je legt nogal wat eieren in een enkel mandje en je geeft de tool nogal wat verregaande rechten op een systeem. Daar komt nog eens bovenop dat je van 0patch geen enkele garantie krijgt dat je tegen alles beveiligd bent. Het bedrijf geeft namelijk updates voor, naar eigen zeggen, 'de belangrijkste kwetsbaarheden', zonder dat verder te specificeren. Daar moet je het dan maar mee doen als systeembeheerder.
0patch zegt dat het een team heeft van securityonderzoekers, maar het is niet alsof dat team ook speurt naar beveiligingslekken in Windows 7 en daar dan intern patches voor gaat schrijven. "Dat deden we vroeger nog wel, maar dat kostte ons veel te veel tijd", zegt Kolsek. De onderzoekers kijken volgens hem voornamelijk naar bestaand onderzoek van andere whitehathackers. "Stel dat er een onderzoeker een kwetsbaarheid vindt in Windows 10, dan kijken wij of die kwetsbaarheid misschien ook in Windows 7 zit." Volgens Kolsek is de belangrijkste bron van informatie voor patches dan ook 'gepubliceerd onderzoek', al heeft 0patch ook 'een breed netwerk aan onderzoekers' die hun werk ook privé delen met 0patch, maar Kolsek zegt niet hoe die verhouding precies is. "Soms komen die onderzoekers bij ons terecht omdat ze ontevreden zijn in hoe softwarefabrikanten met hun meldingen omgaan."
Arbitrair onderscheid
Met die methode lijkt het nogal arbitrair wat 0patch wel en niet kan patchen. Natuurlijk zijn er hier en daar wel openbare blogposts te vinden van beveiligingsonderzoekers die bugs in Windows vinden, maar veel kwetsbaarheden die tijdens een Patch Tuesday-ronde worden gerepareerd worden niet zo uitgebreid gedocumenteerd. En wat gebeurt er als een onderzoeker een non-disclosure agreement sluit met een bedrijf na een responsibledisclosuremelding of als een onderzoeker geen proof-of-concept uitbrengt van een kwetsbaarheid? Dat zijn oplossingen waarvan het moeilijk, of zelfs onmogelijk is voor 0patch om ze toe te passen.
Kolsek erkent dat. "We patchen niet alle kwetsbaarheden die er ooit zullen zijn. We kijken alleen naar wat er het waarschijnlijkst is om te worden uitgebuit." Toegegeven, 0patch erkent die willekeur aan patches ook op zijn website, maar toch biedt de dienst een nogal vrijblijvend aantal fixes aan om systemen veilig te houden. Dat zet 0patch in een rare spagaat; de klanten vinden veiligheid blijkbaar belangrijk genoeg om ervoor te betalen, maar kunnen ook leven met het feit dat sommige kwetsbaarheden simpelweg niet gepatcht worden. Als een bedrijf zoveel geeft om zijn veiligheid, zou het dan niet beter kunnen investeren in een sneller of beter patchproces?
Niet wachten op zeroday
Volgens Kolsek bevindt een groot deel van de klanten zich in het midden- en kleinbedrijf, en hebben ze daarnaast een handjevol thuisgebruikers en een aantal grote klanten, zoals internationale overheidsinstellingen, farmaceutische bedrijven en industrieën. Wie dat zijn, vertelt het bedrijf niet, al heeft het op de website testimonials van bedrijven in de ruimtevaart- en medische onderzoeksindustrie staan. "Doorgaans zijn dat klanten die een extra beveiligingslaag willen voor bijvoorbeeld zerodays. Ze willen daarbij niet wachten op een fabrikant, of als er een out-of-bandpatch komt, dan willen ze die snel geïmplementeerd hebben. Als ze het zelf moeten doen, kost ze dat veel tijd en geld." Maar daar staat dan wel tegenover dat ze met 0patch geen volledige garantie krijgen op veiligheid.
Dezelfde tegenstelling komt voor als je kijkt naar de rechten die de 0patch Agent krijgt op een systeem. De Agent kan geen executables aanpassen, maar scant wel lokale drives en software en moet om de zoveel tijd verbinding leggen met een server van 0patch. Het zijn best vergaande rechten en je kunt je afvragen of een bedrijf dat security belangrijk genoeg vindt om 0patch te gebruiken wel zoveel vertrouwen in een externe dienst kan hebben.
Net als endpointsecurity
Kolsek wuift die bezwaren weg en vergelijkt de tool met endpointsecuritysoftware zoals antivirus. "Software zoals Sentinel One doet precies hetzelfde. Wat er bij ons anders is, is dat 0patch alleen in het geheugen repareert en niet op het station zelf." Kolsek wijst er daarnaast ook op dat patches gesignd worden. Ook publiceert 0patch van sommige patches de code, zodat eindgebruikers zelf een patch kunnen nabouwen en de werking kunnen verifiëren. Of dat vaak gebeurt, is niet duidelijk. Bovendien gebeurt dat niet bij alle patches, maar bij een klein aantal. "In de toekomst hopen we dat proces te kunnen automatiseren", zegt Kolsek, maar het is niet duidelijk wanneer en op welke schaal dat dan zou moeten.
Supplychainaanvallen
Met zo'n ingrijpende tool die veel aan een systeem kan veranderen, bevindt 0patch zich midden in een supplychain. Die bleken de afgelopen jaren erg interessante doelwitten voor hackers te zijn. Kijk maar naar de hack op SolarWinds of later die op Kaseya. Dat zijn andere bedrijven dan 0patch, maar de mogelijkheden om de 0patch Agent te misbruiken om toch flink wat schade aan te richten, ligt wel voor de hand. Het bedrijf is daar echter niet zo mee bezig, zegt Kolsek. "Je verrast me een beetje met de vraag", zegt hij. "Potentieel zijn we misschien een groot doelwit voor hackers, maar op dit moment denk ik niet dat we dat echt zijn. Misschien als we nog verder groeien... We zijn wel veel bezig met beveiliging: onze onderzoekers draaien hun browsers bijvoorbeeld allemaal in virtuele machines, maar als een nation state ons zou willen hacken, zou dat kunnen."
Kolsek denkt ook dat de aard van de tool anders is dan bij SolarWinds en dat 0patch daarom een stuk minder interessant is als doelwit. "De Agent heeft niet meer rechten dan bijvoorbeeld een tekstverwerker die op adminniveau draait. Alle software is op die manier even exploitabel."
Bannerfoto: Remitski / Getty Images