A Google bemutatja a Spectre biztonsági réseinek kihasználását a JavaScript használatával egy böngészőben

A Google bemutatta néhány nappal ezelőtt különféle prototípusok amelyek bemutatják a sebezhetőségek kihasználásának lehetőségét a Spectre osztályba, amikor JavaScript kódot hajt végre egy böngészőben, anélkül, hogy végigvenné a fent hozzáadott biztonsági módszereket.

A kihasználásokkal hozzáférhető a folyamat memóriája amely webtartalmat dolgoz fel az aktuális fülön. A kihasználás működésének teszteléséhez elindították a kiszivárgó oldal webhelyét, és a művelet logikáját leíró kódot feltették a GitHub-ra.

A javasolt prototípust arra tervezték támadja meg a rendszereket Intel Core i7-6500U processzorok Linux és Chrome 88 környezetben, bár ez nem zárja ki, hogy változtatásokat lehessen eszközölni más környezetekben.

A működési módszer nem specifikus a feldolgozók Intel: megfelelő adaptáció után, Megerősítették, hogy a kihasználás harmadik féltől származó processzorokkal rendelkező rendszereken működik, ideértve az ARM architektúrán alapuló Apple M1-et is. Kisebb módosítások után a kihasználás más operációs rendszereken és más, a Chromium motoron alapuló böngészőkön is működik.

A szabványos Chrome 88 és Intel Skylake processzorokon alapuló környezetben adatszivárgást értünk el a webes tartalom megjelenítéséért felelős folyamatból a jelenlegi Chrome fülön (renderelési folyamat), másodpercenként 1 kilobyte sebességgel. Ezenkívül alternatív prototípusokat is kifejlesztettek, például egy kihasználást, amely a csökkent stabilitás árán lehetővé teszi a szivárgási sebesség 8 kB / s-ra növelését a performance.now () időzítő használatával 5 mikrosekundum (0.005 milliszekundum) pontossággal. ). Olyan változatot is kifejlesztettek, amely egy milliszekundumos időzítő pontossággal működött, és amely egy másik folyamat memóriájához való hozzáférés megszervezésére szolgál, körülbelül 60 bájt / másodperc sebességgel.

A közzétett bemutató kód három részből áll:

  • Az első rész kalibrálja az időzítőt a futási idő becsléséhez a processzor gyorsítótárában maradt adatok visszakereséséhez szükséges műveletek közül a CPU utasításainak spekulatív végrehajtása eredményeként.
  • A második rész Meghatározza a JavaScript tömb lefoglalásakor használt memória elrendezést.
  • A harmadik rész közvetlenül kihasználja a Spectre biztonsági rést a memóriatartalom meghatározásához bizonyos folyamatok spekulatív végrehajtásának feltételeinek megteremtése eredményeként, amelyek eredményét a processzor elveti a sikertelen előrejelzés meghatározása után, de a végrehajtás nyomai rendeződnek a megosztott gyorsítótárban, és a a gyorsítótár tartalmának meghatározására szolgáló módszerek külső csatornák segítségével, amelyek elemzik a gyorsítótárazott és nem gyorsítótárazott adatok hozzáférési idejének változását.

A javasolt kizsákmányolási technika kiküszöböli a nagy pontosságú időzítéseket elérhető a performance.now () API-n keresztül és a SharedArrayBuffer típus támogatása nélkül, amely lehetővé teszi tömbök létrehozását a megosztott memóriában.

A kihasználás magában foglalja a Spectre eszközt, amely ellenőrzött spekulatív kódfuttatást eredményez, és egy oldalsó csatorna szivárgáselemzőt, amely meghatározza, hogy a spekulatív végrehajtás során milyen adatok kerültek gyorsítótárba.

A modult egy JavaScript tömb segítségével valósítják meg, amelyben a pufferhatáron kívül eső területre próbálnak belépni, amely a fordító által hozzáadott puffer méretellenőrzés jelenléte miatt befolyásolja az elágazás-előrejelző blokk állapotát (a processzor spekulatív módon idő előtt végrehajt hozzáférést, de ellenőrzés után visszaállítja az állapotot).

A gyorsítótár-tartalom elemzéséhez elégtelen időzítő pontosság mellett olyan eljárást javasoltak, amely átveri a processzorokban használt Tree-PLRU gyorsítótár-adatok kilökődésének stratégiáját, és lehetővé teszi a ciklusok számának növelésével az érték visszaadásakor a különbség időtartamának jelentős növelését. a gyorsítótárból és ha nincs érték a gyorsítótárban.

A Google közzétette az erőforrás prototípusát, hogy bemutassa a támadások megvalósíthatóságát Spectre osztály sebezhetőségének felhasználásával és ösztönözze a webfejlesztőket olyan technikák használatára, amelyek minimalizálják az ilyen támadások kockázatát.

A Google ugyanakkor úgy véli, hogy a javasolt prototípus jelentős felülvizsgálata nélkül lehetetlen olyan univerzális kiaknázásokat létrehozni, amelyek nemcsak demonstrációra, hanem széleskörű használatra is készek.

forrás: https://security.googleblog.com


Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: Miguel Ángel Gatón
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.