Zer gertatzen da benetan zure pasahitza filtratzen dutenean

Argitaratua egilea David Carrero

Norbaiti pasahitza filtratzen diotenean, istripu puntual bat bezala irudikatzen du: zerbitzu batek egun txarra izan zuen, prentsan atera zen, aldatu egin zenuen eta kito. Ez zen kito. Filtrazioaren eguna ez da ezeren amaiera: urteak iraungo dituen muntaketa-kate baten lehen eguna da, eta bertan zu ez zara inoiz zure izenarekin agertuko. Osorik kontatzea merezi du, ia inork ez baitu ikusten.

Lehen urratsa: norbaitek datu-basea ateratzen du

Hasierak ez du ezer ikusgarririk. Norbaitek SQL injekzio bat aurkitzen du, edo segurtasun-kopia bat zabalik, edo administrazio-panel bat kredentzial lehenetsiekin. Eta taula bat eramaten du.

Taula horrek, zorte pixka batekin, zure helbide elektronikoa eta zure pasahitzaren hash bat ditu. Zorte gutxiagorekin, zure helbide elektronikoa eta zure pasahitza ditu. Testuan. Idatzi zenuen bezala.

2009 hogeita hamabi milioi pasahitz testu soilean

2009ko abenduan, RockYou izeneko sare sozialetarako widget-enpresa batek SQL injekzio bat jasan zuen. 32 milioi pasahitz inguru eraman zituzten, eta ez zegoen hausteko hash-ik: testu soilean gordetzen zituen.

Hondamendia izan zen RockYourentzat, eta oparia gainerako guztientzat. Lehen aldiz bazegoen pasahitz errealen corpus erraldoi bat, inork irakurriko zituenik ez zekien jendeak idatzia. Ez azterketa bat: gauza bera baizik.

Fitxategia rockyou.txt bihurtu zen, eta gaur egun ere erasoak probatzeko erreferentziazko hiztegia da. Bere balioa ez da zure pasahitza barruan duela: jendeak pasahitzak nola idazten dituen duela baizik. Izen bat eta urte bat, hitza eta 123, ! amaieran. RockYouk ez zituen 32 milioi sekretu filtratu. Eredua filtratu zuen. Eta ereduak ez du iraungitze-datarik.

Bigarren urratsa: ahal dena krakeatzen da, inolako presarik gabe

Hemen huts egiten du intuizioak. Norbaitek zerbitzu baten sarrera-pantailan zure pasahitza asmatzen saiatzen denean, zerbitzuak eten egiten dio: hiru saiakera, CAPTCHA bat, blokeo bat. Zerbitzari baten kontra, asmatzea motela eta zaratatsua da.

Dagoeneko zure diskoan dagoen hash-fitxategi baten kontra ez dago zerbitzaririk. Ez dago beste aldean ezetz esango duen inor. Bertan probatzen da, GPUekin, saiakera-mugarik gabe eta munduko denbora guztiarekin. Zerbitzuak gaizki hasheatu bazuen —algoritmo azkarra, gatzik gabe— testu soilarekiko aldea erosotasunezkoa da, ez segurtasunezkoa.

Eta ez da ausaz probatzen: lehenik rockyou.txt, eta gero handik eratorritako arauak. Aldatu a letra @ ikurrarengatik. Erantsi urte bat amaieran. Zuri burutsua iruditu zitzaizun trikimailu bakoitza hamarkada bat baino gehiago darama konfigurazio-fitxategi batean idatzita.

Handik irteten da iraulketaren zati bat pasahitz irakurgarri bihurtuta. Gainerakoa —luzea, ausazkoa, inongo hiztegitan ez dagoena— zarata izaten jarraitzen du. Hori da egiaztatzaileak marrazten duen marra: ez zaitu errieta egiten, zein aldetan erortzen zaren esaten dizu.

Hirugarren urratsa: gurutzatu egiten dira, eta hor balio duzu dirua

Iraulketa solte batek gutxi balio du. Baliotsua agregazioa da: hartu hamar filtrazio leku desberdinetatik, gurutzatu helbide elektronikoaren arabera eta gorde jada argi dauden helbidea:pasahitza bikoteak. Emaitzari combolist deitzen zaio, eta hori ez da jada inoren datu-basea. Pertsonen zerrenda bat da.

2013 inbentarioa argitara ateratzen da

2013ko abenduan, Troy Huntek Have I Been Pwned abiarazi zuen: filtrazioetan agertutako helbide elektronikoen datu-base publiko bat, edonork galdetu ahal izateko barruan zegoen ala ez. Atzean dagoen ideia sinplea eta deserosoa da: erasotzaileek dagoeneko inbentarioa badute, biktimei ukatzeak ez du inor babesten. Urte batzuk geroago Pwned Passwords iritsi zen, gauza bera egiten duena pasahitzekin eta haiek bidali gabe kontsultatzeko aukera ematen duena: hash-aren zati bat bidaltzen da eta zerbitzariak hautagai-sorta bat itzultzen du, zeinena zen jakin gabe.

