Új védelmi bástya a Windows 7-ben

Új védelmi mechanizmus kapott helyet a Windows 7-ben – ezúttal a készülő operációs rendszer hardvererőforrásainak kezeléséért felelős kernelt combosították meg alaposan a Microsoft mérnökei.

Az újonnan beágyazott safe unlinking nevű ellenőrző funkció arra hivatott, hogy blokkolja azokat a kísérleteket, melyek a poolmemória (más néven fix allokációs memóriablokk) túlcsordulását próbálják meg kihasználni. A hiba leggyakrabban egy olyan aritmetikailag hibás művelet kísérőjelensége, mint a helytelen memóriacímzés; a pool túlcsordulása nagyjából ugyanaz a kernelnek, mint a puffer túlcsordulása egy alkalmazásnak. A támadók a kétszeresen kapcsolt memóriabejegyzéseket manipulálják, amelyben minden egyes blokk a listában megelőző és a listában következő bejegyzésre mutat. Ha sikerül elérni, hogy egy memóriatömb a kód szennyezett részére mutasson, a támadók képesek lehetnek kiterjeszteni kontrolljukat a rendszer felett. A safe unlinking csak azt követően szabadítaná fel a blokkot, miután ellenőrizte az új memóriastruktúra integritását. Amennyiben az eredmény nem kielégítő, a Windows végzetes hibát jelez.

Redmond programozói az elmúlt öt évben adatfuttatás-megelőzéssel (Data Execution Prevention, DEP) és véletlenszerűen kiosztott memóriacímekkel (Address Space Layout Randomization, ASLR) igyekeztek elejét venni a böngészőalkalmazásokban és egyéb szoftverekben megbúvó hibák rosszindulatú kihasználásának. Azonban a biztonsági értesítők és riasztások egyre gyakrabban szóltak a Windows magjában lévő sérülékenységek exploitjáról: míg 2007-ben az összes jelentés kevesebb mint 5 százaléka szólt efféle problémákról, tavalyra ugyanez a szám már 10 százalék fölé kúszott – elérkezett tehát az idő, hogy Redmond új bástyát emeljen a kernel védelmében.

„A safe unlinking bevezetése nem azt jelenti, hogy elfelejthetjük a pool túlcsordulására épülő exploitokat, viszont alaposan megnehezítettük a támadók dolgát” – írja Peter Beck, a Microsoft biztonságtudományi csoportjának tagja.

Azóta történt

Előzmények