SecuredKit

Опубліковано: · Оновлено: · автор:

2FA чи MFA: що вам справді потрібно?

2FA — це MFA рівно з двома факторами. Важливіше, який другий фактор ви оберете: від чого захищають SMS, TOTP, push і passkeys, за правилами NIST Rev. 4.

2FA чи MFA: порівняння других факторів, які з SMS, кодів на пошту, TOTP, push і passkeys захищають від викраденого пароля, SIM-swap, фішинг-проксі та втоми від push

Різниця між 2FA і MFA зводиться до підрахунку: двофакторна автентифікація (2FA) використовує рівно два різні види факторів, а багатофакторна (MFA) — два або більше. Тобто будь-яка 2FA є MFA, і на практиці майже вся «MFA» для звичайних користувачів — це 2FA. Для особистого акаунта третій фактор не потрібен. Потрібен правильний другий, бо SMS, застосунок-автентифікатор, push-запит і passkey зупиняють зовсім різні атаки.

Три види факторів і що не рахується за два

NIST SP 800-63B поділяє автентифікатори на три види: те, що ви знаєте (пароль або PIN), те, що у вас є (телефон, ключ безпеки, пристрій із приватним ключем), і те, ким ви є (відбиток пальця або обличчя). Два фактори рахуються як два лише тоді, коли вони різних видів.

Пароль плюс контрольне запитання — це все одно один фактор: обидва належать до того, що ви знаєте, і їх викрадають або виманюють фішингом разом. Біометрію NIST дозволяє лише як частину багатофакторної автентифікації, прив'язаної до фізичного пристрою, і ніколи окремо, бо біометрія не є секретом і її не можна відкликати, якщо її скопіювали.

2FA і MFA поруч

2FAMFA
Кількість факторівРівно 22 або більше
СпіввідношенняОкремий випадок MFAВключає 2FA
Де трапляєтьсяЗвичайні акаунти: пошта, банк, соцмережіКорпоративний і державний доступ: смарт-картка + PIN, сертифікат пристрою + пароль + застосунок
Стійка до фішингу?Залежить від другого фактораЗалежить від факторів, а не від їхньої кількості

Найважливіший тут останній рядок. Третій фактор, який можна виманити фішингом так само, як і перші два, додає незручностей і дуже мало захисту. Правила NIST це відображають: для AAL2 (рівня, якого досягає більшість входів із другим фактором) Rev. 4 вимагає, щоб перевіряльники пропонували принаймні один стійкий до фішингу варіант, а AAL3 такий варіант вимагає обов'язково. Жоден рівень не вимагає більше ніж двох факторів.

Який другий фактор від якої атаки захищає

Це порівняння я хотів би мати перед вибором, тож зібрав його з того, як працює кожен метод, і з класифікації NIST Rev. 4. ✓ означає, що метод сам по собі блокує атаку; ✗ — що не блокує.

Другий факторВикрадений або повторно використаний парольSIM-swapФішинг-проксі в реальному часіВтома від push
SMS-код✓✗✗н/з
Код на пошту✓ (якщо поштову скриньку теж не захопили)✓✗н/з
Застосунок TOTP (RFC 6238)✓✓✗н/з
Push-запит, просто «Схвалити»✓✓✗✗
Push зі звіркою числа✓✓✗✓
Passkey або ключ безпеки FIDO2✓✓✓н/з

Кожен метод зупиняє найпоширенішу атаку: пароль, куплений із бази витоку або повторно використаний з іншого сайту. Уже цього достатньо, щоб увімкнути 2FA всюди. Різниця між методами — у колонках праворуч.

SMS — єдиний метод, який не витримує SIM-swap (перевипуск SIM-картки шахраями): хтось умовляє або підкуповує працівника оператора перенести ваш номер на свою SIM-картку і отримує ваші коди. NIST Rev. 4 відносить доставку через номер телефону до обмежених автентифікаторів: перевіряльники, які її використовують, мусять пропонувати альтернативу і зважати на сигнали ризику, наприклад недавнє перенесення номера. X у березні 2023 року прибрав 2FA через SMS для безкоштовних акаунтів, і багатьом довелося перейти на застосунки-автентифікатори, хоч вони цього й не просили. Для мене це не теорія: я бачив спроби SIM-swap або фішингу SMS-кодів на власному досвіді чи через знайомих.

Коди на пошту не бояться SIM-swap, але NIST Rev. 4 узагалі забороняє використовувати пошту для позасмугової автентифікації, і причина видна в першій колонці: якщо впаде поштова скринька, впадуть обидва фактори.

Коди TOTP обчислюються зі спільного секрету й поточного 30-секундного інтервалу, тож оператор зв'язку тут ні до чого. Але вони не витримують фішинг-проксі (набори на кшталт Evilginx), який показує вам справжню форму входу, передає пароль і код у реальному часі та забирає cookie сесії. Ще одна менш очевидна слабкість: сервер мусить зберігати ваш секрет TOTP у придатному для використання вигляді, тож витік бази даних розкриває і другий фактор. Сервер passkeys зберігає лише публічний ключ. Якщо хочете побачити HMAC, на якому тримається кожен код TOTP, у Генераторі хешів є режим HMAC.

