Chrome 77 was de eerste versie die de vernieuwde site-isolatie gebruikte, schreven Google-ontwikkelaars Alex Moshchuk en Łukasz Anforowic onlangs in een Chromium-blogpost. Inmiddels is twee weken geleden Chrome 78 uitgekomen en daarbij schreven de ontwikkelaars over de nieuwe technologie die een versie eerder zijn intrede maakte. "Site-isolatie kan zelfs ernstige aanvallen waarbij de rendering kwetsbaar wordt door een beveiligingsbug afslaan, zoals geheugencorruptie of Universal Cross-Site Scripting (UXSS) fouten."
De weg van Meltdown naar Chrome 77
Zoals de naam al doet vermoeden, zorgt site-isolatie ervoor dat elk Blink-renderingsproces documenten van één enkele website uitvoert, zodat het proces is geïsoleerd van de rendering van andere sites. Het idee is dat als een malafide website een kwetsbaarheid gebruikt, de aanvallers geen andere browserdata kunnen aanspreken, laten we zeggen waardevolle zakelijke gegevens, buiten hun eigen malafide site om.
Het begin van site-isolatie werd al medio 2017 geïntroduceerd en in 2018 volledig ingeschakeld, maar het primaire doel van de technologie was toen om te beschermen tegen Spectre-gerelateerde aanvallen, de browserkwetsbaarheid die gepaard ging met chipkwetsbaarheid Meltdown begin 2017. Maar dat is nu veranderd en site-isolatie is nu een veel breder beveiligingsmiddel.
Gegevens afgeschermd
"Stel je voor dat een aanvaller een geheugenfout vindt in Chrome's renderingengine Blink en daar een exploit voor maakt", schreven Moshchuk en Anforowicz. "Door de bug kunnen ze wellicht willekeurige native code uitvoeren in het gesandboxte renderingsproces, ongehinderd door beveiligingscontrolemechanismes in Blink. Maar Chrome's browserproces ziet nu welk renderingsproces is toegewezen en kan beperken welke cookies, wachtwoorden en sitegegevens het proces mag ontvangen. Dat maakt het veel lastiger om cross-site data te stelen."
Als site-isolatie van de renderer is geactiveerd, kunnen cookies en wachtwoorden dus alleen worden aangesproken door de processen die zijn vergrendeld aan overeenkomende sites. En daar was een aanleiding voor. "Ervaringen uit het verleden leren ons dat er in potentie beveiligingsbugs zullen zitten in toekomstige releases van Chrome", zegt het Chromium-team met Google-ontwikkelaars in de documentatie.
"Er waren tien potentieel bruikbare bugs in renderingscomponenten in Chrome 69, vijf in Chrome 70, dertien in Chrome 71, dertien in Chrome 72 en 15 in Chrome 73. Het volume aan bugs blijft gelijk, ondanks jarenlange investering in ontwikkeltraining, fuzzing, bountyprogramma's, etc. Besef ook dat dit alleen alleen de bugs zijn die bij ons zijn gemeld of ontdekt door ons team."
Chrome op Android
Justin Schuh, Google-engineer en chef van Chrome-beveiliging, liet eerder dit jaar al doorschemeren dat zoiets eraan zat te komen, in een tweet die repte over beveiliging voor aangevallen renderers. Schuh zei erbij dat er werd gewerkt aan site-isolatie voor Chrome op Android, maar dat dit meer werk vereist vanwege de belasting van resources. Dat is een van de dingen die je inlevert met site-isolatie, aangezien het werkgeheugen tot op dertien procent zwaarder wordt belast.
Technical highlights: The current version defends only against data leakage attacks (e.g. Spectre), but work is und... twitter.com/i/web/status/1...
— Justin Schuh ???? (@justinschuh)11 July 2018
De Android-versie bevat sinds Chrome 77 ook site-isolatie, zeiden Moshchuk en Anforowicz, maar de technologie wordt niet hetzelfde ingezet als op de pc. "In tegenstelling tot desktopplatforms, waar we alle sites isoleren, gebruikt Android een afgeslankte versie die sites met een hogere waarde [voor aanvallers en gebruikers] isoleert, waar gebruikers inloggen met een wachtwoord. Dit beschermt de gevoelige gegevens waar de meeste mensen op letten, zoals banksites en online winkels, terwijl minder kritieke sites gegevens kunnen delen."
De wachtwoordtrigger voor site-isolatie is ingeschakeld voor vrijwel alle Android-apparaten met tenminste 2GB aan werkgeheugen (de ontwikkelaars spreken over 99 procent) . Als je meer technische details wilt, de ontwikkelaars van Google schreven een uitgebreid verslag (PDF) die ze eerder dit jaar op beveiligingscongres USENIX presenteerden.
Isolatie in Opera, Edge en Firefox
Ook andere browsers gebruiken deze feature. Neem bijvoorbeeld Opera, dat het Chromium-project gebruikt voor zijn browser. De meeste andere browsers gebruiken nu ook Chromium, waaronder Microsofts Edge. Als de stabiele versie daarvan eindelijk verschijnt, de Chromium-versie van Edge verkeert nog steeds in bèta, zal site-isolatie ongetwijfeld een van de debuutfeatures zijn.
Mozilla kondigde in februari Project Fission aan met soortgelijke technologie, maar leverde geen roadmap. Het is, los van een aankondigende nieuwsbrief die nooit gevolg kreeg, onduidelijk of Mozilla daar vooruitgang mee heeft geboekt, maar ontwikkelaars hebben er wel voor gezorgd dat Firefox minder werkgeheugen gebruikt voor een doorsnee proces, wat een noodzakelijke stap is als je site-isolatie wilt inzetten zonder ervoor te zorgen dat de browser het systeem te zwaar belast.
Google blijft, niet geheel verrassend, hameren op de meerwaarde van site-isolatie. "Ik overdrijf niet als ik site-isolatie de grootste vooruitgang in browserbeveiliging noem sinds de komst van de sandbox", tweette Schuh in oktober. "De garanties die een browser kan afleveren zijn fundamenteel veranderd en dit zet de sterkte beveiligings-baseline of welk platform dan ook."
Reageer
Preview