Malware segítségével eltéríthetők a Google Password Managerben tárolt passkey-védett fiókok

Malware-rel eltéríthetők a Google Password Managerben tárolt passkey-ek

Biztonsági kutatók három új támadási technikát mutattak be, amelyek segítségével egy már kompromittált Windows számítógépen futó malware visszaélhet a Google Password Managerben szinkronizált passkey-ek mögötti hitelesítési infrastruktúrával.

A Palo Alto Networks Unit 42 kutatói által feltárt módszerek lehetővé tehetik, hogy egy támadó bizonyos körülmények között a felhasználó ujjlenyomatának, arcfelismerésének vagy Windows Hello PIN-kódjának tényleges használata nélkül hitelesítse magát passkey-jel védett szolgáltatásokban.

A három technikát a kutatók:

  • Pass-ta-key
  • Silver Pass-ta-key
  • Golden Pass-ta-key

néven mutatták be.

A támadások fokozatosan egyre komolyabb hozzáférést biztosítanak. Az első módszer még a kompromittált számítógépet használja hitelesítési eszközként, míg a legsúlyosabb variáció elméletileg lehetővé teheti a szinkronizált passkey-ekhez tartozó privát kulcsok visszafejtését és azok támadói infrastruktúrán történő használatát.

Fontos azonban hangsúlyozni: a kutatás nem bizonyította, hogy a WebAuthn vagy a passkey-ek alapjául szolgáló nyilvános kulcsú kriptográfia feltörhető lenne.

A támadás kiindulópontja minden bemutatott esetben az, hogy a támadó már képes kódot futtatni a felhasználó Windows rendszerén.

A sérülékeny pontot tehát nem maga a digitális aláírási algoritmus, hanem az azt körülvevő:

  • böngésző;
  • eszközregisztráció;
  • cloud authenticator;
  • kulcsszinkronizáció;
  • helyreállítási mechanizmus;
  • valamint felhasználó-ellenőrzési folyamat

jelenti. A Unit 42 szerint ez egy új, fontos támadási felületet hoz létre a jelszómentes hitelesítés terjedésével.

A passkey továbbra is lényegesen biztonságosabb a hagyományos jelszónál

A passkey-ek aszimmetrikus kriptográfiát alkalmaznak.

A regisztráció során létrejön egy kulcspár:

  • egy nyilvános kulcs, amelyet a szolgáltató tárol;
  • és egy privát kulcs, amelyet a hitelesítő kezel.

Bejelentkezéskor a szolgáltatás egy egyszer használatos kihívást küld, amelyet a privát kulccsal kell digitálisan aláírni.

A privát kulcsot a felhasználónak soha nem kell begépelnie, és az nem kerül át jelszóhoz hasonló újrafelhasználható titokként a weboldalhoz.

A WebAuthn szabvány ráadásul a credentialt egy adott Relying Partyhoz, vagyis szolgáltatáshoz köti. Egy például github.com számára létrehozott passkey nem használható egyszerűen egy támadó által létrehozott hasonló domainen.

A W3C WebAuthn specifikációja szerint a credential privát kulcsa az authenticatorhoz kapcsolódik, és normál működés során nem kerülhet más fél birtokába.

Ez az oka annak, hogy a passkey-ek rendkívül ellenállók:

  • klasszikus phishinggel;
  • credential stuffinggal;
  • password sprayinggel;
  • jelszóadatbázis-szivárgással;
  • és az egyszerű jelszólopással

szemben.

A most bemutatott támadások nem ezeket a tulajdonságokat törik meg.

A szinkronizált passkey bonyolultabb infrastruktúrát igényel

Az eszközhöz kötött passkey esetében viszonylag egyszerű a biztonsági modell: a privát kulcs az adott authenticatoron marad.

A Google Password Manager azonban lehetővé teszi, hogy ugyanazok a passkey-ek több engedélyezett eszközön is használhatók legyenek.

