Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Je kunt ook een cookievrije versie van de website bezoeken met minder functionaliteit. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 65 reacties, 25.329 views •

Microsoft waarschuwt voor een bug in Internet Explorer waarmee kwaadwillenden via een css-bestand eigen code kunnen uitvoeren. De softwaregigant werkt aan een patch en voor bezorgde gebruikers is er een workaround.

Microsoft Internet Explorer 9 logo (90 pix)De bug waarvoor Microsoft waarschuwt, maakt het mogelijk om uitvoerbaar geheugen aan te spreken en aan te passen, waardoor de data execution prevention in Windows wordt omzeild. Dep is bedoeld om het uitvoeren van code in niet-uitvoerbaar geheugen, bijvoorbeeld door middel van buffer overflows, te voorkomen.

Doordat een oud dll-bestand van Internet Explorer geen ondersteuning voor aslr heeft, is een aanvaller in staat om met een speciaal geprepareerd css-bestand uitvoerbaar geheugen te lokaliseren en er eigen machine-instructies in te plaatsen. Vervolgens wordt de code uit de exploit uitgevoerd, waardoor remote code execution heeft plaatsgevonden. De nieuwe versie van Metasploit bevat een proof-of-concept van de kwetsbaarheid.

Alle Internet Explorer-versies zijn volgens Microsoft kwetsbaar, maar de potentiële schade verschilt per systeem, zo blijkt uit een post op TechNet. Zo voorkomt de beschermde modus in Windows Vista en Windows 7 dat aanvallers code met beheerrechten uitvoeren.

Microsoft zegt nog aan een permanente patch te werken, maar de EMIT-toolkit van Microsoft kan alvast worden gebruikt om het gat te dichten. Na het patchen van het schuldige dll-bestand, mscorie.dll, krijgt dit bij het inladen een willekeurig base-adres, waarna een exploit waarschijnlijk niet meer in staat is om het kwetsbare geheugen te vinden en aan te passen.

Reacties (65)

Zit deze zwakheid alleen in Internet Explorer of zijn er meerdere browsers vatbaar? Klinkt weer als een typische IE aangelegenheid. Maar goed, in ieder geval wordt er een patch in elkaar gesleuteld.
Doordat een oud dll-bestand van Internet Explorer geen ondersteuning voor aslr heeft, is een aanvaller in staat om met een speciaal geprepareerd css-bestand uitvoerbaar geheugen te lokaliseren en er eigen machine-instructies in te plaatsen.
Puur IE gerelateerde bug dus :)
Nee hoor firefox heeft er ook last van als je IETab erop heb staan.
IETab gebruiken = Internet Explorer gebruiken, toch?
Start er een IExplore.exe proces als je IETab gebruikt?
Ja. Bij IE-tab wordt de IE-engine gebruikt
Lijkt me logisch dat het MS-only is gezien de naam van de dll: mscorie.dll

Ik meen me te herinneren dat ik commentaar kreeg vanwege mijn bewering dat MS nog volop oude code gebruikt in z'n "nieuwe" OS'en ;) Windows 7 heeft gewoon nog Windows 2000 als core
Hoeft natuurlijk niet meteen te betekenen dat die DLL exclusief door IE wordt gebruikt, die afkorting had ik over het hoofd gezien. Maar goed, als ik het artikel nog eens lees klopt het inderdaad wel dat het IE only is. Tjah, "I told you so" hoef ik in dit gezelschap niet te opperen neem ik aan.
Weet je wat een synoniem is voor oude code?
Code die werkt.
Of code die niet werkt maar waar men pas later achterkomt dat het niet werkt. Zoals in dit geval dus.
De code werkte wel, want de functionaliteit deed wat het moest doen. Dat er een veiligheidslek inzit is een neveneffect. Belangrijk om het op te lossen, maar dat wil niet zeggen dat oude code per definitie slecht is. Wat DamonTheron insinueert.
De code is op zich misschien niet slecht. De vraag is alleen of ze (iemand @ MS) het wisten en misschien bewust niet opgelost hebben.

In de link staat:
In a few words, Internet Explorer loads mscorie.dll, a library that was not compiled with /DYNAMICBASE (thus not supporting ASLR and being located always at the same base) when processing some html tags.
Dit zou kunnen betekenen dat ze het vlaggetje vergeten zijn te zetten, of dat ze het vlaggetje bewust niet gezet hebben, omdat het anders niet compileerde/werkte...

Als het bewust uitgezet is, is het slecht. Als het vergeten is, dan hoeft dat niet slecht te zijn.

[Reactie gewijzigd door lamme23 op 23 december 2010 17:08]

tjha, Dat krijg je met closed source. Veel minder reviews van reeds bestaande code ten opzichte van nieuwe functionaliteit. Kost veel tijd dus geld zonder da men van te voren weet wat het zal op leveren.

