Настав час знищити пароль
Updated Mon, January 30, 2023 1:27 EST
На думку Microsoft, паролі існують з перших днів появи комп'ютерів і вони зжили свою корисність. Інше обтяжливе заняття – регулярно запам'ятовувати їх або змінювати на складні літерно-цифрові рядки, які важко запам'ятати. Це не найкраще з рішень у сфері безпеки.
Протягом десятиліть комп'ютерна промисловість фокусувалася на забезпеченні безпеки пристроїв. Тепер ця модель потребує оновлення. У наші дні забезпечення безпеки пристроїв є життєво важливим, але цього недостатньо, оскільки є інші завдання. Необхідно забезпечити безпеку інформації про осіб або користувачів, які використовують пристрій.
Спроба зрозуміти вразливість з погляду користувача
Припустимо, у когось є цінні прикраси, заховані десь у сейфі, і він хоче отримати доступ до них. Власник посилає за ним когось іншого. Єдиний спосіб відкрити сейф – повідомити код відмички людині, яка відкриє його для власника. Код пишеться на папері, кладеться в конверт, закривається і передається цій людині. Ця людина має пройти всю вулицю, щоб дістатися сейфа. Дорогою код може бути втрачений або вкрадений. Або людина, якій довірено отримати цінності, здійснює шахрайство та ховається з коштовностями.
Чи захоче хтось користуватися такою системою безпеки? Ні. Це не здається безпечним, оскільки проблема полягає в тому, що переданий код став спільним секретом. Та сама проблема з паролями.
Коли вам потрібно увійти на сайт, щоб отримати доступ до банківського рахунку або електронної пошти, ви набираєте пароль, надісланий на сервер, щоб повідомити, що ви та людина, яка претендує на роль власника рахунку. Пароль – це єдиний захист, який стоїть між банківським рахунком, електронною поштою або будь-якими іншими конфіденційними даними. Тому якщо хакеру вдасться заволодіти паролем, або вкрасти його, чи вгадати, тому що пароль був слабким, він зможе зламати систему і отримати доступ до даних.
Статистика показує, що вкрадені чи слабкі паролі є причиною 80% усіх атак хакерів.
Паролі – це ворота до ваших важливих даних
Скільки б не було замків і якими б важкими вони не були, їх установка на двері будинку марна, якщо одні двері залишаються відчиненими. Крадіжка може завдати великої шкоди, і інші замки виявляться марними. В наш час у кожного з нас є кілька облікових записів у системі, наприклад, портал нашої організації або підприємства, банківські рахунки, кілька облікових записів електронної пошти, різні облікові записи в соціальних мережах та багато іншого. Якщо один слабкий пароль буде скомпрометований, і людина повторюватиме той самий пароль для всіх облікових записів, це поставить під загрозу всі інші заходи безпеки.
Менеджери паролів допомагають забезпечити безпеку даних. Однак вони не можуть запобігти крадіжці паролів внаслідок атак фішингу. Однак цей ризик можна звести до мінімуму, використовуючи двофакторну аутентифікацію (2FA). Зростання числа кіберзлочинів, особливо в останнє десятиліття, призвело до підвищення рівня обізнаності. Отже, це призвело до зростання 2FA з 28% у 2017 році до 53% у 2019 році.
Однак 2FA все ще не стійка до складних атак фішингу. Користувачі навіть ускладнюють проблему, оскільки продовжують використовувати слабкі паролі. Основна причина такої поведінки – зручність.
Як же припинити ділитися своїми секретами?
Якщо паролі є секретними та призначені для цього, найкращий спосіб – перестати ділитися ними. Але якщо ми вважаємо передачу пароля іншій людині ризиком, то проблема в тому, що ми не усвідомлюємо, що передаємо свої паролі веб-застосунку, в який входимо, і у нас немає вибору. Ми знаємо про ризик, але все одно йдемо вперед, інакше ми не зможемо виконувати подальші операції.
Рішення на основі веб-автентифікації
Web Authentication усуває потребу у паролі. Вона використовує асиметричне шифрування, що складається з пари ключів: закритого та відкритого. Відкритий ключ, який використовується для шифрування чогось, може бути розшифрований лише за допомогою відповідного закритого ключа.
Наприклад, ви бажаєте надіслати комусь секретне повідомлення. Повідомлення зберігається у скриньці з ключем та закрито на замок. Проте відправник не може його відімкнути. Скринька, в якій зберігається повідомлення, є відкритим ключем, а ключ, який може відкрити скриньку, є закритим ключем. Копії відкритого ключа можна вільно розповсюджувати серед усіх бажаючих. У цьому випадку скринька буде тільки замкнена, а секретне повідомлення, відправлене передбачуваному відправнику, не буде розкрито без відповідного закритого ключа. Таким чином, закритий ключ залишається секретом. Він не передається нікому. Цей механізм є основою WebAuthn.
Як працює WebAuthn?
WebAuthn дозволяє увійти на сайт за допомогою апаратних пристроїв, таких як USB Security Key, Hello Windows або Apple TouchID. Ці пристрої відомі як автентифікатори, і вони зберігають нову пару ключів, відому як облікові дані, які включають закритий ключ і відкритий ключ. Ці облікові дані допомагають зареєструватись на сайті. Після реєстрації облікові дані отримуються автентифікатором для входу користувача на сайт.
Замість відправляти пароль на сервер, сервер відправляє випадковий рядок. Це виклик для користувача. Користувач підписує цей виклик своїм закритим ключем, внаслідок чого виходить хеш. Користувач відправляє цей хеш назад на сервер із відповідним відкритим ключем. Сервер перевіряє цей хеш за допомогою відкритого ключа, доводячи, що користувач має відповідний закритий ключ, і таким чином автентифікація стає успішною.
У цьому процесі немає секретів. База даних, що зберігає відкриті ключі, не є важливою для хакерів.
Висновок
Веб-автентифікація – це надійний та безпечний механізм автентифікації. Він виключає використання паролів та звільняє користувачів від необхідності їх запам'ятовування.