Як узломваюць паролі?

Уліковыя запісы рэдка ўзломваюць так, як гэта паказваюць у кіно. На практыцы пароль здабываюць адным з трох спосабаў. Яго ўзломваюць: падбіраюць варыянты адзін за адным, звычайна параўноўваючы са скрадзенай з сэрвісу базай хэшаў пароляў. Яго крадуць: выманьваюць на падробнай старонцы або перахопліваюць вірусамі. Або яго выкарыстоўваюць паўторна: узломшчыкі бяруць пароль з мінулай уцечкі і правяраюць яго на іншых сэрвісах, разлічваючы, што карыстальнік паставіў яго і там. Гэта істотнае адрозненне, бо супраць кожнага метаду патрэбна свая абарона. У гэтым артыкуле разглядаюцца асноўныя пагрозы і спосабы супрацьдзеяння ім.

Паўторнае выкарыстанне пароляў з уцечак звестак

Кожны год сэрвісы церпяць узломы, і базы іх карыстальнікаў трапляюць у продаж ці выкладваюцца ў вольны доступ. Зламыснікі бяруць пары адрасоў электроннай пошты і пароляў з адной уцечкі і аўтаматычна правяраюць іх на сайтах банкаў, паштовых службаў, крам і сацыяльных сетак — гэтая атака называецца падстаноўкай уліковых даных (credential stuffing). Тут няма ніякага падбору, і ўсё спрацоўвае па адной прычыне: людзі паўтараюць паролі. Нават самы складаны пароль не дапаможа, калі ён аднолькавы паўсюль.

Што дапамагае: унікальны пароль для кожнага акаўнта, каб уцечка ў адным сэрвісе не давала доступу ні да чаго іншага.

Фішынг

Фішынгавая старонка — гэта копія сапраўднага сайта аўтарызацыі з ледзь змененым адрасам, куды чалавек трапляе па спасылцы з ліста або тэрміновага паведамлення: заблакіраваны рахунак, пасылка, рахунак на аплату. Усё, што вы там уводзіце, ідзе проста ў рукі зламысніка. Даўжыня і выпадковасць пароля тут не маюць значэння, бо вы аддаяце яго самі.

Што дапамагае: адкрываць сайты праз уласныя закладкі, а не па спасылках. Карыстацца менеджарам пароляў: ён прапануе падставіць пароль толькі на тым дакладным адрасе, для якога ён быў захаваны; калі менеджар нічога не прапануе, праверце адрас у радку перад тым, як уводзіць даныя рукамі. І падключайце двухфактарную аўтэнтыфікацыю, з якой скрадзенага пароля недастаткова для ўваходу. Зрэшты, аднаразовы код можна выманіць праз фішынг гэтак жа, як і пароль. А вось ключы доступу і апаратныя ключы FIDO2 так выманіць немагчыма, бо яны адказваюць толькі сапраўднаму сайту — гэта тая ўласцівасць, якую NIST называе ўстойлівасцю да фішынгу.

Шкоднае праграмнае забеспячэнне

Праграмы, вядомыя як інфастылеры, капіруюць захаваныя ў браўзеры паролі разам з файламі сесійных cookie і адпраўляюць іх праз лічаныя секунды пасля запуску, у той час як кейлогеры запісваюць кожнае націсканне клавіш. Скрадзены файл cookie можа дазволіць зламысніку ўвайсці ва ўжо адкрыты акаўнт без уводу пароля і без праходжання другога фактара. Такое ПЗ звычайна трапляе на прылады праз узламаныя праграмы, падробныя абнаўленні і ўкладанні ў лістах.

Што дапамагае: усталёўваць праграмы толькі з афіцыйных крыніц, своечасова абнаўляць аперацыйную сістэму і браўзер, а да нечаканых укладанняў ставіцца як да патэнцыйнай пагрозы — хоць нішто з гэтага не дае поўнай гарантыі. Калі прылада была заражана, дзейнічайце з іншай, чыстай прылады: змяніце паролі, скарыстайцеся функцыяй выхаду з усіх сесій у кожным сэрвісе і пераканайцеся, што рэзервовая пошта, нумар тэлефона і налады двухфактарнай аўтэнтыфікацыі не былі зменены. Ачысціце заражаную прыладу перад тым, як зноў аўтарызавацца на ёй.

Падбор праз форму ўваходу

Перабіраць паролі непасрэдна на сайце вельмі марудна: якасны сэрвіс пасля некалькіх няўдалых спроб уводзіць затрымку, блакіруе або патрабуе ўвесці капчу. Гэта робіць атакі на адзін акаўнт неэфектыўнымі, таму часцей выкарыстоўваюць адваротны падыход: бяруць некалькі самых распаўсюджаных пароляў — 123456, password, qwerty123 — і правяраюць іх па мільёнах розных уліковых запісаў, што называецца распыленнем пароляў (password spraying). Мэтанакіраваны падбор працуе так жа, толькі з персанальнымі звесткамі: імёны дзяцей, мянушкі гадаванцаў, даты нараджэння, любімая каманда — усё гэта лёгка знаходзіцца ў сацсетках.