/DYNAMICBASE is de workaround. Als je niet weet waar een applicatie zijn data weg schrijft kan je dat ook niet aanroepen is de gedachte.
Als het bewust uitgezet is, is het slecht. Als het vergeten is, dan hoeft dat niet slecht te zijn.
Als men het bewust uit gezet heeft dan heeft men er in elk geval nog over nagedacht. Dat vind ik eigenlijk beter dan iets domweg vergeten.

Overigens ben ik het met daft_dutch eens dat dynamic_base een workaround is. Het zou gewoon niet mogelijk moeten zijn om van buitenaf code aan te passen en/of aan te roepen. Eigenlijk is dit een vorm van security through obscurity. De bug is niet weg, alleen doordat je niet weet waar de kwetsbaarheid zit kun je hem lastiger misbruiken.
Dat was dus precies wat ik ook dacht toen ik het las. Ze gaan de geheugenadressen dus randomizen waardoor je niet eenvoudig meer kunt vinden waar het is, maar het is er nog wel en dus is het nog mogelijk om een exploid ervan te maken.
Rare oplossing dus in mijn ogen.,
Alleen valt dat niet te zeggen van IE wat in bijna elke versie wel nieuwe problemen met zich mee bracht voor web developers. IE8/9 zijn dan wel al een enorme verbetering maar IE7 is nog steeds een bitch en ik moet regelmatig nog CSS hacks uitvoeren om bepaalde dingen werkend te krijgen. Die oude meuk aan codes "werken" dus niet zoals ze horen te werken. Jammer dat de eind gebruiker deze problemen niet ziet aangezien alles prima werkt voor hun ( dankzij fatsoenlijke web developers ) als eind consumenten de problemen zouden zien zoals wij dat doen dan was IE al lang geschiedenis!

IE6 begin ik nog niet eens over..
Tsja.. maar tweakers.net werkt hier zelf jammer genoeg ook vrolijk aan mee. Bij het bekijken van afbeeldingen geeft ook hier aan microsoft internet explorer 9 optimized te zijn. Deze browser specifieke toevoegingen zouden genegeerd moeten worden omdat het meestal niet veel meer toevoegd behalve toekomstige beveiligingslekken.

Overigens is het in dit geval te wijten aan oude dll's... natuurlijk weet iedere gebruiker met ietwat meer kennis dat windows ook nogsteeds deels bestaat uit onderdelen van vorige wndows versies maar goed, als je vooraanstaand windows gebruiker bent wil je ook niet anders dan om de zoveel tijd opnieuw betalen voor hetzelfde... ;)
Ik erger me inderdaad ook aan die 'IE9 optimized' onzin. Ik hoop dat Tweakers er dik voor betaald krijgt door MS. Dat het een soort advertentie is. Dat geld gun ik Tweakers dan graag. Maar als Tweakers dit gratis en voor niets doet dan zou me dat zwaar tegenvallen van ze.
Precies, daarom moeten ontwikkelaars ook stoppen met het eruit te laten zien zoals het bedoeld is. Geen hacks meer toepassen. Dus als het onder FireFox er beter uitziet, laat het dan lekker zo en vertel je klant dat het met FireFox (en andere) er beter uitziet en dat je er niets aan kunt doen. Als de gebruiker het verschil kan zien tussen browsers dan is het misschien het overwegen waard een andere browser te kiezen dan IE.

Wanneer je blijft optimaliseren voor IE dan blijft dit bestaan, dweilen met de kraan open. De gebruiker zal dan blijven zeggen: "Ik zie geen verschil, ziet er toch goed uit, het werkt toch?" Dan is er geen reden om over te stappen op beter. De gebruiker moet zien dat er betere alternatieven zijn en dat er meer is dan 'pain in the ass" IE. Als developers IE laat voor wat het is dan heeft MS echt een probleem. Developers kunnen iveel bepalen in de moderne browser wereld aangezien er genoeg alternatieven voor handen zijn die wel goed werken. Nu is het de beurt aan de developers. Stop de IE hacks.
Ben ik het niet mee eens. Het werkt soms zelfs beter. Fluxbox is een window manager voor linux, Dit werkt veel sneller dan bijv KDE4 terwijl Fluxbox een hele oud script is en KDE4 vrij nieuw. Ook zitten er minder bugs in.
De definitie van beter verschilt per persoon. Fluxbox zitten misschien minder bugs in, maar kan ook niks. In helloworld zitten ook minder bugs dan in Fluxbox. Ik als Linux en open source voorstander zal niet zonder reden zomaar Linux software afkraken, maar sorry hoor, Fluxbox doet me te veel aan de jaren 80 denken.
Moderne software is nou eenmaal een stuk complexer, en iedere software bevat bugs. Hoe meer regels code er bij komen, hoe meer bugs. Dat iets oud is en geen bugs bevat maakt het nog niet per definitie goed, en juist Fluxbox is een typisch voorbeeld van waarom oude "bugvrije" code niet perse goed is. Je kunt er tenslotte ook niks mee.