2017 NISTek sinboloak eskatzeari utzi eta zerrendak eskatzen hasi zen

NISTek SP 800-63B argitaratu zuenean, formularioen ortodoxia ia osoa zakarrontzira bota zuen, eta haren lekuan gutxik espero zuten baldintza bat jarri zuen: pasahitz bat ezartzean, sistemak ezagutzen diren balio arriskatuen zerrenda batekin alderatu behar du eta bertan agertzen bada baztertu.

Teoria-aldaketa bat da, ez xehetasunezkoa. Galdera jada ez da zure pasahitza sendoa dirudien, baizik eta dagoeneko argitaratuta dagoen. Horregatik egiten du sortzaileak gauza arrazoizko bakarra: inoiz egon ez den leku batetik ateratzea.

2019 beste batzuen berrerabilpena zen filtrazioa

2019ko urtarrilean Collection #1 izenarekin ospetsu egin zen pakete bat zirkulatu zen. Huntek aztertu eta barruan zegoena kontatu zuen: 773 milioi helbide elektroniko bakar inguru eta 21 milioi pasahitz bakar inguru testu soilean, milaka iturritatik agregatuta.

Garrantzitsua ez zen tamaina izan. Nondik zetorren izan zen: neurri handi batean aurreko filtrazioen berrerabilpena zen, jada krakeatuta eta formatu erosoan jarrita —nahiz eta Huntek ordura arte fitxatuta ez zeukan materiala ere aurkitu zuen. Produktua ez zen sarraldia. Inbentarioa zen. Eta halako inbentario batek erabilera bakarra du.

Credential stuffing: ez zaituzte zu erasotzen

Zu ez zaitu inork erasotzen. Hori da barneratzea kostatzen den zatia.

Inor ez da esertzen zure kontuan pentsatzera. Norbaitek ehunka milioi lerroko combolist bat hartzen du, banku baten edo posta-zerbitzu baten sarrera-inprimakiaren kontra probatzen dituen tresna batean sartzen du, saiakerak IP helbide askoren artean banatzen ditu blokeoak ez pizteko, eta itxaron egiten du. Gehien-gehienek huts egiten dute. Berdin dio: ia ez dute ezer kostatzen.

Hori da credential stuffing, eta ez da asmatzea. Egiaztatzea da. Pasahitza badute jada; jakiten duten gauza bakarra da beste non jarri zenuen.

Foro hartako zure pasahitza ez zen garrantzitsua. Foroa ere ez. Garrantzitsua da karaktere-kate berak zure posta irekitzen duela, eta zure postak gainerako guztia irekitzen duela «pasahitza ahaztu dut» bidez. Jatorrizko bekatua ez da ahula izatea: bera bera izatea baizik. Hogeita hamar karaktereko pasahitz bat, ausazkoa eta ezin hobea, bi lekutan berrerabilita, bien artean okerrena bezain ona da. Eta zuk ez duzu kontrolatzen bien artean okerrenak nola hasheatzen duen.

Zer ondorioztatzen den honetatik guztitik

  • Filtratutako pasahitza aldatzea ez da nahikoa errepikatu bazenuen. Presazkoa ez da albistegietan atera zen gunea. Besteak dira.
  • Pasahitz bat gune bakoitzeko, eta ahaztea berdin dizula. Zure pasahitz guztiak gogoratzeko gai bazara, oso gutxi dituzu edo oso txarrak dira.
  • Bigarren faktoreak katea hausten du. Credential stuffing-ak helbidea:pasahitza probatzen du. Hori sartzeko nahikoa ez bada, inbentarioak balioa galtzen du.

Zure pasahitz filtratua ez dago etsai baten eskuetan. Fitxategi bateko lerro batean dago, beste ehunka milioiren artean, norbaiti gune bat gehiagotan probatzea komeni zaion arte zain. Eta hori funtzionatzen duen ala ez erabakitzen duen gauza bakarra zuk erabaki zenuen duela urte batzuk, hitz bera bigarren aldiz idatzi zenuenean.


Iturriak: RockYouren filtrazioa (2009ko abendua) eta rockyou.txt-ren ondorengo erabilera eraso-hiztegi gisa · Have I Been Pwned eta Pwned Passwords, Troy Huntenak · NIST SP 800-63B, pasahitzak balio arriskatuen zerrendekin egiaztatzeari buruz · Troy Hunten analisia Collection #1-i buruz (2019ko urtarrila) eta argitaratu zituen zifrak · OWASPen credential stuffing-en definizioa.

← Blogera itzuli