Щоб потрапити в робочу пошту чи хостинг компанії, зловмисникові часто не потрібна складна атака — досить пароля, який виманили фальшивим листом або знайшли в базі, яку злили в мережу. Далі він читає листування, змінює реквізити в рахунках і скидає паролі до інших сервісів. Двофакторна автентифікація ставить на цьому шляху другий замок: самого пароля вже не вистачає, щоб увійти.
Коротко
- Пароль сам по собі вже не захищає: його можуть виманити, підібрати або знайти у витоку даних.
- Двофакторна автентифікація вимагає другого доказу, що це справді ви, тож одного викраденого пароля для входу вже не вистачить.
- Почніть із пошти, домену, хостингу й платіжних систем, а для найважливіших облікових записів обирайте ключі доступу або апаратні ключі.
Чому пароля замало і що змінює 2FA
Пароль легко віддати чужим людям і навіть не помітити цього. Перший шлях — фішинг (phishing): лист «від банку» веде на копію сторінки входу, і людина сама вводить туди пароль. Другий — повторне використання паролів: якщо той самий пароль стоїть на старому форумі й у робочій пошті, витік із форуму відкриває пошту. Третій — витоки даних (data breaches): величезні бази логінів і паролів регулярно потрапляють у мережу, а зловмисники автоматично перевіряють їх на популярних сервісах.
Жоден із цих сценаріїв не залежить від складності пароля. Двофакторна автентифікація (two-factor authentication, 2FA) розвʼязує саме цю проблему: для входу потрібні два різні докази. Перший — те, що ви знаєте, тобто пароль. Другий — те, що ви маєте, як-от телефон чи ключ безпеки, або те, чим ви є: відбиток пальця чи обличчя.
Який другий фактор обрати
Не всі другі фактори однаково надійні. Ось вони від найслабшого до найсильнішого:
- SMS-коди. Краще, ніж нічого, але це найслабший варіант. Зловмисник може переконати оператора видати йому SIM-картку з вашим номером (підміна SIM-картки, SIM swapping) і отримувати ваші коди.
- Застосунки-автентифікатори. Застосунок на телефоні сам генерує новий код, зазвичай кожні 30 секунд, і код не йде через мережу оператора. Це надійніше за SMS, хоча код усе ще можна ввести на фальшивому сайті.
- Ключі доступу (passkeys). Телефон чи компʼютер підтверджує вхід відбитком, обличчям або PIN-кодом. Секретна частина ключа не передається сайту, а сам ключ привʼязаний до адреси справжнього сайту.
- Апаратні ключі безпеки. Невеликий USB- або NFC-пристрій, що працює за тим самим принципом, — найвищий рівень захисту для адміністраторів, фінансів і власника домену.
Ключі доступу й апаратні ключі побудовані на відкритому стандарті FIDO2/WebAuthn, який підтримують сучасні браузери й операційні системи. Їхня головна перевага — стійкість до фішингу: на підробленій сторінці ключ просто не спрацює. Хоч би що ви обрали, збережіть резервні коди відновлення в надійному місці.
Які облікові записи захистити першими
Вмикати 2FA всюди за один день не обовʼязково. Почніть із сервісів, через які можна відібрати все інше:
- Пошта. Через неї скидають паролі до решти сервісів.
- Реєстратор домену. Хто керує доменом, той може перенаправити ваш сайт і пошту куди завгодно.
- Хостинг і хмара. Тут живуть сайт, бази даних і резервні копії.
- Платіжні системи й банк. Це прямий доступ до грошей.
- Адмін-панелі. CMS, CRM і панель керування продуктом містять дані клієнтів.
- Репозиторій коду. Через нього в продукт можна непомітно вбудувати шкідливі зміни.
Окремо подбайте про спільні облікові записи, якими користуються кілька людей: вони легко залишаються без 2FA, бо «так незручно».
2FA у вашому власному продукті
Якщо у вашого сайту чи застосунку є адмін-панель або особисті кабінети клієнтів, захист входу — уже ваша відповідальність. Для адміністраторів 2FA варто зробити обовʼязковою: один зламаний обліковий запис адміністратора відкриває дані всіх клієнтів.
Клієнтам зазвичай досить дати змогу увімкнути другий фактор. Добре, коли продукт підтримує застосунки-автентифікатори й ключі доступу, а SMS лишає запасним варіантом.
Найслабше місце будь-якої 2FA — відновлення доступу. Якщо другий фактор можна вимкнути листом у підтримку, зловмисник піде саме цим шляхом. Тому продумайте резервні коди, перевірку особи під час відновлення, сповіщення про вхід із нового пристрою й обмеження кількості спроб.
Що ще входить у базовий мінімум
Двофакторна автентифікація — фундамент, але не весь будинок. До неї варто додати ще кілька простих звичок.
Менеджер паролів створює довгий окремий пароль для кожного сервісу й підставляє його лише на справжньому сайті. Принцип найменших привілеїв (least privilege) означає, що кожен працівник має доступ лише до потрібного для роботи, а після звільнення доступ закривають того ж дня.
Оновлення закривають відомі вразливості в операційних системах, CMS, плагінах і бібліотеках. Резервні копії рятують, коли щось пішло не так, але лише якщо вони зберігаються окремо від основної системи й ви перевірили, що з них можна відновитися.
Чек-лист
- Увімкніть 2FA для пошти, домену, хостингу й платіжних систем уже цього тижня.
- Замініть SMS-коди на застосунок-автентифікатор або ключі доступу всюди, де це можливо.
- Видайте апаратні ключі адміністраторам і власникам найважливіших облікових записів.
- Збережіть резервні коди відновлення в надійному місці, окремо від телефона.
- Зробіть 2FA обовʼязковою для всіх адміністраторів вашого продукту.
- Перейдіть на менеджер паролів з окремим паролем для кожного сервісу.
- Перевірте, хто має доступ до яких систем, і заберіть зайві права.
Як ми це робимо в IANKO
Ми закладаємо безпеку входу в архітектуру з першого дня, а не латаємо її після запуску. Технічний директор (CTO) відповідає за архітектуру й інфраструктуру, тож двофакторна автентифікація для адмін-панелі, розмежування прав і безпечне відновлення доступу потрапляють у план ще на етапі «Знайти мету». QA-інженери й тестувальники перевіряють не лише звичайний вхід, а й незручні сценарії: втрачений телефон, повторні спроби, вхід із нового пристрою. А на етапі «Робити краще» ми регулярно оновлюємо залежності продукту.
Підсумок
Пароль сам по собі давно перестав бути надійним захистом, а двофакторна автентифікація робить викрадений пароль майже марним. Почніть із пошти й домену, оберіть найнадійніший доступний фактор і лише потім переходьте до решти сервісів. Наступний крок — подивитися, наскільки добре захищений вхід у ваш власний продукт.