En btw, dat iets nieuwer is hoeft niet te betekenen dat er meer bugs in zitten, of dat er in de oude code meer bugs opgelost zijn. IE6 is na al die jaren nog steeds een traag buggy rotding, terwijl nieuwe browsers beter omgaan met security issues.
Ik ben daarom ook van mening dat de kwaliteit van de code niet afhankelijk is van de leeftijd, maar van de skills en attitude van de programmeurs. Daarom zal er ook nooit een echt goede browser uit de MS hoek komen, ze hebben er beide niet voor.
Nee, KWin is de window manager. Werkt als een zonnetje, maar is niet te vergelijken met Fluxbox. Dat is zoveel als zeggen dat notepad sneller werkt dan Word.
Unix zit vol met code van 20+ jaar oud, ga je daarvan ook beweren dat dat slecht is?
Alle browsers welke de IE render engine gebruiken zijn vatbaar. Dus ook bijvoorbeeld Windows Help of Microsoft Outlook. Gebruik je Firefox met IETab dan is dus ook deze vatbaar.

Aangezien de bug in MSIE sinds versie 6 zit, zijn dus in principe alle Windows installaties met Windows XP of hoger vatbaar voor deze bug. Maar ook Windows 2000 is waarschijnlijk vatbaar vanwege de push van Microsoft om IE5.5+ te vervangen door MSIE8.
Maar ook Windows 2000 is waarschijnlijk vatbaar vanwege de push van Microsoft om IE5.5+ te vervangen door MSIE8.
Ware het niet dat in W2k nog geen DEP zat. Daar hoeft DEP dus niet omzeild te worden.
Niet 'ware het niet dat' maar juist 'vooral ook omdat'. Je bevestigt zijn stelling maar laat het klinken alsof je hem probeert te ontkrachten.
Nieuwere versies van Outlook gebruiken vziw geen IE voor het renderen van HTML-mail. Wellicht alleen voor het weergeven van web folders.
1 CSS Bug in IE?

;)
hehe ja mijn wenkbrouwen fronsten ook gelijk :P
Maarja, het gaat hier natuurlijk wel om een specifieke securitybug ipv een renderfoutje. Daarvan hebben ze er idd genoeg.
Maar dat is offtopic ;)
Ik denk zelf dat renderfoutjes niet zo snel een fix voor komt :)
maar security bug ja daar moet wel wat mee gedaan worden.
Je hebt, helaas, gelijk
Het probleem is dat mensen die deze waarschuwing lezen over het algemeen geen IE gebruiken....

(Wiens vader/moeder/vriendin checkt er dagelijks Technet?) :+

EDIT: Zozo, de downmod brigade is aan het werk? Feit blijft dat het merendeel van de ITers Firefox, Chrome, en in mindere mate Opera gebruikt. Kijk maar naar de statistieken van bekende ICT podcasts bijvoorbeeld.

[Reactie gewijzigd door citruspers op 23 december 2010 20:11]

Ikke gebruik nogsteeds IE hoor. Alleen niet zo vaak. Op met iPod staat immers opera XD
(inkoppertje)

Maar jij bent dan ook geen echte tweakert he! 8-)
Gebruik voornamelijk IE en FF. Chrome is van Google en ben tegen Google.
Ja logisch, ik koop ook geen lamswollen truien meer omdat ik tegen Nieuw-Zeeland ben.
We kunnen beter de titel herschrijven naar:

Microsoft waarschuwt voor Internet Explorer

Dekt een stuk beter de lading, gezien de vele leaks, bugs en narigheid die er in dat product dit. En dan meteen graag een Mozilla Firefox advertentie in plaats van die gare "IE9-compatible!! wow!!! dit kunnen andere browsers al jaren!!"-advertenties.
Volledig mee eens. Gaan we weer terug in de tijd: "Best viewed with IE". Er zou nu moeten staan "Relax, best viewed with a beer". Het is net als met mensen, iemand die van de daken schreeuwt dat ie zo goed is in iets, is het vaak niet. Zo is het ook met browsers, IE schreeuwt om aandacht om te doen lijken dat het beste is. Dus niet.

Zo'n label kun je ook vergelijken met een "Microsoft certified" label of nog erger "Microsoft gold certified". Deze kul zegt helemaal niets over dat het goed (over de kwaliteit) is, het is door Microsoft zelf bedacht om te laten lijken dat het goed is. Ik lach ook altijd om die sites waarbij die kul aangegeven staat. Ik denk dan meteen "dat is een bedrijf waar je niet moet zijn", dat zijn van die meelopers die zelf niet na kunnen denken en hebben dat soort kreten nodig om zogenaamd goed over te komen..

