Touch ID для вебсайтів? Ні, дякую!

Не використовуйте пропрієтарні вебавтентифікатори – не віддавайте свою безпеку в руки техногігантів

Як зробити типу менеджер паролів і типу так, щоб контроль перейшов від користувача до великих IT-компаній?

Що за відмички і що це робиться? §

Альянс FIDO (“Fast IDentity Online”, складається з Google, Apple, Amazon та інших, зроз) вже досить давно розробив стандарт FIDO2 для безпарольної аутентифікації у вебсервісах, і тепер усіх хочуть на нього підсадити. Бо паролі, бачте, проблема, але фактично проблема — тільки слабкі паролі та їх перевикористання, що вирішують менеджери паролів.

Технічно WebAuthn (вебавтентифікація, основний принцип тута), чимось нагадує вжиткування ключами SSH — ви так само генеруєте пару з публічного та приватного ключа й даєте сервісу (сайту) публічний ключ, а приватний використовуєте, щоб логінитись туди.

Маркетоїди обізвали ці ключі Passkeys, тому я буду далі називати їх відмичками, бо такий переклад у моєму базованому словнику в базованій базі stardict.

Це зручно? (НІ) §

Як і ключі SSH, і паролі в менеджері паролів, відмички теж чимось захищають, щоб випадкова людина не могла просто так узяти чужий пристрій та використати їх для входу в обліковий запис власника. Але з ними нюанс(и)! По-перше, по-нормальному ключ SSH захищається паролем, але корпорації вирішили, що паролі дають людям забагато свободи, тому цю технологію для гойринку запакували в Touch і Face ID (типу зручно, диви, приклав палець — зайшов на сайт, вау). По-друге, вони не завжди зберігаються на вашому пристрої (вау мегазручно).

  1. Технологічні гіганти кажуть, що використання пальця для логіну на сайт значно зручніше та безпечніше, ніж пароля. Насправді все навпаки, і єдине, що в такому випадку зручніше — це замикання вас в екосистемі одної з компаній-пропонентів цієї маячні. Бо вони надіються, що всі танці будуть через їх програми — iCloud, менеджер паролів Google та відповідно їх реалізації Touch/Face ID і так далі. Щоб ви все більше залежали від їх сервісів, щоб вони все сильніше вкорінювались на ринку.

  2. Не знаю про Google, але я читав тут, що Apple змусила користувача увімкнути iCloud для збереження ключів. Тобто вони навіть не зберігаються у вас, ТОБТО в будь-який момент ви можете втратити дані для входу на всі сервіси в Інтернеті.

Posession-based проти Knowledge-based §

Ось, що я вичитав на сайті Альянсу FIDO:

Enabling a fundamental shift to phishing-resistant authentication From legacy, knowledge-based credentialing To modern, possession-based credentialing

Крінж! Knowledge-based рулить, його значно важче обернути проти вас, просто обмежте те, що вам треба знати! Саме тому менеджер паролів базований і це все фігня, і ось порівняння:

Відмички + Touch ID Менеджер паролів
Можлива кількість і складність паролів від бази? максимум 20 на людину; навіть підбирати не треба, бо відбитки пальців можна дістати Міняйте пароль, скільки влізе; Можлива будь-яка комбінація і сила пароля залежить тільки від вас
Несанкціонований доступ Ваш палець узяли та приплюснули до сканера АБО зробили копію відбитку на базі фотографії, як уже робили Головний пароль у вас у голові, і, може, десь записаний (тільки ви знаєте, де)
Від чого ви залежні? Корпорація віддалено відімкне ваш пропрієтарний сканер відбитку чи просто закриє доступ до сервера з ключами, і ви без нічого. Ви можете втратити девайс чи просто зламається сканер відбитків, або ви відріжете собі палець болгаркою, і не зможете навіть зайти на сайт компанії, щоб надіслати запит на відновлення доступу до ключів чи скаргу (геніально!) Від надійності бекапів та своєї пам’яті (пам’яті тексту одного пароля, підкріпленої м’язовою та візуальною пам’яттю)

Я, звісно, вважаю, що менеджер паролів вільний та локальний, що аргументував у цій статті, де давав поради для його вибору. З Touch ID мені складно уявити свободу. До речі, деякі менеджери паролів, зокрема KeePassXC, підтримують менеджмент цих ключів, тобто вам не треба залежати від вендорів із їх збирачами біометрії! Але є ще деякі нюанси.

Ще гірше §

Цитую емейл з кінця цієї статті:

[щодо] рівнів сертифікації FIDO та служби метаданих FIDO MDS.

TLDR: сторона, на якій ви проходите автентифікацію, може просто сказати «ні, я не прийму автентифікацію з цього пристрою».

Сервіси, які вимагають автентифікації, МОЖУТЬ вирішити вимагати певний рівень сертифікації FIDO для прийняття пристрою. Процес сертифікації виглядає як “pay to win”. Кожна служба повинна мати оновлений блоб MDS3, що містить список сертифікованих пристроїв.

Це більше стосується апаратних автентифікаторів типу NitroKey, але це може бути застосовано й до вебсервісів. Уявіть таке майбутнє: щоб зайти на сайт, потрібно мати спеціальний пропрієтарний автентифікатор!