Ehhez a rendszernek képesnek kell lennie:

  • a credentialök titkosított szinkronizálására;
  • egy új eszköz hitelesítésére;
  • kulcsok biztonságos helyreállítására;
  • valamint annak eldöntésére, hogy valóban az engedélyezett felhasználó használja-e a credentialt.

A Google hivatalos dokumentációja szerint a Google Password Manager PIN többek között arra szolgál, hogy a felhasználó új eszközön hozzáférhessen passkey-eihez, igazolja saját személyazonosságát, és a titkosított adatokhoz még maga a Google se férhessen hozzá olvasható formában.

A Unit 42 kutatásának középpontjában éppen ez a kiegészítő infrastruktúra áll.

Hogyan működik a Google Cloud Authenticator?

A kutatók elemzése szerint egy támogatott Windows-rendszeren a Chrome az eszközt először regisztrálja a Google Cloud Authenticatorhoz.

A folyamat során több, egymástól eltérő szerepű kulcs vesz részt a hitelesítésben.

Az egyik az eszköz identitását bizonyítja a cloud szolgáltatás számára.

Egy másik kulcs a felhasználó helyi ellenőrzéséhez kapcsolódik, vagyis például ahhoz, hogy a Windows Hello segítségével PIN-kódot, ujjlenyomatot vagy arcfelismerést használt-e.

A Google rendszerének ezután biztonságosan hozzá kell férnie a szinkronizált credentialök titkosításához használt kulcsanyaghoz.

A Unit 42 ezt a központi elemet Security Domain Secretnek – SDS-nek nevezi.

A kutatás szerint ez egy 32 bájtos titok, amely kulcsszerepet játszik a Google Password Manager passkey-infrastruktúrájának titkosításában.

A malware először feltérképezheti, milyen passkey-eket használ az áldozat

A kutatók szerint a Chrome helyi profiljában található adatokból egy, a felhasználó jogosultságaival futó malware információkat szerezhet a szinkronizált WebAuthn credentialökről.

Ez önmagában még nem jelenti a privát kulcs megszerzését.

A támadó azonban olyan metaadatokat láthat, amelyek segíthetnek azonosítani:

  • mely szolgáltatásokhoz létezik passkey;
  • milyen felhasználónév kapcsolódik hozzá;
  • milyen credential identifier tartozik hozzá;
  • és milyen titkosított kulcsanyag található az eszközön.

Ez komoly felderítési értéket jelenthet.

Egy információlopó malware például megállapíthatja, hogy az áldozat rendelkezik-e passkey-jel:

  • kriptotőzsdéhez;
  • fejlesztői platformhoz;
  • vállalati azonosítási rendszerhez;
  • pénzügyi szolgáltatáshoz;
  • vagy más kiemelt célponthoz.

Ezután a támadó koncentrálhat a számára legértékesebb credentialre.

Pass-ta-key: a TPM-et használják a támadó helyett

Az első támadási technika a Pass-ta-key.

A Google Password Manager Windows alatt egy hardveresen védett eszközazonosító kulcsot használ annak igazolására, hogy egy kérés egy korábban regisztrált számítógépről érkezik.

A kulcs a Windows Cryptography API: Next Generation – CNG – infrastruktúráján keresztül kapcsolódhat a rendszer Trusted Platform Module-jához.

A TPM egyik legfontosabb biztonsági tulajdonsága, hogy a privát kulcsot nem kell olvasható formában exportálni.

Ez hatékony védelmet nyújt például az ellen, hogy egy támadó egyszerűen átmásolja a kulcsot egy másik számítógépre.

A Unit 42 azonban rámutatott egy fontos különbségre.

A malware-nek nem feltétlenül kell ellopnia a privát kulcsot.

Ha már a jogosult számítógépen fut, megpróbálhatja magát a legitim TPM-et rávenni arra, hogy a támadó által megadott adatot aláírja.

A kutatók szerint a Google Password Manager eszközazonosításához használt kulcs művelete nem minden esetben igényel Windows Hello-jóváhagyást.

Ez azt jelentheti, hogy az áldozat gépén futó malware a háttérben használja a hardveresen védett kulcsot anélkül, hogy:

  • PIN-kérés;
  • ujjlenyomat-ellenőrzés;
  • arcfelismerés;
  • vagy más látható felhasználói jóváhagyás

