Sammanfattning: Osynliga hot kan enkelt förvandla ett Chrome-tillägg till en RCE på värdnivå

Sedan de introducerades har webbläsartillägg behandlats som lätta produktivitetsverktyg – ofarliga tillägg som befinner sig någonstans mellan bokmärken och inställningar. De installeras slentrianmässigt, uppdateras tyst och granskas sällan när de väl blivit en del av en användares dagliga arbetsflöde.

Dessutom uppfattas webbläsartillägg ofta som låggradiga säkerhetsrisker eftersom de är starkt isolerade från det underliggande systemet av webbläsaren och fungerar i en mycket sandlådemiljö inom webbläsarens gränser.

Detta är ett föråldrat antagande, eftersom denna forskning visar hur även ett tillägg helt utan behörigheter kan kringgå webbläsarens sandlåda och leda till installation av skadlig kod direkt på datorn.

LayerX-forskare har upptäckt hur valfritt webbläsartillägg, till och med en utan några åtkomstbehörigheter alls kan vara används för att installera skadlig kod på målvärden. Allt en angripare behöver göra är att lägga till ett osynligt skript till en legitim nedladdning, som körs när nedladdningen körs. Detta resulterar i att användare infekterar sig själva med skadlig kod för fjärrkörning av kod, utan att någonsin märka det. 

Eftersom denna exploateringsvektor kräver inga särskilda behörigheter av tilläggen, kan den användas av alla skadliga tillägg, exponera praktiskt taget alla tilläggsanvändare till utnyttjande.

Den blinda fläcken vi började med

Chrome-tillägg fungerar under en förbisedd säkerhetsmodell. Innehållsskript, aktiverade som standard, är utformade för att göra en sak mycket bra: komma åt och ändra webbsidor. Detta är inte en bugg eller felkonfiguration, utan snarare en central del av tilläggens modus operandi. Alla tillägg som körs på en sida har i praktiken samma åtkomstnivå som sidans eget JavaScript.

Vid första anblicken verkar detta rimligt. Tillägg behöver modifiera sidor för att lägga till funktioner, injicera UI-element eller förbättra arbetsflöden. Faktum är att detta är hela deras designmål.

Samma funktion har dock en förbehållsregel. Om ett tillägg kan göra vad en webbplats kan göra, kan ett skadligt tillägg förvandla vilken legitim webbplats som helst till en attackyta, osynligt och i stor skala. Detta var utgångspunkten för vår undersökning.

När varje nedladdning blir en attackvektor

Vi ställde en enkel fråga: vilken är den mest värdefulla åtgärden en illvillig aktör kan vidta inifrån webbläsaren utan att begära behörigheter som skulle väcka misstankar?

Svaret är naturligtvis kodkörning.

Genom att missbruka den obegränsade karaktären hos innehållsskript har vi byggt ett tillägg som tyst ändrar varje filnedladdning som initieras från en webbplats. Användaren klickar på en legitim nedladdningslänk på en betrodd domän med hjälp av en webbläsare de litar på. Filen laddas ner exakt som förväntat.

Men det är inte det enda som händer.

Utan att den ursprungliga applikationen går sönder, utan att utlösa varningar och utan att kräva eventuella ytterligare behörigheter, tillägget lägger till angriparkontrollerad kod till varje nedladdad körbar fil. Det ursprungliga programmet körs fortfarande normalt, och användaren ser exakt vad de förväntar sig. Därifrån är det game over.



I vår demonstration öppnar nyttolasten helt enkelt kalkylatorappen som en visuell indikator. I ett verkligt scenario skulle den kunna möjliggöra persistens, lateral förflyttning, dataexfiltrering eller fullständig fjärrstyrning av maskinen.

Medan webbläsartillägg förmodligen är isolerade från det underliggande filsystemet och i sandlådan av webbläsaren, tillåter den här tekniken tillägget att bryta sig ut ur sandlådan. Vid denna tidpunkt fungerar webbläsaren inte längre som en gräns. Tillägget blir i praktiken en fjärråtkomsttrojan.

POC-video:

Varför detta är särskilt farligt

Det som gör denna attack oroande är dess osynlighet:

  • Det kräver inga misstänkta behörigheter.
  • Den utlöser inga webbläsarvarningar.
  • Den modifierar inte den ursprungliga webbplatsen på något mänskligt synligt sätt.
  • Nedladdningar ser normala ut för användaren.

Alla tillägg, inklusive tidigare legitima sådana, skulle kunna introducera detta beteende i en uppdatering, och användarna skulle inte ha någon tillförlitlig signal om att något hade ändrats.

Denna attack bygger inte på nätfiske eller användarförvirring. Den utnyttjar en svag länk i webbläsarens förtroendekedja. Användare litar på sin webbläsare och de litar på vissa webbplatser, men om de inte kan lita på deras tillägg kan varken webbläsaren eller webbplatsen effektivt skydda användaren. Att installera ett otillförlitligt tillägg är funktionellt likvärdigt med att installera skadlig kod.

Dessutom kan denna attack inte upptäckas med proxy-/VPN-baserade verktyg, eftersom den åtkomna domänen är helt legitim och ingen fjärrserver kontaktas för att hämta den skadliga koden. Dessutom är attacken helt webbläsarövergripande och kan påverka alla Chromium-baserade eller Mozilla-baserade webbläsare.

Upplysningar och branschrespons

Vi rapporterade våra resultat till Google och Mozilla genom deras program för sårbarhetsrapportering, enligt rutiner för "ansvarsfull rapportering".

Google uppgav att "Social engineering-attacker ligger utanför Chrome-hotmodellens räckvidd." 

Mozilla svarade att "När du ger ett tillägg åtkomst till alla webbplatser kan det ändra innehållet på webbplatser, inklusive att ändra länkarnas destinationer."

Båda påståendena är tekniskt korrekta, men de belyser också den kärnfråga som denna forskning syftar till att belysa: en tillägg, genom att ladda ner den, ges enorm implicit makt. 

Den nuvarande säkerhetsmodellen för tillägg förklarar inte ordentligt för användaren vilken inverkan ett opålitligt tillägg har på deras webbupplevelse och säkerheten för hela deras system.

Det finns otaliga sätt på vilka tillägg kan utnyttjas för att kringgå användarnas förtroende.

Webbläsaren har i tysthet blivit en primär exekveringsmiljö, en distributionskanal och ett kontrollplan, samtidigt som den i stort sett förblir oövervakad av traditionella säkerhetsverktyg. Tillägg befinner sig i skärningspunkten mellan användarförtroende och påverkan på systemnivå.

Hur användare och företag kan skydda sig själva

Denna typ av exploatering visar begränsningarna hos den traditionella säkerhetsmetoden för tillägg, som baseras på extern analys av tilläggsparametrar, baserat på dess behörigheter, rykte etc. Eftersom det inte finns några behörigheter alls skulle den troligtvis få en låg riskpoäng. 

Endast genom att övervaka tilläggets faktiska beteende kan dess skadliga avsikter avslöjas. Det innebär att användare och organisationer måste gå från statisk analys av tillägg till aktiv, beteendebaserad analys, precis som de gör för skadlig kod.


Källa: Roy Paz och Aviad Gispan, som bidragit till denna forskning.