Szerző: Gálffy Csaba

2011. augusztus 09. 14:37:00

A GPU fejlődésének következő lépcsője a biztonság

Nem a WebGL hibája, hogy a jelenleg alkalmazott webes GPU-gyorsítás támadható felületet jelent - védte meg a szabványt a kidolgozó szervezet. A Khronos szerint ezeket a biztonsági problémákat nem a webes API szintjén, hanem a GPU-illesztőprogramokban kell megoldani.

Visszautasította a WebGL biztonságát vitató támadásokat a szabványt kidolgozó Khronos. A Microsoft kivételével az összes fontosabb iparági szereplőt (Apple, Google, Mozilla, Opera) tömörítő szövetség egész weboldalt szentelt a júliusban a Microsoft által hangoztatott vádak visszautasításának. Mint akkor arról a HWSW is beszámolt, a redmondiak bejelentették, hogy az Internet Explorerben nem tervezik a WebGL szabvány támogatását, mivel azt nem tartják eléggé biztonságosnak.

Az érvelés részét képezte a Context Internet Security kutatása is, amelyet a Microsoft támogatott. A kutatás szerint a WebGL elérhető (és Google Chrome-ban illetve Mozilla Firefoxban aktivált) formájában sebezhetővé teszi a számítógépet, amely így szolgáltatásmegtagadásos illetve cross-domain adatlopásos támadások célpontjává válhat. A biztonsági tanácsadó cég szerint a WebGL legnagyobb problémája, hogy az operációs rendszer és a hardver mélyebb rétegeit is elérhetővé teszi a web számára, de az egyes implementációkban is vannak biztonsági rések.

Haladás és jövő

A Khronos Group válaszában elismeri a Context által felvetett problémákat, azonban azt is hozzáteszi, hogy ez nem a WebGL szabvány hibája, a gondok sokkal mélyebbengyökereznek. A webes tartalmak GPU-alapú gyorsítása ugyanis minden esetben azzal jár, hogy meg kell nyitni a grafikus feldolgozóegységek programozhatóságát potenciálisan rosszindulatú alkalmazások felé is. Függetlenül attól, hogy ez Microsoft-technológiát vagy OpenGL-alapú WebGL-t jelent, a hardver alacsonyabb szintű programozhatóságára az illesztőprogramokat is fel kell készíteni.

A Khronos álláspontja szerint az eddig az operációs rendszer és a böngésző védelmét élvező driverek mindenképp kikerülnek a burokból, így a GPU szoftveres (és esetleg hardveres) "megkeményítése" (hardening) elkerülhetetlen. A szervezet úgy véli, még csak a legelején járunk, a "hardening" folyamatának, ahogy a böngészők WebGL implementációja is tartalmaz még hibákat. A csoport álláspontja szerint azonban a következő iterációkban a réseket betömik, a meghajtóprogramokat pedig felkészítik az esetleges támadások megfelelő kezelésére, így a Microsoft érvelése, miszerint a WebGL teljes megközelítése hibás, nem állja meg a helyét.

Korlátozott rés

A különböző shader-programok által végrehajtható, a teljes rendszert érintő funkciók kifejezetten korlátozottak, egyelőre gyakorlatilag screenshot-lopásra és szolgáltatásmegtagadásra használhatóak a GPU túlterhelése révén. A védelem hiányára jól jellemző, hogy CPU-alapú túlterhelés már most is működik, egyes weboldalak képesek használhatatlanra lassítani a számítógépet. A GPU-alapú túlterhelésre egyelőre gyors gyógyírt a meghajtó alaphelyzetbe állítása jelenti, az eredetileg extrém helyzetekre tervezett funkció azonban hosszútávon nem lehet megoldás, ráadásul csak korlátozottan használható - a Microsoft operációs rendszerei bizonyos számú újraindítást követően feladják a harcot és kék halállal elszállnak.

Python everywhere! Gyere Pythonozni a HWSW rendezvényeire! Megmutatjuk, hogy a Python nem csak a fejlesztők nyelve, hiszen egyszerűsége miatt bárhol és bárki használhatja.

A videomeghajtók szoftveres hardeningje azonban komoly árat követelhet a teljesítmény terén. Az expliciten megbízható szoftverekhez fejlesztett, a gyorsaságot a legfontosabb követelményként kezelő driverek sokszor még a stabilitást is feláldozzák a sebesség érdekében, a biztonság pedig eddig nem is volt értelmezhető szempont ezen a területen. A jövőben ez megváltozhat, a memóriaelérések figyelésétől kezdve az utasítások futásidejű validációjáig számos olyan funkció beépítésére lehet szükség, amely csökkenteni fogja az elérhető teljesítményt. Hosszú távon a hardening hardveres integrációjával a sebességcsökkenés kiküszöbölhető lesz, cserébe viszont bonyolultabb szilíciumlapkákra és esetleg magasabb fogyasztásra számíthatunk.

A GPU a tét

A WebGL és a Microsoft közötti kommunikációs csata nem véletlenül alakult ki, fontos kérdés ugyanis, hogy ki szolgáltatja a következő generációs, GPU-gyorsított web alaptechnológiáit. Míg a Khronos mögött álló cégek érdeke az, hogy ez egy nyílt, OpenGL-alapú szabvány legyen, a Microsoft természetesen a DirectX-alapú gyorsítást tartja egyedül elfogadhatónak. A tétet emeli, hogy a GPU-alapú grafikus gyorsítást célzó WebGL után már elkezdődött a webes heterogén (CPU-GPU), általános célú feldolgozásra vonatkozó WebCL szabvány kidolgozása, amely már másféle munkafolyamatok gyorsítására is alkalmas lesz.

A WebGL-OpenGL kötődés zavarosabbá teszi ugyanakkor az ANGLE-projekt, amelynek célja a WebGL által használt rendszerhívások DirectX alapú végrehajtása. A projekt meglehetősen jól halad, a megoldás már képes egyes, feketelistás OpenGL meghajtókat megkerülni és helyettük a megfelelő DirectX meghajtót használni. Tipikus példa erre az Nvidia Optimust használó noteszgépek esete, amelyek meghajtója egyelőre képtelen a WebGL helyes OpenGL-alapú feldolgozására, ezért mind a Firefox, mind a Chrome ANGLE-alapú végrehajtást használ.

a címlapról

bye-bye

5

Átalakul a Nokia menedzsmentje

2020. február 19. 13:44

Megszűnt a műszaki vezérigazgató-helyettesi pozíció, a cég próbál feljönni riválisaira.

Hirdetés

Python everywhere!

2020. február 19. 20:24

Gyere Pythonozni a HWSW rendezvényeire! Megmutatjuk, hogy a Python nem csak a fejlesztők nyelve, hiszen egyszerűsége miatt előszeretettel használják az üzemeltetők és DevOps szakemberek, tesztelők, illetve az adattudósok is, és elfut szinte bárhol, a mikrovezérlőktől egészen a böngészőkig.