Microsoft dicht in zijn patchronde van deze maand een gat dat al vijftien jaar blijkt te bestaan. Aan de fix is ruim een jaar gewerkt. Windows-systemen in netwerken met Active Directory zijn te compromitteren door deze antieke bug.
Alle momenteel ondersteunde Windows-versies zijn kwetsbaar: van Vista tot en met 8.1 en van Server 2003 tot en met Windows Server 2012 R2. Het gaat niet alleen om Windows-systemen die zich al in bedrijfsnetwerken bevinden waar Microsofts beheerplatform Active Directory dienst doet. Ook werknemers die via een netwerk elders verbinding maken met hun bedrijfsomgeving lopen risico. Microsoft zelf geeft in een uitgebreide blogpost het voorbeeld van een koffiebar met Wi-Fi, waar een kwaadwillend figuur dan gebruikers te grazen kan nemen.
Observeren, omleiden en misleiden
Daarvoor moet die aanvaller eerst korte tijd het netwerkverkeer van zijn doelwit observeren en het draadloze access point of de bedrade switch voorzien van een omleidingsroute via zijn eigen aanvalscomputer. Vervolgens dient de kwaadwillende zijn machine dusdanig in te richten dat die middels een share het UNC-pad (Uniform Naming Convention) emuleert van het systeem waarmee de nietsvermoedende gebruiker verbinding probeert te maken. Het daarbij aangevraagde log-in script komt dan niet van de eigenlijke bedrijfsomgeving maar van de aanvaller. Dat script valt te voorzien van kwaadaardige code, die dan wordt uitgevoerd op de computer van het slachtoffer.
Bij deze man-in-the-middle (mitm)-aanval wordt specifieke bescherming tegen mitm onschadelijk gemaakt. Het gaat om het zogeheten SMB Signing, wat ervoor moet zorgen dat gedeelde schijven met bestanden, of bijvoorbeeld log-in scripts, niet door malafide namaak zijn te vervangen. Dankzij de bug vallen de beveiligingsinstellingen op de pc van een slachtoffer te omzeilen. Dit gebeurt door een reset af te dwingen naar de default stand die in wezen minder veilig is.
De reset vindt plaats in reactie op het moedwillig corrumperen of anderszins onleesbaar maken van het policy-bestand van de ‘group policy security configuration engine’ op de doelcomputer. Het gemis aan dat bestand waarin de betere beveiligingsinstellingen zijn opgenomen, leidt tot de terugval naar de onveiligere default. De fix hiervoor vervangt de reset naar default door een terugval naar de meest recente correcte policy, wat dan alsnog de veilige instelling is.
Bug fixing en netwerk hardening
De oorzaak is een bug die al vijftien jaar aanwezig is in Microsofts software en die is ontdekt door Jas Global Advisors. Die firma was ingehuurd door internetbeheerder Icann (Internet Corporation for Assigned Names and Numbers) om mogelijke technische problemen met de nieuwe toplevel domeinnamen (gTLD’s) te onderzoeken. Daarbij is Jas op de Microsoft-bug gestuit. De zogeheten Jasbug is begin 2014 in stilte gemeld aan Microsoft, die sindsdien aan een oplossing heeft gewerkt.
Dat lange ontwikkelwerk heeft nu twee updates opgeleverd, die zijn uitgebracht in de patchronde van februari. De eerste update (MS15-014) fixt de eigenlijke bug. Die softwarefout in Group Policy valt te misbruiken om beveiligingsvereisten voor clientcomputers uit te schakelen. Daardoor zijn dus mitm-aanvallen mogelijk. De tweede update (MS15-011) voegt nieuwe functionaliteit toe, die bestandstoegang via het netwerk verstevigt om te voorkomen dat clientcomputers verbinding leggen met niet vertrouwde shares, zoals die van aanvallers in bovengenoemd koffiebarscenario.
Geen gering gat
Microsoft geeft aan dat de impact van het beveiligingsgat beperkt is. ‘Dit scenario illustreert dat deze aanval niet breed gebruikt kan worden via het internet. Een aanvaller moet een specifiek systeem of groep van systemen op de korrel nemen, die dan bestanden aanvragen met dit unieke UNC.’ Toch bestempelt de softwareproducent de kwestie als ‘critical’ in zijn indeling voor kwetsbaarheden.
Het is namelijk zeker geen gering gat. Succesvol misbruik stelt kwaadwillenden in staat om op afstand eigen code uit te voeren op de betreffende computers. ‘Een aanvaller kan complete controle krijgen over een getroffen systeem. Een aanvaller kan dan programma’s installeren, data bekijken, wijzigen of deleten, of nieuwe accounts aanmaken die dan volledige gebruikersrechten hebben’, meldt Microsoft in zijn securitybulletin over dit beveiligingsgat.
Ook via internet mogelijk
De hierboven geschetste man-in-the-middle aanval is ook niet de enige aanvalsmethode die mogelijk is, hoewel het wel de meest makkelijke is. Microsoft geeft volgens Jas een grondige uitleg van de aanvalsmethode via hetzelfde lokale netwerk (on-lan), waarbij de formulering ‘één van de typische aanvalsscenario’s’ wordt gebezigd. ‘Het on-lan scenario is inderdaad het meest te misbruiken scenario en is vooral van belang vanwege mobiele werkers die hun bedrijfsmachines meenemen naar een koffiebar of hotel’, schrijft Jas in de fact sheet over de bug.
‘Maar dit is een geniepige kwestie – eentje die maar blijft geven – dus het is zeker niet het enige misbruikscenario.’ Sterker nog: JAS heeft de bug gevonden, daarbij het concept van exploiteerbaarheid aangetoond en vervolgens aan Microsoft gemeld met een scenario waarbij misbruik volledig via internet mogelijk is. ‘Het on-lan scenario is pas weken later ontwikkeld toen we in deze complexe kwestie gingen graven.’ Het via-internet scenario is echter wel lastig en heeft een aantal extra misconfiguraties nodig om bruikbaar te zijn voor aanvallers. ‘Maar het werkt vaak genoeg om een reden van zorg te zijn. We zullen de details van andere aanvalsscenario’s waar we ons van bewust zijn ergens in de toekomst vrijgeven’, besluit Jas.
Als we even pas op de plaats maken dan weet iedereen hier dat ALLE software zekerheidsgaten heeft.
Ik werk al vele jaren met Linux maar ik moet zeggen dat MS inmiddels een volwassen product heeft.
Het is toch zaak van een beheerder bij zowel linux als windows om zelf de grijze cellen in te schakelen en een behoorlijke mate aan voorzichtigheid te bezigen als je alles aan internet knoopt.
Het MS van vandaag is niet meer het MS van Balmer, er wordt aanmerkelijk beter naar klanten geluisterd, dat is een groeiproces en dat duurt even.
Even een gewetensvraag, welke ICTer heeft nog nooit per abuis een gapend gat gecreeerd, even iets vergeten of zo?
@Jan Eén groot gapend gat en om de haverklap wat vergeten. Kan ook de leeftijd zijn natuurlijk maar zo is het ook, het is onmogelijk om overal aan te denken en dat geldt voor het alles wat met ICT te maken heeft je kan gewoon niet alles weten, het is zo groot en zoveel. Maar dat blijkt ook wel als er toch weer een onverlaat een gat ontdekt in software die en cruciaal is en al jaren gebruikt. ICT is dan ook bij uitstek een vak waarbij intuititie een belangrijke rol speelt. En google natuurlijk.
De vraag die hier gesteld moet worden is of dit nu een bug of een ‘design flaw’ is, kijkend naar de tijd (en moeite) die het Microsoft kost om dit op te lossen lijkt het probleem dieper te liggen en komt de gedachte op dat het meer een ontwerpfout is. De opmerking dat andere aanvalscenario’s misschien in de toekomst vrijgegeven worden is wat dat betreft dus zorgelijk als we kijken naar het fenomeen van ‘responsible disclosure’ en feit dat we het hier over een 15 jaar oude ‘bug’ hebben die in alle versies van Windows zit.
Betreffende een paar (of groot deel) van de reacties moet ik trouwens erg lachen, kan me nog wat bugs herinneren in open source oplossingen die net zoveel of nog meer impact hadden en waardoor ik me een heel klein beetje kan vinden in reactie van Peter van Halderen. Ik zeg een heel klein beetje omdat de autoindustrie ook niet echt bekend staat om het toegeven van ‘design flaws’ hoewel het hier dus wel om een beter gereguleerde industrie gaat.
Ben dus benieuwd of er niet ergens een interne memo bij Microsoft is die een jaar of 10 geleden al wees op de nu bekend geworden zwakheid, eventuele onwil om fouten te herstellen maakt claimen van schade tenslotte veel succesvoller binnen het Amerikaanse rechtssysteem. En ARP spoofing is een techniek die al in 2005 bekend was als zwakheid en waarvoor ook Linux nog weleens gevoelig is omdat het vaak erg simpel is om een client te misleiden als er geen sprake is van ‘non-repudiation’ in de uitwisseling van packets.
Euh… wacht even, ICANN laat een onderzoek doen naar de technische problemen met IPv4 en toevallig stuiten ze op een ‘levensgroot’ gat dat al 15 jaar in alle versies van Windows zit en Microsoft besluit desondanks om Windows 2003/XP niet te patchen ondanks dat er nog miljoenen actieve instances hiervan zijn?
Best grappig om tussen de (marketing?) regels door te lezen dat besluit hiervoor genomen is op basis van: “Such big architectural changes could create incompatibility issues with applications that were designed to run on Windows Server 2003” waarmee toch aardig wat organisaties nu dus gewoon een ‘sitting duck’ geworden zijn. En voor onze ‘cloudklutser’ herhaal ik nog even graag een zin die ik in een eerdere opinie (2014) gebruikte aangaande afhankelijkheid van leveranciers:
‘If a country loses data sovereignty (in exchange for #Microsoft patches), they also lose political sovereignty and security’ – Caspar Bowden
Wil niet vervelend doen maar NTLM wordt nog opmerkelijk vaak gebruikt, net als SMBv1 als ik even snel een scan doe betreffende de ‘backward compability’ middels Windows 2003 AD mode. Jan heeft een punt als hij stelt dat ICT-ers nog weleens een gapend gat maken om oude applicaties te laten functioneren. Prangende vraag is namelijk hoeveel applicaties het straks niet meer doen als het gevolg van het feit dat ze geschreven zijn op deze UNC bug.
Misschien voor IT afdelingen een goed idee om alvast een contract te maken waardoor ze gevrijwaard worden van allerlei claims als de business besluit om (ook) dit lek niet te patchen?
Dit probleem komt bij mij een beetje als een storm in een glas water over. Net zoals de BASH shell bug van recentelijk.
NTLM is een protocol voor LAN netwerken. Als je op een gratis WiFi-spot zit, (de meest vijandige omgeving voorstelbaar, thuis zit je internet immers achter je *eigen* NAT router) zou een normaal denkend mens (danwel beheerder) eerst een VPN verbinding opzetten voordat men allerlei LAN protocollen begint te gebruiken.
Wel is de mengelmoes tussen LAN en WAN protocollen van Microsoft een beetje knullig.
“Als je op een gratis WiFi-spot zit (..), zou een normaal denkend mens (danwel beheerder) eerst een VPN verbinding opzetten voordat men allerlei LAN protocollen begint te gebruiken.”
Dat is klinkklare onzin. Er zijn weinig mensen die weten dat ’t onveilig is om zonder encryptie/VPN een open WiFi-spot te gebruiken. Niet iedereen is ICT-er! En nog minder mensen hebben een abonnement bij een VPN, danwel dat ze er eentje uit ’t hoofd weten die gratis is.
De gemiddelde ‘normaal denkend mens’ weet echt niet wat NAT of VPN is.