Szerző: Gálffy Csaba

2015. július 17. 17:08

A Google is erősíti a Flash védelmét

Fegyverkezésbe kezdett a Flash, végre komolyan vehető biztonsági mechanizmusokkal vértezte fel az Adobe és a Google együttműködése a széles körben elterjedt webes beépülő szoftvert.

HIRDETÉS

Szorosan együttműködött az Adobe és a Google biztonsági csapata a Flash megerősítésén, ennek köszönhetően a legutóbb kiadott 18.0.0.209-es verzióban több olyan megoldás is bemutatkozott, amelyet a Google elit szoftvermérnökei, a Project Zero munkatársai alkottak a Flash védelmére.

A Flash ellen indított támadások legnépszerűbb fajtája a puffertúlcsordulás. Ilyenkor a támadó egy rosszul leprogramozott objektumból ki tud törni, és a közvetlen szomszédos objektum által elfoglalt memóriaterületre tud ráírni. Ha a támadó tudja kontrollálni, hogy a túlcsordulásra kiszemelt objektum mellé milyen objektumot helyezzen a rendszer és abba (immár jogosultság nélkül) tetszőlegesen bele tud írni, akkor nyert ügye van. A szakemberek szerint ez utóbbi szerepre különösen alkalmas a Flash Vector. objektuma, amelynek első adateleme a hosszúságot rögzíti – ezt felülírva (a hosszúságot tetszőlegesen megnyújtva) nyílik meg a támadás lehetősége.

A Google megoldása a problémára a halomparticionálás (heap partitioning). Ezt a megoldást a cég saját böngészője, a Chrome mellett az Internet Explorer is használja, a lényege, hogy a memóriában tárolt objektumokat elszigeteli egymástól, így egy túlcsordulással nem lehet beleírni egy másik objektumba. A particionálást követően a támadó hiába igyekszik a két objektumot egymás után helyezni a halomban, ez nem fog sikerülni, mivel ezek immár két különböző heap részei. A Google itt jegyzi meg, hogy ez a védelem sokkal erősebb 64 bites böngésző (és 64 bites Flash) használatával, köszönhetően a kiterjesztett címtérnek.

A particionáláson túl egy másik kockázatminimalizáló megoldást bevezetésében is segített a Project Zero csapata. Ahogy említettük, a puffertúlcsordulásos támadás lényege, hogy a támadónak lehetősége legyen az objektumokat egymás mellé helyezni a memóriában, irányított módon. Ezt segít kiküszöbölni egy másik megoldás, amely elveszi ezt a lehetőséget a támadótól, a memóriát pedig kevésbé előrejelezhető módon osztja ki, még az egészen nagy méretű, akár több gigabájtos objektumok számára is.

Az Adobe csapata sem volt tétlen, a cég is fejlesztett egy saját biztonsági mechanizmust, amit gyakorlatilag úgy írhatunk le, mint a Vector objektumok hosszára vonatkozó kétfaktoros autentikációt. A .209-es verziótól fogva ugyanis a Vector objektum hosszára vonatkozóan a Flash egy validációs titkot is kiír valahová. Ha a támadó felül is írja a hosszúságot, nem tudja, hogy a titkot milyen értékre kell állítania, az eltérés pedig azonnal a futás megszakítását vonja maga után. Ez jól kiegészíti a heap particionálást a 32 bites rendszereken, a két megoldás együtt már nagyon hatékony védelmet jelent az ilyen típusú támadások ellen.

A Project Zero a Google elit, IT-biztonsággal foglalkozó csapata, amelynek feladata a zero-day sebezhetőségek keresése – nem csak a Google szoftvereiben, hanem más népszerű szoftverekben is. A csoport korábban nem kis feszültséget generált az IT-biztonsággal foglalkozó szakértők körében azzal, hogy 90 napot adott a fejlesztőknek az általuk felfedezett hibák javítására, ezt követően a javítás kiadásától függetlenül pedig publikálta azokat. A Google most inkább a kooperációra helyezte a hangsúlyt, a Flash megerősítése úgy tűnik jobban szolgálta most a cég érdekeit.

További szaftos műszaki részletekért érdemes a Project Zero blogbejegyzését fellapozni.

a címlapról

merész

12

Bejelentéscunami az Amazontól

2020. szeptember 25. 11:55

Játékstreaming szolgáltatásal, biztonsági drónnal, friss Echókkal és sok más újdonsággal rukkolt elő a cég.