jelenne meg.

A Google Cloud Authenticator pedig egy valóban regisztrált eszköztől származó hiteles aláírást kap.

Van azonban egy fontos korlátozás: a UV bit

A Pass-ta-key első változata nem feltétlenül tudja azt bizonyítani, hogy maga a felhasználó is elvégezte a helyi ellenőrzést.

A WebAuthn authenticator data tartalmaz egy User Verified – UV – flaget.

Ez jelzi, hogy az authenticator ténylegesen elvégezte-e a felhasználó ellenőrzését.

A W3C specifikáció szerint a UV flag akkor lehet beállítva, ha a user verification ténylegesen megtörtént.

Ez lehet például:

  • biometrikus ellenőrzés;
  • eszköz-PIN;
  • Windows Hello;
  • vagy más authenticator által támogatott hitelesítési mechanizmus.

Ha egy szolgáltatás biztonsági követelménye szerint user verification szükséges, nem elegendő egyszerűen azt kérnie a böngészőtől.

A szervernek a visszakapott authenticator data alapján ellenőriznie is kell a UV flaget.

A Google WebAuthn fejlesztői dokumentációja ugyancsak figyelmeztet arra, hogy a UV bit jelzi, valóban megtörtént-e a felhasználó ellenőrzése.

Ez az első támadási variációval szemben fontos védelmi réteg.

A kutatók GitHubon és eBayen is tesztelték

A Unit 42 két különböző szolgáltatáson vizsgálta a Pass-ta-key működését.

A kutatás szerint a GitHub megfelelően ellenőrizte a user verification állapotát, és nem fogadta el azt az assertiont, amelynél nem történt meg a szükséges felhasználó-ellenőrzés.

Az eBay tesztelt implementációja ezzel szemben a kutatók szerint ugyan userVerification: "required" feltételt kért, de a szerveroldali ellenőrzés nem kezelte megfelelően a visszaérkező UV állapotot.

Az Unit 42 értesítette az eBayt, a problémát pedig a publikáció előtt javították.

Ez jól példázza, hogy a passkey-biztonság nem kizárólag az authenticatoron múlik.

A szolgáltatónak is helyesen kell ellenőriznie a WebAuthn-választ.

Silver Pass-ta-key: hamis user verification

A második támadás ennél lényegesen tovább megy.

A Silver Pass-ta-key célja, hogy megkerülje azt a védelmet is, amelyet a megfelelően ellenőrzött UV flag biztosít.

A kutatók azt vizsgálták, hogyan történik egy Windows eszköz első regisztrációja és újraregisztrációja a Google Cloud Authenticator rendszerében.

A Unit 42 szerint bizonyos állapotokban a támadó manipulálhatja a helyi enrolment információkat, és egy új onboarding folyamatot idézhet elő.

A támadás során egy támadó által kontrollált user-verification kulcs kerülhet regisztrálásra.

Ha a cloud infrastruktúra ezt legitim ellenőrzési kulcsként fogadja el, később a támadó olyan hitelesítési választ generálhat, amelynél a rendszer már úgy tekinti:

a felhasználó ellenőrzése megtörtént.

Ennek eredményeként a UV bit is beállítható.

Ez azért jelent jelentős különbséget, mert a megfelelően konfigurált szolgáltatás sem feltétlenül tudja megkülönböztetni a hamis ellenőrzési folyamatot a valóditól, ha az authenticator maga állítja, hogy user verification történt.

A Silver támadás túlélheti az eredeti fertőzést

Az első Pass-ta-key variáció egyik fontos korlátozása, hogy az áldozat számítógépét használja hitelesítési eszközként.

A Silver Pass-ta-key már komolyabb tartósságot adhat.

Ha a támadó saját kulcsát sikerül legitim user-verification kulcsként regisztrálnia, a későbbi hitelesítéshez már nem feltétlenül szükséges az eredeti számítógép folyamatos használata.

