Nick Fitzgerald meldt op de Full Disclosure maillijst dat MS05-016 exploits "in the wild" voorkomen. Nick wijst er op dat momenteel slechts enkele virusscanners deze exploit detecteren.
Er wordt spam verzonden met als bijlage een zipfile met daarin schijnbaar een .txt file. In werkelijkheid staat achter "txt" een vierde "letter" die, als je goed kijkt, als spatie wordt getoond; gebruikt wordt in dit geval ASCII code 255 (hexadecimaal 0xFF). In verkenner is deze "spatie" onzichtbaar; alleen aan het feit dat geen kladblok icoontje getoond wordt kun je zien dat het niet om een gewone "kladblok" txt file gaat.
Als je dubbelklikt op deze file zal de shell zoeken naar een programma dat voor die extensie geregistreerd staat, en dat is er natuurlijk niet. Daarna zal de shell de inhoud van de file inspecteren, en daar OLE code in aantreffen. Gebruikelijk in OLE files is om een CLSID van bijv. MS Word te bevatten, maar de huidige exploits verwijzen naar de CLSID van MSHTA.EXE (een CLSID is een lang uniek nummer in het register dat eenduidig een applicatie identificeert).
Dit heeft tot gevolg dat de shell er van uit gaat dat deze file een "MicroSoft HTml Application" bevat, en start MSHTA.EXE op ter verwerking ervan (op dezelfde wijze als je op een .hta file dubbel-clicked). HTA files bevatten een mix aan HTML en Visual Basic Script en zijn qua mogelijkheden identiek aan "echte" programma's zoals .exe en .com bestanden, en dus net zo gevaarlijk als een vreemde je deze toezendt. Een van de eerdere patches die Microsoft in dit verband heeft uitgebacht is het waarschuwen als een webpage een .hta file i.p.v. een html file probeert te openen in je browser. Door de omweg via CLSID verschijnt deze waarschuwing kennelijk niet.
Het betreft hier geen correcte MSHTA file, maar Microsoft heeft in al haar wijsheid, naast MSIE, ook MSHTA "tolerant" gemaakt: deze leest net zolang junk uit bestanden totdat er iets herkenbaars voorbijkomt. Daardoor zal MSHTA de OLE informatie aan het begin van de file negeren, en de uitvoerbare code verderop starten.
Hoewel Microsoft in haar security bulletin onderkent dat dit een "Remote Code Execution" vulnerability betreft, is deze slechts als "Important" geklassificeerd (ik zie geen structureel verschil met MS05-002 die wel als Critical wordt aangemerkt). Hoewel de exploit naar verluid op 2-nov-2004 is aangemeld (en bevestigd door Microsoft) is voor NT4 Server (met support tot 31-dec-2004) geen patch uitgebracht. Omdat de patch niet als "Critical" bestempeld is, zijn er ook geen patches voor Win9X en ME (die zo goed als zeker wel kwetsbaar zijn). Voor XP zonder SP's is er ook geen patch.
In haar bulletin noemt Microsoft wel een workaround, nl. het disablen van MSHTA (en beschrijft hoe dat kan). Mijn persoonlijke ervaring is dat het uitschakelen van HTA support geen consequenties heeft onder W9x en NT4, van ME weet ik het niet zeker (en XP gebruikt het meen ik voor eenvoudig gebruikersbeheer). Als alternatief voor de methode die Microsoft noemt kun je onder W9x en NT4 gewoon alle instanties van "mshta.exe" opzoeken en hernoemen in bijv. "mshta.exe.niet". Bij ME heeft dat geen zin omdat WFP (Windows File Protection) het bestand dan herstelt.
N.B. voor zover ik weet zijn alleen exploits gebaseerd op MSHTA bekend, maar andere exploits (in bijv. Word) kunnen niet worden uitgesloten. Het algemene advies is natuurlijk om nooit bijlagen te openen waar je niet zelf om gevraagd hebt, ook als deze door een bekende lijken te zijn verzonden.
Door Erik van Straten
Deze posting is gelocked. Reageren is niet meer mogelijk.