Wij van WC-Eend adviseren WC-Eend, maar is daarom automatisch goed? ;-)

[Reactie gewijzigd door Erwines op 24 december 2010 17:25]

Internet Explorer is altijd een grote lek geweest.
Meteen van m'n computer verwijderd bij installatie van windows :)
Alleen verwijder je daarbij niet de bewuste dll ;)

[Reactie gewijzigd door Ramon op 23 december 2010 23:51]

Onderschat nooit een tweaker.
Microsoft waarschuwt voor Windows ware beter geweest. ;)
Joost, het is EMET, niet EMIT.
Ok... Dus je kan het geheugen benaderen via een css bestand...
Ik wist dat microsoft dom is maar dit?
Om zo iets te kunnen moet iemand het zo geschreven hebben :/

... Nog meer reden om alle programma's van mijn windows pc af te halen en het alleen voor games te gebruiken...
(hurray for open source)
Ja, want zoiets kan nooit in OSS gebeuren.

Kom aub ff van je roze wolk af.
Iedere software bevat bugs.
Maar, sommige software bevat nou eenmaal meer bugs dan andere.
Onder Linux zijn het allemaal losse systemen die met elkaar praten. Iedere library, daemon, etc wordt door een ander team gemaakt, en die praten allemaal met elkaar via de beschikbare API's.
Onder Windows daarentegen hangt het allemaal als een spaghetti-brei aan elkaar, vandaar dat een bug in IE in theorie overal invloed op zou kunnen hebben, niet alleen de voordehand liggende zaken zoals HTML rendering.

Onder Linux is ieder component vervangbaar. Daarom wordt dat ook regelmatig gedaan. Van simpele dingen als een videocodec of html library, tot een wifi stack in de kernel, tot zelfs het X11 system (zie wayland project). Zelfs de kernel is vervangbaar, aangezien debian een distro gebaseerd op een gnu-kernel heeft of had (geen idee of het project nog leeft, die gnu kernel boeit me niet zo heel veel).
Onder Windows hangt het zo raar aan elkaar dat er nog een hoop oude code in zit die ze moeilijk kunnen vervangen. IE8/9 lijkt heel modern, maar er zit nog altijd heel veel oude troep in uit IE6, en de meeste bezoekers van deze site weten wel wat een rotding dat was.

Dus ja, zoiets *kan* in theorie ook met open source gebeuren. In de praktijk echter niet, door de totaal andere opzet. En dan heb ik het niet over bugs in firefox of webkit, die zijn er genoeg, maar rare issues waarbij je met een speciaal stylesheet zomaar willekeurig geheugen kan overschrijven.
Dat het komt door een speciaal geprepareerd CSS bestand is niet relevant. Volgende week is het door de waarde van een parameter in de URL en volgende maand door een combinatie van tags in de HTML. Buffer overflows kunnen overal voorkomen (vooral C/C++) in Linux, OS X, Windows, whatever...
Precies, hoe denk je dat al die jailbreaks, unlocks en exploits op de iPhone en Android mogelijk zijn?

[Reactie gewijzigd door Dreamvoid op 24 december 2010 20:07]

Ah, een exploit dus. Ik dacht all, IE CSS bug, hoe is dat nieuws. Titel mag wel wat duidelijker.
Een IE exploit is toch ook allang al geen nieuws meer? Amusant, dat dan weer wel, dan wordt de groep die hard probeert te roepen dat IE8 zoveel beter is dan 6 misschien eens wat rustiger. IE is en blijft een onding...
Toch schijnt IE9 beter te zijn, ondanks de irriitante reclames. Hoop dat ze het toch nog in Xp gaan ondersteunen: dan maar zonder hardware acceleratie.
Hier een analyse van Nephi Johnson. Doordat deze lek toegang kreeg tot de uitvoer code kon hij een heap spray uitvoeren en eigen code injecteren. Wat geen denial-of-service levert maar een exploit

[Reactie gewijzigd door Lupo1989 op 23 december 2010 23:26]

Op dit item kan niet meer gereageerd worden.



Apple iPhone 6Samsung Galaxy Note 4Apple iPad Air 2FIFA 15Motorola Nexus 6Call of Duty: Advanced WarfareApple WatchWorld of Warcraft: Warlords of Draenor, PC (Windows)Microsoft Xbox One 500GBSamsung

© 1998 - 2014 Tweakers.net B.V. Tweakers is onderdeel van De Persgroep en partner van Computable, Autotrack en Carsom.nl Hosting door True