A Unit 42 ezért azt javasolja, hogy az authenticator-szolgáltatók egy új vagy lecserélt ellenőrzési kulcs esetében ne csak annak meglétét ellenőrizzék, hanem annak eredetét és attestation tulajdonságait is.

Az újraregisztrációt szintén magas kockázatú műveletként kell kezelni.

Golden Pass-ta-key: a szinkronizált passkey-ek fő titkának megszerzése

A kutatás legsúlyosabb támadási módszere a Golden Pass-ta-key.

Ennek célpontja közvetlenül a Security Domain Secret.

A Unit 42 szerint az SDS lényegében a Google-fiók szinkronizált passkey-ökoszisztémájának egyik központi titkosítási eleme.

A kutatók először azt fedezték fel, hogy bizonyos FIDO diagnosztikai logokban az SDS olvasható formában megjelenhetett.

A kutatás szerint ezt a konkrét logging problémát a Google a felelős bejelentést követően megszüntette.

A kutatók szerint azonban maradt egy mélyebb architekturális probléma:

amikor a Chrome helyreállítja vagy újra inicializálja a Google Password Manager passkey-infrastruktúráját, az SDS-nek valamilyen ponton elérhetővé kell válnia a böngésző folyamatának.

Ez azt jelenti, hogy átmenetileg a Chrome memóriájában is jelen lehet.

A malware a Chrome memóriájában keresheti a titkot

A Golden Pass-ta-key támadás során a malware a kutatók szerint új onboarding folyamatot idézhet elő.

Ezután figyelheti a passkey-infrastruktúrához kapcsolódó állapotváltozásokat, illetve a Chrome memóriáját.

Amikor a 32 bájtos SDS megjelenik a böngésző memóriájában, a támadó megpróbálhatja azt kinyerni.

Ha ez sikerül, a támadó össze tudja kapcsolni:

  • az SDS-t;
  • a Chrome helyi adatbázisából megszerzett titkosított WebAuthn-adatokkal.

A kutatók szerint ennek segítségével visszafejthetők lehetnek a szinkronizált passkey-ekhez kapcsolódó privát credential kulcsok.

Ez már gyökeresen más támadási modell.

A támadónak nem kell:

  • folyamatosan használnia az eredeti TPM-et;
  • fenntartania a malware-t az áldozat számítógépén;
  • vagy minden bejelentkezésnél a Google Cloud Authenticatoron keresztül hitelesítenie.

Az így megszerzett kulcsanyagot elméletileg saját authenticator-infrastruktúrába is áthelyezheti.

A Unit 42 a kutatás során egy kriptovaluta-szolgáltatás elleni hitelesítéssel is demonstrálta a koncepciót.

A kutatók szerint a jövőbeni credentialök is veszélybe kerülhetnek

A Golden Pass-ta-key egyik legaggasztóbb következménye az SDS életciklusával kapcsolatos.

A Unit 42 elemzése szerint ugyanaz a Security Domain Secret szolgálhat a security domainhez tartozó több szinkronizált credential védelmére.

A kutatók arra figyelmeztetnek, hogy amennyiben a támadó megszerzi ezt a titkot, az olyan passkey-ekre is veszélyt jelenthet, amelyek ugyanazon security domain alatt később kerülnek szinkronizálásra.

Ezt azonban fontos megfelelő fenntartással kezelni.

A Google nyilvános dokumentációja jelenleg nem részletezi olyan mélységben az SDS rotációs és visszavonási mechanizmusát, hogy kívülről teljes bizonyossággal megállapítható legyen a megszerzett SDS teljes élettartama.

Ezért a jövőbeni passkey-ekre vonatkozó tartós kockázat jelenleg a Unit 42 technikai elemzésének következtetése.

A Google Password Manager PIN megváltoztatása nem feltétlenül ugyanaz, mint a passkey-ek visszavonása

A Google lehetővé teszi a Google Password Manager PIN módosítását.

A hivatalos Chrome dokumentáció szerint ehhez a Google Password Manager beállításainál a Change Google Password Manager PIN lehetőség használható.

