Skoči na vsebino

Vdor v Lastpass – kako ukrepati?

Lastpass je priljubljen upravljalnik gesel, ki trezor z gesli (angl. password vault) uporabnikov hrani na strežnikih podjetja. Lansko leto je Lastpass doživel pomemben varnostni incident, pri katerem so napadalci ukradli različne podatke uporabnikov iz strežnikov podjetja. Lastpass je sicer objavil navodila uporabnikom za ukrepanje, vendar so ta morda slabo razumljiva oz. v določenih elementih tudi površna, zato v nadaljevanju podajamo odgovore na nekaj vprašanj, ki so uporabnikom lahko v pomoč pri morebitnem ukrepanju.

Do katerih podatkov so prišli napadalci?

Točen nabor podatkov je razviden na spletni strani https://support.lastpass.com/help/what-data-was-accessed. Nabor ukradenih podatkov je zelo obsežen, med bolj pomembne podatke pa spadajo:

  • Trezor z gesli (vsi trezorji, ki so bili kreirani do 22.9.2022)
  • Email naslov uporabnika
  • Uporabniško ime
  • Fizični naslov plačnika
  • Telefonska številka
  • Število PBKDF2 iteracij (gl. razlago spodaj)

Kaj se nahaja v trezorju gesel?

V trezorju gesel se poleg uporabniških imen in gesel nahajajo tudi zapiski in več metapodatkov o geslih. Najpomembnejši elementi v trezorju so sicer zašifrirani (npr. uporabniška imena, gesla, zapiski), žal pa niso zašifrirani čisto vsi podatki.
Med pomembnejše podatke, ki niso zašifrirani, spadajo:

  • URL naslov, za katero je shranjeno geslo (ta podatek je zgolj zapisan v hex kodiranju, ni pa zašifriran)
  • Čas kreiranja gesla
  • Čas zadnje spremembe gesla
  • Čas zadnje uporabe gesla
  • Ali je geslo med priljubljenimi
  • Ali je bilo geslo generirano samodejno
last_modified: 1678298991
url="68747470733a2f2f7777772e70617970616c2e636f2e756b2f73686f7070696e672f"
u="!+0wzcxylWFY48+h+3tNO4Q==|m8qM2feJTFnJA3L6HueS/fRA+1kSGyxeXYK8diaiC74="
Izsek iz Lastpass trezorja za eno od shranjenih gesel

Kako so gesla v trezorju zašifrirana?

Gesla v trezorju so zašifrirana s standardnimi šifrirnimi algoritmi. Za generiranje šifrirnega ključa se uporablja funkcija PBKDF2 s sledečimi parametri:

Šifrirni ključ = PBKDF2(SHA-256, glavno geslo, uporabniško ime, število iteracij, dolžina ključa)

PBKDF2 (Password-Based Key Derivarion Function) je standardna šifrirna funkcija, katere izhod je šifrirni ključ želene dolžine (parameter dolžina ključa). Kot ključna vhodna podatka pri generiranju tega ključa sta uporabljena glavno geslo (angl. master password) in uporabniško ime, nad katerima se ponavljajoče (parameter število iteracij) izvršuje zgoščevalna funkcija (v tem primeru SHA-256).

Glede na to, da so napadalci pridobili dostop do uporabniških imen, je varnost šifrirnega ključa (in posledično celotnega trezorja) odvisna zgolj od glavnega gesla in števila iteracij (gl. razlago spodaj).

Na kakšen način lahko napadalci odšifrirajo gesla?

Napadalci poznajo vse parametre za določitev šifrirnega ključa (trezor gesel, uporabniško ime, število iteracij, dolžina ključa), razen glavnega gesla. To pomeni, da lahko za veliko število različnih gesel izračunajo šifrirne ključe ter za vsak izračunan ključ preverijo, ali odšifrira podatke. Ta postopek imenujemo razbijanje gesel (angl. password cracking) in običajno poteka na dva načina: pri prvem napadalci preizkušajo obsežne sezname znanih gesel in variacije le-teh (t.i. napad s slovarjem, angl. dictionacy attack), pri drugem pa sproti zgenerirajo vsa možna gesla, ki ustrezajo določenim kriterijem – npr. nize, ki so dolgi 8 znakov in vsebujejo vse različne male črke in številke (t.i. napad z grobo silo, angl. bruteforce attack).

Kako vpliva število PBKDF2 iteracij na varnost trezorja?

Število iteracij določa, kolikokrat se ponovi algoritem za izračun šifrirnega ključa, in je premo sorazmerno s težavnostjo oz. časom, ki je potrebno za razbitje gesla. To pomeni, da 2x večje število iteracij ob isti kompleksnosti gesla pomeni 2x daljši čas, ki ga napadalci potrebujejo za razbitje gesla. Organizacija OWASP priporoča 600.000 iteracij pri uporabi funkcije PBKDF2-HMAC-SHA256. Slednje je tudi privzeto število iteracij za vse nove Lastpass uporabnike, kar pa je Lastpass spremenil šele pred časom (po vdoru).

