Зашто бисте требали бринути кад год је база података лозинке услуге процурила
“Јуче је украдена наша база података за лозинке. Али не брините: ваше лозинке су шифроване. “Редовно гледамо изјаве попут ове на интернету, укључујући јучер, из Иахоо-а. Али, да ли бисмо заиста требали узети оваква увјеравања по номиналној вриједности?
Стварност је компромис базе података лозинки су забринутост, без обзира на то како компанија може покушати да је окрене. Али постоји неколико ствари које можете да учините да се изолујете, без обзира колико лоше су безбедносне праксе компаније.
Како треба чувати лозинке
Ево како компаније треба да чувају лозинке у идеалном свету: креирате налог и уносите лозинку. Уместо самог чувања лозинке, услуга генерише „хасх“ из лозинке. Ово је јединствени отисак прста који се не може преокренути. На пример, лозинка "лозинка" може се претворити у нешто што изгледа више као "4јфх75то4суд7гх93247г…". Када унесете лозинку да бисте се пријавили, услуга генерише хасх и проверава да ли хасх вредност одговара вредности сачуваној у бази података. Сервис никада не чува саму лозинку на диску.
Да бисте утврдили вашу тренутну лозинку, нападач са приступом бази података ће морати да пре-израчуна хасхеве за уобичајене лозинке, а затим да провери да ли постоје у бази података. Нападачи то раде са прегледним табелама - огромним листама хасхева који се слажу са лозинкама. Затим се хеш може поредити са базом података. Напримјер, нападач би знао хасх за “пассворд1”, а затим би видио да ли неки рачуни у бази података користе тај хасх. Ако јесу, нападач зна да је њихова лозинка "пассворд1".
Да би се ово спречило, службе би требало да „сољу“ своје хаше. Уместо креирања хасх-а од саме лозинке, они додају насумични низ у предњи или крај лозинке пре него што га чисте. Другим речима, корисник би унио лозинку „пассворд“ и услуга би додала сол и хасх лозинку која изгледа више као „пассворд35с2дг“. Сваки кориснички налог треба да има своју јединствену сол, а то би осигурало да сваки кориснички налог би имао различиту хеш вредност за своју лозинку у бази података. Чак и ако вишеструки рачуни користе лозинку "пассворд1", имали би различите хешове због различитих вриједности соли. Ово би поразило нападача који је покушао да унапријед израчуна хасхеве за лозинке. Уместо да могу да генеришу хасхеве који се примењују на сваки кориснички налог у целој бази података одједном, они би морали да генеришу јединствене хешове за сваки кориснички налог и његову јединствену сол. За то би требало много више времена за рачунање и меморије.
Зато услуге често кажу да се не брину. Услуга која користи одговарајуће сигурносне процедуре треба да каже да су користили слане хасхеве лозинки. Ако једноставно кажу да су лозинке "распршене", то је више забрињавајуће. ЛинкедИн је, на пример, збрисао своје лозинке, али их није посолио - тако да је то била велика ствар када је ЛинкедИн изгубио 6,5 милиона хешираних лозинки у 2012. години.
Лоша пракса лозинке
Ово није најтежа ствар коју треба имплементирати, али многе веб локације још увијек успијевају збркати на разне начине:
- Чување лозинки у обичном тексту: Уместо да се гњавите са неким хеширањем, неки од најгорих преступника могу само бацити лозинке у обичном текстуалном облику у базу података. Ако је таква база података компромитована, ваше лозинке су очигледно угрожене. Не би било важно колико су јаки.
- Хасхинг тхе Пассвордс Витхоут Солинг Тхем: Неке услуге могу хасх-ове лозинке и одустати од тога, одлучујући се да не користе соли. Такве базе података лозинки би биле веома рањиве на прегледне табеле. Нападач може да генерише хасхеве за многе лозинке, а затим да провери да ли постоје у бази података - то могу да ураде за сваки налог одједном, ако није употребљена сол.
- Реусинг Салтс: Неке услуге могу користити сол, али могу поново користити исту сол за сваку лозинку корисничког рачуна. Ово је бесмислено - ако се иста сол користи за сваког корисника, два корисника са истом лозинком ће имати исти хаш.
- Коришћење кратких соли: Ако се користе соли од само неколико цифара, могуће је генерисати табеле за претраживање које укључују сваку могућу сол. На пример, ако је једна цифра коришћена као со, нападач би лако могао да генерише листе хасхева који су укључили сваку могућу сол.
Компаније вам неће увек испричати цијелу причу, па чак и ако кажу да је лозинка распршена (или распршена и сољена), можда не користе најбоље праксе. Увек грешите на страни опреза.
Отхер Цонцернс
Вероватно је да је вредност соли присутна иу бази лозинки. Ово није тако лоше - ако је за сваког корисника коришћена јединствена вредност соли, нападачи би морали да троше огромне количине снаге ЦПУ-а да би разбили све те лозинке.
У пракси, толико људи користи очигледне лозинке да би било лако одредити лозинке многих корисничких налога. На пример, ако нападач познаје ваш хеш и они знају вашу сол, они лако могу проверити да ли користите неке од најчешћих лозинки.
Ако је нападач има за вас и жели да испусти вашу лозинку, они то могу да ураде са бруталном силом све док знају вредност соли - коју вероватно раде. Уз локални, ванмрежни приступ базама података о лозинкама, нападачи могу да користе све нападе бруталне силе које желе.
Други лични подаци такође вероватно пропуштају када се украде база података лозинки: корисничка имена, адресе е-поште и још много тога. У случају цурења Иахооа, сигурносна питања и одговори су такође процурили - што, као што сви знамо, олакшавају крађу приступа нечијем рачуну.
Помоћ, шта да радим?
Шта год да услуга каже када је украдена база лозинки, најбоље је претпоставити да је свака услуга потпуно некомпетентна и да се понаша у складу са тим.
Прво, немојте поново користити лозинке на више веб локација. Користите менаџер лозинки који генерише јединствене лозинке за сваки веб сајт. Ако нападач успе да открије да је ваша лозинка за услугу "43 ^ Сд% 7ухо2 # 3" и да ту лозинку користите само на тој одређеној веб локацији, они нису научили ништа корисно. Ако користите исту лозинку свуда, могли би приступити вашим другим рачунима. Овако многи рачуни људи постају "хакирани".
Ако услуга постане компромитована, обавезно промените лозинку коју тамо користите. Требало би и да промените лозинку на другим сајтовима ако је поново употребите - али то не би требало да радите.
Такође треба да размотрите коришћење аутентификације у два фактора, која ће вас заштитити чак и ако нападач сазна вашу лозинку.
Најважнија ствар није поновна употреба лозинки. Базе података са угроженим лозинкама не могу вас повредити ако употребљавате јединствену лозинку свуда - осим ако не похрањују нешто друго важно у бази података, као што је број ваше кредитне картице.
Имаге Цредит: Марц Фалардеау он Флицкр, Викимедиа Цоммонс