A dokumentáció azt is lehetővé teszi, hogy a felhasználó végső esetben teljesen resetelje Google Password Manager passkey-eit.

Ez minden tárolt passkey törlésével jár, így azokat később az egyes szolgáltatásokhoz újra létre kell hozni.

A Google dokumentációja azonban nem állítja, hogy egy egyszerű PIN-módosítás automatikusan új SDS-t generálna.

Ezért egy feltételezett privát kulcs kompromittálódása esetén nem célszerű kizárólag a Password Manager PIN cseréjére támaszkodni.

A legbiztosabb módszer: a passkey visszavonása magánál a szolgáltatónál

Egy passkey hitelesítésének másik oldala mindig az adott szolgáltató.

A webhely az accountban tárolja a passkey nyilvános kulcsához tartozó credential recordot, és ezzel ellenőrzi a későbbi digitális aláírást. A WebAuthn szabvány lehetővé teszi ezeknek a credential recordoknak a törlését.

Ezért ha egy passkey privát kulcsa potenciálisan kompromittálódott, a legfontosabb lépés az, hogy azt magánál az érintett szolgáltatásnál is vissza kell vonni.

Ha például egy GitHubhoz tartozó passkey került veszélybe, akkor azt a GitHub-fiókban kell törölni.

A régi privát kulccsal készített aláírás így többé nem felel meg egy aktív credentialnek.

Nem távoli támadásról van szó

A kutatás egyik legfontosabb korlátozása, hogy mindhárom támadási útvonal post-compromise technika.

A támadó először valamilyen más módon malware-t kell hogy futtasson az áldozat Windows-rendszerén.

Ez történhet például:

  • phishing;
  • fertőzött program;
  • böngészős vagy alkalmazássérülékenység;
  • supply-chain támadás;
  • vagy más kezdeti hozzáférési módszer

eredményeként.

A Unit 42 jelenleg nem közölt bizonyítékot arra, hogy a Pass-ta-key technikákat valódi támadásokban alkalmaznák.

A kutatók nem kapcsolták azokat ismert malware-családhoz vagy threat actorhoz, és nyilvános CVE-azonosító sem kapcsolódik a teljes támadási lánchoz.

Ez tehát nem azt jelenti, hogy valaki az internetről egyszerűen „ellophatja” bármely Google Password Managerben tárolt passkey-t.

A támadónak előbb kompromittálnia kell a végpontot.

Miért fontos mégis a kutatás?

Az információlopó malware-ek ma már rendszeresen próbálják megszerezni:

  • böngészőben tárolt jelszavakat;
  • session cookie-kat;
  • OAuth tokeneket;
  • kriptotárcákat;
  • hitelesítési adatokat.

A passkey-ek terjedése csökkenti a hagyományos credential theft értékét.

Egy jelszó hiányában nincs mit egyszerűen kimásolni a böngésző adatbázisából és később újra felhasználni.

Ez azonban gazdasági ösztönzőt teremt a támadók számára arra, hogy más rétegeket kezdjenek célba venni.

A most publikált kutatás azt mutatja, hogy ilyen új célpont lehet:

  • az eszköz trust relationshipje;
  • a TPM által kezelt identitáskulcs;
  • a passkey onboarding;
  • a recovery mechanizmus;
  • vagy a szinkronizációs master secret.

Vagyis a credentiallopás nem feltétlenül tűnik el.

Átalakul.

Mit kell tenniük a WebAuthn-t használó szolgáltatóknak?

Azoknak a szervezeteknek, amelyek saját alkalmazásaikban passkey-alapú bejelentkezést biztosítanak, érdemes felülvizsgálniuk a WebAuthn implementáció szerveroldali részét.

Magas biztonsági követelmény esetén:

userVerification: "required"

beállítás használata indokolt.

De ez önmagában nem elegendő.

A szervernek a visszaérkező authenticator data alapján azt is ellenőriznie kell, hogy a UV flag ténylegesen be van-e állítva.

A WebAuthn szabvány és a Google fejlesztői útmutatója is egyértelműen különbséget tesz a user verification igénylése és annak tényleges megtörténte között.