V času kraje podatkov je bilo privzeto število iteracij Lastpass trezorjev 100.100. Nekateri uporabniki pa so poročali, da so imeli nastavljeno precej manjše število iteracij, od 5000, 500 pa vse do zgolj 1 iteracije. Po nekaterih podatkih naj bi bilo število iteracij odvisno predvsem od starosti Lastpass računa. Pri Lastpass so namreč tekom let povečevali število privzetih iteracij (nazadnje leta 2018 na 100.100), pri tem pa tega števila niso sistematično nastavili tudi za vse obstoječe račune. Trezorje gesel, ki so bili zaščiteni s 500 iteracijami, je tako možno razbiti 2000x hitreje kot trezorje, ki so bili zaščiteni s 100.100 iteracijami.

Koliko časa potrebujejo napadalci za razbitje glavnega gesla?

Pri 1password so izračunali (op.: 1password in Lastpass sta neposredna konkurenta), da preizkušanje vseh možnih različnih gesel z entropijo 32 bitov pri 100.000 PBKDF2 iteracijah stane 6 USD (op.: entropija je merilo kompleksnosti). Vsak dodatni bit entropije gesla poveča strošek za 2x. To pomeni, da stane razbitje gesla z entropijo 40 bitov v povprečju 770 USD, pri geslu z entropijo 50 bitov pa strošek naraste na 786.000 USD (op.: v povprečju je potrebno preskusiti samo polovico vseh možnih gesel, zato je številka pol manjša). V primeru nižjega števila iteracij se ta strošek temu sorazmerno zmanjša, npr. za 50 bitno geslo ob 500 iteracijah zgolj na 4000 USD.

Čas za razbitje glavnega gesla je tako odvisen predvsem od kompleksnosti (entropije) le-tega, slednje pa je neposredno odvisno tako od dolžine gesla kot od uporabljenih znakov. 9 mestno geslo, ki vsebuje male črke, velike črke in številke, ter je zgenerirano povsem naključno, ima entropijo približno 47 bitov, če pa dodamo še en posebni znak, pa ta naraste na 59 bitov (glede na zgornji izračun bi razbijanje takega gesla napadalce v povprečju stalo preko 400 milijonov USD). Vendar pa je potrebno biti pri tem izračunu previden. Običajni uporabniki si namreč zelo težko zapomnijo 9 mestno povsem naključno geslo. Dostikrat si za osnovo gesla izberejo neko besedo ali stavčno zvezo, ki jo na nek način modificirajo in dopolnijo, npr. z zamenjavo črk (3 namesto e, ! namesto l ipd.) ter podaljšanjem (npr. z dodanim številom 123 na koncu). Slednje pa pomeni, da geslo ni zgenerirano povsem naključno, ampak vsebuje predvidljive elemente, zaradi česar se lahko kompleksnost izredno zmanjša (tudi za 10 bitov ali več).

Kako naj uporabniki Lastpass ukrepajo?

Najbolj varen ukrep je, da uporabniki predvidevajo, da lahko napadalci razbijejo glavno geslo in s tem odšifrirajo vsa gesla, ki so shranjena v trezorju gesel. V tem primeru je edini ustrezni ukrep ponastavitev čisto vseh gesel ter drugih avtentikatorjev, ki so shranjeni v trezorju gesel. Poleg tega je potrebno v nastavitvah spremeniti glavno geslo in nastaviti čim večje število PBKDF2 iteracij (priporočamo vsaj 600.000). Za dodatno zaščito spletnih računov priporočamo nastavitev več-faktorske avtentikacije povsod, kjer je to mogoče.

V primeru, da je bil trezor ščiten z zelo dolgim, kompleksnim (preko 60 bitov) in unikatnim geslom (se pravi, da se tega gesla ni uporabljalo nikjer drugje), je verjetnost razbitja gesla relativno majhna in malo verjetna. Pri odločitvi o ukrepih naj uporabniki upoštevajo tudi vrednost storitev, do katerih lahko pridejo napadalci, ter število nastavljenih iteracij. Za pričakovati je, da bodo napadalci najprej poskušali razbiti trezorje, na katerih je nastavljeno nizko število iteracij, ter se osredotočili na trezorje, ki vsebujejo gesla za bolj pomembne storitve (URL naslovi spletnih mest, za katera so shranjena gesla, v trezorjih namreč niso zašifrirani).

Preberite tudi

Strah hitro zleze v kosti

Izkušnje stanovskih kolegov kažejo, da napadi onemogočanja na spletne strani državnih ustanov ne pojenjajo. Podobne napade lahko pričakujemo tudi v Sloveniji.
Več

Onemogočanje spletnega mesta predsednice Republike Slovenije

Danes popoldne, 27. marca 2024 okoli 15:30, je prišlo do onemogočanja spletnega mesta predsednice Republike Slovenije. Na dogodek so se takoj odzvale pristojne institucije. Nacionalni odzivni center za kibernetsko varnost …
Več

SI-CERT TZ015 / Analiza bančnega trojanca Anatsa za Android mobilne naprave

V analizo smo prejeli dve sumljivi aplikaciji za Android naprave. Izkazalo se je, da gre za virus vrste Anatsa.
Več