Блог

Скільки часу знадобиться хакеру злам пароля?

Blog
робочий стіл з ноутбуком і екраном входу

Ваш пароль — це замок від вашої пошти, банку та соцмереж. Тепер уявіть злодія, який не підбирає ключ руками, а перебирає їх усі підряд, мільярди на секунду. Саме так працює brute-force, або перебір. Сучасні відеокарти роблять такі перевірки щодня, тож питання не в тому, чи можна зламати пароль, а в тому, скільки часу на це знадобиться.

Просте пояснення: кожен символ множить варіанти

Уявіть замок із шістьма цифрами. Кожна цифра має 10 варіантів, тож комбінацій мільйон. Додайте сьомий розряд, і їх уже десять мільйонів. Пароль працює так само: кожен новий символ не додає небагато, а множить кількість варіантів.

Тому різниця між «трохи довше» і «значно складніше» величезна. Пароль із шести малих літер має близько 300 мільйонів комбінацій, а з восьми вже понад 200 мільярдів.

Ось орієнтовні цифри для перебору на сучасному обладнанні:

ДовжинаЛише цифриМалі літериЛітери й цифриУсі символи
8миттєвомиттєво~6 хвилин~2 години
10миттєво~14 хвилин~3 тижні~300 років
12~6 секунд~7 днів~7 місяців~3 000 років
14~10 хвилин~12 років~2 000 роківмільйони років
16+~17 годин~8 000 роківмільярди роківпрактично вічність

Що означають ці цифри простими словами: «миттєво» — це менше секунди, тобто пароль не встигне навіть відкрити обліковий запис. «Мільйони років» — це довше, ніж існує людство. Числа залежать від алгоритму, яким зберігається пароль, і від обладнання, тож сприймайте їх як орієнтир, а не точний прогноз.

Головний висновок для новачків: дванадцять символів уже серйозно ускладнюють життя зловмисникам, а шістнадцять роблять атаку майже безглуздою.

Ось як виглядають паролі кожного типу. Це ілюстрації структури, а не рекомендації: не використовуйте їх.

ДовжинаЛише цифриМалі літериЛітери й цифриУсі символи
812345678qwertyuiSonce7341S0nc3!ok
109876543210xqzmvtlbpdKot7Ryba92Kot7#Ryba!
12482915730164wpkhzqtnrbsdTixo8Lumen47Tix#8Lumen!4
16+4829157301648215gjwqzvmtnrlkdpshTixo8Lumen47RipeTix#8Lumen!4Ripe

Звідси видно, що 12345678 і qwertyui зламаються миттєво, хоча виглядають як «пароль». Довгий набір символів, навпаки, навіть не має сенсу перебирати.

Ілюстрація до розділу про brute-force: відеокарти і потік символів

Чому «P@ssword123» — це не пароль

Багато людей вважає, що заміна «a» на «@» і цифри в кінці роблять пароль міцним. Для хакерів це одна з перших речей, які вони перевіряють.

Зловмисники користуються словниковими атаками. Вони не перебирають усе підряд, а починають зі списків найпоширеніших паролів, імен, слів, дат і типових схем заміни. Тому P@ssword123 або qwerty падають за частки секунди, як би складно вони не виглядали.

Друга пастка — повторне використання. Ви входите в пошту, банк і соцмережу з одним і тим самим паролем. Коли один із сервісів зазнає витоку бази, зловмисники беруть ці дані й пробують їх на інших сайтах. Цей метод називається credential stuffing. Тут працює не перебір, а чужа база, тому навіть складний пароль не врятує, якщо він повторюється.

Як створити пароль, який справді важко зламати

1. Почніть із фрази. Замість одного складного слова використайте кілька випадкових:

ПрикладСлівОцінка
coffee-run2слабко: короткий і з поширених слів
green-coffee-swift-run4добре: довго, але слова можна передбачити
green-coffee-swift-run-tiger5сильно: слова випадкові й фраза довга

Ключове слово тут «випадкові». Фраза з осмислених слів, як-от цитата з пісні чи назва вашої вулиці, зламується словниковою атакою. Найкраще, коли слова вибирає генератор менеджера паролів.

2. Дайте менеджеру паролів зробити важку роботу. Keychain, Bitwarden або 1Password створюють окремий довгий пароль для кожного сайту. Вам потрібно запам'ятати лише один головний пароль. Він має бути найдовшим і найунікальнішим, і його варто зберегти в безпечному місці.

3. Додайте другий замок. Двофакторна автентифікація (2FA) вимагає другий код, наприклад із застосунку або SMS. Навіть якщо пароль витік, зайти без цього коду не вийде. Passkeys ідуть далі: вхід відбувається через ваш пристрій, наприклад Face ID чи відбиток пальця. Самого пароля там немає, тож і красти нічого.

Ілюстрація до розділу про менеджер паролів і passkeys: рука з телефоном

Для айтівців: що насправді відбувається

Для тих, хто працює з бекендом або безпекою, головна різниця — як зберігається пароль. Сервіс не має зберігати його у відкритому вигляді. Замість цього він зберігає хеш, а для кожного користувача додає сіль (salt), щоб однакові паролі давали різні хеші.

Саме тому ціна перебору залежить від функції хешування:

  • MD5, SHA-1, SHA-256 швидкі, тож на GPU їх можна перевірити мільярдами за секунду. Для паролів вони не підходять.
  • bcrypt, scrypt, Argon2 спеціально повільні та потребують пам'яті, тож перебір коштує значно дорожче.

Таблиця вище показує оцінки для швидкого хешування на сучасних GPU. Для Argon2 чи bcrypt цифри суттєво вищі.

Рекомендації NIST (SP 800-63B) тут узгоджуються з практикою:

  • довжина важливіша за складність і примусову зміну раз на кілька місяців;
  • пароль варто перевіряти за списками витеків і відхиляти відомі слабкі;
  • для вебу рекомендовано підтримувати passkeys (WebAuthn/FIDO2), де ключ прив'язаний до домену й не може бути вкрадений фішингом.

Фішинговий сайт, який виглядає як ваш банк, не передасть passkey, бо той прив'язаний до справжнього домену. Саме тому він стійкіший навіть до людської помилки.

Коротко для тих, хто поспішає

Довгий, унікальний пароль або фраза плюс другий фактор захисту важать більше за будь-які витончені символи. Сьогодні варто перевірити пошту та банк: якщо там стоїть пароль, який ви використовуєте всюди, саме час його змінити.

Поділитися:

Як вам стаття?