A magas kockázatú felhasználóknál érdemes lehet eszközhöz kötött hardverkulcsot használni

A szinkronizált passkey-ek egyik legnagyobb előnye a használhatóság.

Ha a felhasználó új telefont vagy számítógépet kap, credentialjei helyreállíthatók és több engedélyezett eszközön használhatók.

Ez azonban szükségszerűen összetettebb infrastruktúrát jelent.

Kiemelt kockázatú fiókok esetében ezért továbbra is lehet létjogosultsága olyan device-bound hardveres security keyeknek, amelyek privát kulcsai nem szinkronizálhatók felhőn keresztül más eszközre.

Ez különösen megfontolandó:

  • rendszergazdák;
  • privileged accountok;
  • pénzügyi munkatársak;
  • fejlesztők;
  • kódtárak kezelői;
  • vezetők;
  • kritikus infrastruktúrához hozzáférő személyek

esetében.

Ez nem jelenti azt, hogy a szinkronizált passkey-ek általánosan nem biztonságosak.

A két modell egyszerűen eltérő kompromisszumot kínál a biztonság és a hordozhatóság között.

Mit tegyen a felhasználó, ha malware-fertőzésre gyanakszik?

Ha egy olyan Windows-számítógép fertőződhetett meg, amelyen Google Password Manager passkey-ek találhatók, az esetet nem célszerű pusztán jelszócserével lezárni.

A biztonságosabb megközelítés:

  • az érintett gép izolálása;
  • szükség esetén újratelepítése vagy megbízható állapotból történő helyreállítása;
  • a Google-fiók aktív munkameneteinek és eszközeinek átvizsgálása;
  • ismeretlen eszközök eltávolítása;
  • kritikus fiókok passkey-einek ellenőrzése;
  • szükség esetén a passkey-ek közvetlen visszavonása;
  • majd új credentialök létrehozása egy bizonyítottan tiszta eszközről.

A Google Password Manager szükség esetén valamennyi tárolt passkey resetelését is lehetővé teszi, amely után azokat az érintett szolgáltatásokhoz újra létre kell hozni.

A jelszómentes hitelesítés nem jelent támadhatatlanságot

A Unit 42 kutatása nem cáfolja a passkey-ek egyik legfontosabb ígéretét.

A passkey továbbra is jelentősen erősebb védelmet biztosít a klasszikus credentialalapú támadásokkal szemben, mint a hagyományos jelszó.

Nincs:

  • újrafelhasználható jelszó;
  • egyszerűen ellopható shared secret;
  • klasszikus phishing oldalon begépelhető credential;
  • vagy több szolgáltatás között újrahasznosítható titok.

A támadási felület azonban egyre inkább az infrastruktúra más részei felé tolódik.

A szinkronizált passkey biztonsága már nem kizárólag a kriptográfián múlik.

Függ:

  • az endpoint biztonságától;
  • a böngésző implementációjától;
  • a hardveres kulcskezeléstől;
  • az onboarding folyamatoktól;
  • a recovery mechanizmusoktól;
  • a cloud authenticator működésétől;
  • és végül attól is, hogy maga a weboldal megfelelően ellenőrzi-e a WebAuthn-választ.

A Pass-ta-key kutatás legfontosabb üzenete ezért nem az, hogy „a passkey feltörhető”.

Sokkal inkább az, hogy a legerősebb kriptográfiai hitelesítés is csak annyira biztonságos, mint a teljes infrastruktúra, amely létrehozza, tárolja, szinkronizálja, helyreállítja és használja a hozzá tartozó kulcsokat.

Ahogy a jelszómentes hitelesítés egyre szélesebb körben terjed, várhatóan a kiberbűnözők figyelme is egyre inkább ezekre a periférikus trust boundary-kre helyeződik át.

A jelszó ellopásának korszaka tehát lassan háttérbe szorulhat.

A hitelesítési infrastruktúra elleni támadásoké viszont most kezdődhet igazán.

Az oldal tartalma nem másolható!