Push-запити й атаки втомою

На одних акаунтах я використовую push-сповіщення на телефоні, на інших — застосунок-автентифікатор. З push найпростіше жити, і саме в цьому його слабкість. Під час злому Uber у вересні 2022 року нападник мав пароль підрядника (за словами Uber, імовірно купений у даркнеті), надсилав push-запити, доки підрядник не схвалив один, і написав йому у WhatsApp від імені ІТ-відділу Uber, що запити припиняться, якщо підтвердити.

Розв'язання — звірка числа: екран входу показує число, і ви вводите його в телефоні, тож запит, який ви не ініціювали, не вдасться схвалити машинально. Microsoft зробила це обов'язковим для push в Authenticator 8 травня 2023 року. Якщо ваш застосунок для push це підтримує, увімкніть. Якщо прийшов запит, якого ви не ініціювали, відхиліть його і змініть пароль: сам запит означає, що пароль уже працює в чужих руках.

Passkeys: два фактори за один крок

Passkey (ключ доступу) — це облікові дані WebAuthn: приватний ключ на вашому пристрої, який стає доступним після перевірки відбитка, обличчя або PIN. Це те, що у вас є, плюс те, ким ви є або що знаєте, тож passkey сам по собі двофакторний. І це єдиний із поширених методів у таблиці вище, який зупиняє фішинг-проксі. Браузер прив'язує підпис до справжнього домену сайту, тож підроблений домен не отримує нічого, що можна передати далі.

NIST Rev. 4 допускає синхронізовані passkeys (ті, що Apple, Google і менеджери паролів копіюють між вашими пристроями) на AAL2. Для AAL3 потрібен ключ без можливості експорту, тобто на практиці апаратний ключ безпеки. Ранній етап упровадження вже позаду: у жовтні 2025 року FIDO Alliance повідомив про понад 3 млрд passkeys, які захищають акаунти користувачів.

Перш ніж покладатися на passkey, перевірте, що підтримує ваша система. Перевірка Passkey показує, які можливості WebAuthn мають ваш браузер і пристрій, і працює локально в браузері, нічого не надсилаючи на сервер.

Що я б налаштував для кожного акаунта

АкаунтНалаштуванняЗапасний варіант
Основна поштаPasskey або ключ безпекиЗастосунок TOTP, коди відновлення надруковані або в менеджері паролів
Менеджер паролівPasskey або ключ безпеки, де підтримуєтьсяЗастосунок TOTP; першим фактором лишається майстер-пароль
GitHub, хмарні консолі, реєстратор доменівКлюч безпеки або passkeyЗастосунок TOTP
БанкТе, що банк пропонує у своєму застосункуПопросіть банк вимкнути запасний варіант через SMS, якщо можливо
СоцмережіЗастосунок TOTP або passkeyКоди відновлення
Акаунти, де є лише SMSSMSДодайте PIN або заборону перенесення номера, якщо оператор таке має

Через усю таблицю проходять два правила. Перше: акаунт захищений не краще, ніж найслабший увімкнений метод. Якщо SMS лишається запасним варіантом, нападник натисне «надіслати код інакше». Друге: зберігайте коди відновлення щоразу, коли щось вмикаєте, бо втрачений телефон без кодів перетворюється на звернення в підтримку або втрачений акаунт. Коли я допомагав людям повернути доступ до акаунтів, звичайною проблемою було те, що вони не знали даних для входу у власну резервну пошту.

Пароль важить і з сильним другим фактором, бо щойно його дізналися, у вас лишається один фактор. Генеруйте унікальний пароль для кожного сайту в Генераторі паролів, щоб витік деінде не давав нікому робочого першого фактора. Покрокові налаштування для двох найважливіших акаунтів є в статті як захистити акаунт Google і Apple ID, а якщо пароль уже витік, почніть зі статті що робити в перші 48 годин після витоку.

FAQ

Чи безпечна 2FA через SMS у 2026 році?

Вона краща, ніж сам пароль, але це найслабший другий фактор: його обходять через SIM-swap і через фішингові сторінки, які передають код далі. NIST SP 800-63B Rev. 4 відносить доставку через номер телефону до обмежених методів. Використовуйте SMS лише там, де іншого варіанта немає.

Чи є passkey двофакторною автентифікацією?

Так, якщо пристрій перед використанням просить відбиток пальця, обличчя або PIN. Це поєднання того, що у вас є (пристрій із приватним ключем), з тим, ким ви є або що знаєте. NIST допускає синхронізовані passkeys на AAL2, але не на AAL3, де потрібен ключ без можливості експорту, наприклад апаратний ключ безпеки.

Спробуйте безкоштовний генератор паролів

Генеруйте надійні, безпечні паролі миттєво. 100% приватно, на стороні клієнта.

Відкрити генератор паролів