A Microsoft tegnap rendkívüli frissítéseket adott ki az Internet Explorerhez valamint a Visual Studio Active Template Library-jéhez. A két javítócsomag igen összetett hibákat orvosol, és egymást kiegészítve igyekszik mélyreható védelmi mechanizmusokat bevezetni.
A Microsoft szakemberei példamutató módon számolnak be az általuk felfedezett sebezhetőségekről, és bár őszintén szólva így reggelire kicsit már megfeküdte a gyomromat ez az információtömeg, azért megpróbálok egy rövid áttekintést nyújtani a szóban forgó problémákkal kapcsolatban:
Az Active Template Library (ATL) egy C++ osztálygyűjtemény, amely lehetővé teszi a Visual Studio felhasználói számára, hogy egyszerűen hozzanak létre többek között COM objektumokat, pl. ActiveX vezérlőket is. Ezeket az objektumokat később különböző szkriptnyelvekben, tipikusan Internet Explorerből meghívva használhatjuk fel.
Mint kiderült, az ATL különböző osztályait három sebezhetőség súlytja, melyek közül kettő kódfuttatást tesz lehetővé, ráadásul a sebezhető ActiveX objektumok kiiktatására szolgáló killbit mechanizmus is megkerülhető egyikük kihasználásával (tehát a kártékony kód akkor is lefut, ha a sebezhető objektum használatát letiltottuk!).
Mivel alapvető programkomponensekről van szó, az ATL-t használó fejlesztőknek felül kell vizsgálniuk eddigi kódjaikat. Ha kiderül, hogy a fejlesztett szoftver sebezhető, a javított ATL-lel történő újrafordításra, vagy a sebezhető kódrészek átírására van szükség a felhasználók védelme érdekében.
Mivel az összes egyedi fejlesztésű komponens átvizsgálása gyakorlatilag lehetetlen, a második javítócsomag a lehetséges támadások elsőszámú táptalajának számító Internet Explorerben vezet be (többek között) az ATL sebezhetőségeire irányuló támadásokkal szembeni megelőző intézkedéseket.
Az ATL konkrét sebezhetőségeiről, valamint arról, hogy a Microsoft szakembereinek miért nem sikerül eddig rájuk akadniuk, kiváló posztot olvashattok a cég Security Development Lifecycle blogjában. Mint kiderült, az egyik stack overflowt például egy egyszerű elírás okozza, melyet az automatikus ellenőrző eszközök azért nem jeleztek, mert a kasztolás (ezt így írják magyarul?) "azt a benyomást kelti" az analizátorban, hogy a fejlesztő tudja mit csinál, ezért a további jajveszékelés úgyis csak hamis pozitívokat eredményezne a teszt eredményében.
Bár a teljes, javításokkal kapcsolatos cikktenger átolvasása nem sétegalopp, én azért mindenkit arra bíztatnék, hogy vágjon bele a feladatba! Ritkán lehet találkozni ennyire tanulságos, és jól kommunikált esetekkel, le a kalappal a MS biztonsági csapata előtt!
Frissítés: A Cisco több termékét is érinti a sebezhetőség, javítások egyelőre nincsenek.
Frissítés 2: Az Adobe Shockwave és Flash Player is érintett, amennyiben Internet Exploreres beépülőként használjuk őket (mivel csak itt jönnek szóba az ActiveX vezérlők). Előbbi szoftverhez elérhető frissítés.
A Verzion Business készített egy tesztfelületet, mellyel ellenőrizhető a különböző beépülők érintettsége