Што дапамагае: любы пароль, які не ўваходзіць у спісы папулярных і не звязаны з фактамі пра вас — глядзіце, як стварыць надзейны пароль.

Падбор пароляў па выкрадзеных хэшах афлайн

Правільна пабудаваны сэрвіс не захоўвае паролі ў адкрытым тэксце. Ён захоўвае хэшы — вынік незваротнай функцыі, па якім немагчыма вылічыць пароль у адваротным кірунку. Калі такая база даных выцякае, узломшчыкі вылічваюць хэшы ад магчымых варыянтаў пароляў на сваім абсталяванні і параўноўваюць вынікі з выкрадзенай базай. Форма ўваходу іх не абмяжоўвае, і хуткасць залежыць толькі ад абранага сэрвісам алгарытму хэшавання і яго параметраў. Для хуткіх састарэлых функцый, такіх як MD5, адна сучасная відэакарта правярае дзясяткі мільярдаў варыянтаў у секунду. Функцыі, створаныя спецыяльна для захоўвання пароляў — Argon2id ці bcrypt у старых сістэмах, — наўмысна зроблены павольнымі і зніжаюць гэтую хуткасць на шмат парадкаў, таму менавіта іх указваюць сучасныя рэкамендацыі.

Слоўнікавыя атакі

Варыянты для праверкі бяруцца не навыпадкі. Праграмы ўзлому стартуюць са спісаў сапраўдных пароляў з мінулых уцечак і слоўнікаў імёнаў і слоў, пасля чаго прымяняюць правілы, якія імітуюць чалавечыя звычкі: вялікая першая літара, год ці клічнік у канцы, замена літары на падобны значок. Пароль кшталту Summer2024! здаецца складаным, але аказваецца сярод першых жа правераных варыянтаў. Даданне солі — унікальнага выпадковага значэння, якое далучаецца да кожнага пароля перад хэшаваннем, — не дае ўзломшчыкам скарыстацца гатовымі табліцамі (гэтак званымі вясёлкавымі табліцамі) і ўзламаць усе аднолькавыя паролі адным махам, аднак само па сабе не робіць прадказальны пароль менш прадказальным.

Поўны перабор

Калі слоўнікі вычарпаны, застаецца правяраць усе камбінацыі запар, і для выпадкова створанага пароля вынік вызначаецца менавіта яго даўжынёй. Для прыкладу возьмем хуткую хэш-функцыю і пароль, у якім кожны сімвал выбіраецца незалежна і роўнаімаверна з 94 друкаваных знакаў ASCII без уліку прабела. Існуе каля 6 × 1015 такіх варыянтаў даўжынёй 8 сімвалаў; пры хуткасці дзесяць мільярдаў спроб у секунду іх поўны перабор зойме каля тыдня, а ў сярэднім правільны варыянт сустрэнецца за палову гэтага часу. Каб перабраць 12 сімвалаў на тым жа абсталяванні, спатрэбіцца каля 1,5 мільёна гадоў, а для 16 гэта лічба выходзіць за межы любых рэальных супастаўленняў. У гэтым і заключаецца ўвесь сэнс доўгіх выпадковых пароляў: слоўнікі супраць іх амаль бескарысныя, а праверыць усе камбінацыі пры такіх умовах практычна немагчыма. Наш генератар надзейных пароляў стварае іх проста ў вашым браўзеры і паказвае разліковую энтрапію кожнага варыянту ў бітах.

Што дапамагае: доўгі пароль без чалавечых шаблонаў, што на практыцы азначае згенераваны пароль. Вы не можаце паўплываць на тое, як сэрвіс захоўвае ваш пароль, таму зыходзьце з найгоршага і выбірайце варыянты, устойлівыя да падбору нават пры выкарыстанні хуткай хэш-функцыі.

Падглядванне і сацыяльная інжынерыя

Найстарэйшыя спосабы абыходзяцца без якіх-небудзь тэхналогій. Пароль падглядаюць з-за спіны, спісваюць са стыкера на маніторы або з расшаранага экрана падчас відэасувязі; альбо зламыснік проста выпытвае яго, выдаючы сябе за супрацоўніка падтрымкі ці калегу — гэта завецца сацыяльнай інжынерыяй. Ні адна сапраўдная служба ніколі не стане запытваць ваш пароль па тэлефоне, пошце ці ў чаце.

Што дапамагае: ніколі і нікому не называць і не адпраўляць свой пароль, а таксама не трымаць яго навідавоку.

Галоўныя высновы

Супраць розных атак патрабуюцца розныя звычкі, і найважнейшыя з іх тры: унікальны пароль для кожнага сайта, згенераваны, а не прыдуманы, з падключанай двухфактарнай аўтэнтыфікацыяй — альбо выкарыстанне ключа доступу замест пароля, дзе гэта магчыма. Яны не пакрываюць усе рызыкі — напрыклад, перахоп адкрытай сесіі, — таму рэкамендацыі па шкодным ПЗ вышэй таксама вельмі важныя. Іншыя артыкулы сабраны ў матэрыялах пра паролі.