28 Лют, 2023

Небезпечне зберігання паролів

Vulnerability Assessment as a Service (VAaaS)

Tests systems and applications for vulnerabilities to address weaknesses.

Що таке сховище паролів і як воно виглядає?

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

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

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

Варто зазначити, що зберігання паролів - це лише один з аспектів безпеки паролів.

Генерація хешірованних паролів з використанням часто використовуваних алгоритмів хешування

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

Алгоритм хешування MD5 генерує 128-бітне хеш-значення. 

Пароль: "mypassword"

Хешований пароль: "1bc29b36f623ba82aaf6724fd3b16718"

Алгоритм хешування SHA-1 генерує 160-бітове хеш-значення. 

Пароль: "mypassword"

Хешований пароль: "c2e5f29acc2b0e4e982fc51ed4e71a6d0b046db4"

Алгоритм хешування SHA-256 генерує 256-бітове хеш-значення. 

Пароль: "mypassword"

Хешований пароль: "aae1c8b3086a958a6d043883ba37f31e876f16c63d78a1b3c6d0b9e633a6a814"

Bcrypt - це популярна функція хешування паролів, яка використовує алгоритм хешування з використанням солоного коду. 

Пароль: "mypassword"

Хешований пароль: "$2a $10$E8zZOnx9xPNktRo5K5Y5ieMQz5rI0wUM7fdoirdrwph9xbca1lp3q"

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

Щоб запобігти доступу зловмисників до паролів користувачів, важливо використовувати надійний алгоритм хешування, такий як SHA-256 або bcrypt, і додати додаткові рівні безпеки, такі як зміна пароля перед його хешуванням. Соління - це процес додавання випадкової рядка символів до пароля перед його хэшированием, що ускладнює зловмисникам використання попередньо обчислених хеш-таблиць або райдужних таблиць для злому пароля.

Типи зберігання паролів

Існують різні типи методів зберігання паролів, доступних для зберігання паролів та управління ними. Ось кілька найпоширеніших типів:

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

Менеджери паролів: Менеджери паролів - це програмні додатки, призначені для безпечного зберігання паролів облікових записів і управління ними. Вони шифрують ваші паролі і зберігають їх в захищеному сховище, доступ до якого можливий лише з допомогою майстер-пароля. Деякі популярні менеджери паролів включають LastPass, Dashlane і 1Password.

Фізична сховище паролів: Фізичні способи зберігання паролів включають запис паролів на папері або їх зберігання на USB-накопичувачі або іншому зовнішньому запам'ятовуючому пристрої. Хоча ці методи можуть здатися безпечними, вони можуть бути уразливі для крадіжки, втрати або пошкодження.

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

Де можуть бути розташовані сховища паролів?

Сховище паролів може перебувати в різних місцях, в залежності від системи або програми, що вимагає аутентифікації. 

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

У деяких випадках паролі можуть зберігатися віддалено на сервері, наприклад, у базі даних або в службі каталогів. Це забезпечує централізоване управління і аутентифікацію на декількох пристроях і додатках.

Менеджери паролів, такі як LastPass або Dashlane, зберігають паролі в хмарі, дозволяючи користувачам отримувати доступ до своїх паролів з будь-якого пристрою, підключеного до Інтернету.

Апаратні модулі безпеки (HSM). Деякі організації можуть використовувати спеціалізовані апаратні пристрої, звані HSM, для безпечного зберігання паролів. HSM забезпечують фізичний захист паролів і можуть бути доступні тільки авторизованим користувачам або додатками.

Розташування сховища паролів залежить від конструкції системи або програми та вимог безпеки. Важливо вибрати безпечний, зручний і відповідає вашим індивідуальним потребам спосіб зберігання паролів.

Як убезпечити зберігання паролів? 

Як згадувалося раніше, паролі повинні бути хешированы з використанням надійного одностороннього алгоритму хешування, такого як bcrypt, SHA-256 або Argon2. Ці алгоритми розроблені так, щоб бути повільними і важкими у зверненні назад, що робить їх більш стійкими до атак. Не забувайте про солінні, яке включає в себе додавання випадкової рядка символів до пароля перед його хэшированием. Це значно ускладнює зловмисникам використання попередньо обчислених хеш-таблиць або райдужних таблиць для злому пароля. Важливо використовувати унікальну сіль для кожного пароля, щоб зловмисники не використовували одну і ту ж сіль для декількох паролів, що може спростити їх злом.

Паролі мають зберігатися окремо від інших користувачів, щоб знизити ризик витоку даних. В ідеалі паролі мають зберігатися в окремій базі даних або на сервері, недоступному з Інтернету.

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

Важливо регулярно переглядати та оновлювати заходи безпеки, щоб випереджати виникаючі загрози. Це включає в себе оновлення програмного забезпечення і систем, запровадження нових заходів безпеки по мірі необхідності, а також проведення регулярних аудитів безпеки і тестування на проникнення.

Стандарти захисту паролем

Хоча захист сховища паролів, безсумнівно, має вирішальне значення, створення надійного пароля, який важко вгадати, має пріоритетне значення.

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

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

В цілому, використання стандартів паролів є важливим кроком у захисті нашої особистої і професійної інформації від несанкціонованого доступу та мінімізації наслідків витоку даних.

Ось деякі стандарти для створення надійних паролів:

  1. Довжина: використовуйте мінімум 12 символів, але чим довше, тим краще.
  2. Складність: Використовуйте комбінацію прописних і рядкових букв, цифр і символів.
  3. Уникайте використання загальних слів або фраз, таких як "пароль", "123456" або "qwerty".
  4. Не використовуйте особисту інформацію, таку як ваше ім'я, дата народження або адресу.
  5. Використовуйте унікальний пароль для кожної наявної у вас облікового запису.
  6. Подумайте про використання ключової фрази або комбінації випадкових слів.
  7. Уникайте використання легко угадываемых шаблонів, таких як "abcd1234" або "qwertyuiop".
  8. Уникайте використання послідовних комбінацій клавіш, таких як "asdfghjkl" або "zxcvbnm".
  9. Розгляньте можливість використання менеджера паролів для створення та зберігання надійних паролів.
  10. Регулярно оновлюйте свої паролі, принаймні, кожні шість місяців.

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

Що робить сховище паролів небезпечним?

Небезпечні типи зберігання паролів - це ті, які не забезпечують належного захисту паролів, роблячи їх вразливими для злому, крадіжки або несанкціонованого доступу. 

Зберігати паролі у вигляді звичайного тексту, наприклад, в документі або у базі даних, є одним з найбільш небезпечних методів. Це означає, що паролі легко читаються будь-яким, у кого є доступ до сховища.

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

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

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

Програмне забезпечення для збереження вашого пароля

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

Dashlane: інтуїтивно зрозумілий менеджер паролів, який пропонує безпечне зберігання паролів, автоматичне заповнення форм і цифровий гаманець для зберігання платіжної інформації.

1Password: зручний менеджер паролів, який дозволяє зберігати паролі, інформацію про кредитні картки та інші конфіденційні дані і керувати ними.

KeePass: безкоштовний менеджер паролів з відкритим вихідним кодом, який дозволяє зберігати паролі та іншу конфіденційну інформацію в зашифрованою базі даних.

Bitwarden: Багатоплатформовий менеджер паролів, який пропонує наскрізне шифрування, двофакторну аутентифікацію та інші функції безпеки.

Найбільш поширені недоліки зберігання паролів  

Було багато реальних прикладів збоїв у зберіганні паролів, які приводили до витоку даних і компрометації облікових записів користувачів. Одним з яскравих прикладів є витік даних LinkedIn в 2012 році, коли хакери вкрали понад 167 мільйонів облікових даних користувачів, включаючи адреси електронної пошти і паролі. Паролі зберігалися у несоленому хэшированном форматі SHA-1, що дозволяла зловмисникам легко зламати їх, використовуючи попередньо обчислені хеш-таблиці.

Іншим прикладом є витік даних Adobe в 2013 році, коли хакери отримали доступ до більш ніж 153 мільйонів облікових записів користувачів, включаючи імена користувачів і паролі. Паролі зберігалися в зашифрованому форматі, але з використанням слабкого алгоритму шифрування під назвою 3DES. Це полегшило зловмисникам розшифровку паролів і використання їх для компрометації облікових записів користувачів на інших веб-сайтах, де користувачі повторно використовували той же пароль.

У 2018 році фітнес-додаток Under Armour MyFitnessPal піддалося витоку даних, в результаті якої хакери вкрали імена користувачів, адреси електронної пошти та хэшированные паролі більше 150 мільйонів користувачів. Паролі зберігалися в хэшированном форматі з використанням алгоритму bcrypt, але компанія не використала жодної солі, що полегшувало зловмисникам злом паролів.

У 2013 і 2014 роках Yahoo зазнала двох масових джерел даних, в результаті яких хакери вкрали облікові дані всіх 3 мільярдів облікових записів користувачів. Паролі зберігалися в хэшированном форматі MD5, що є слабким алгоритмом, який можна легко зламати. Крім того, паролі не були підроблені, що ще більше спростило зловмисникам їх злом.

У 2013 році Target піддалася витоку даних, в результаті якої хакери вкрали інформацію про кредитних і дебетових картах більше 40 мільйонів клієнтів. Хакери отримали доступ до платіжної системи, використовуючи вкрадені облікові дані стороннього постачальника. Постачальник зберігав облікові дані в текстовому форматі на своїх серверах, що дозволяла зловмисникам легко їх вкрасти.

У 2021 році GitHub піддався витоку даних, в результаті якої хакери вкрали облікові дані понад 38 мільйонів облікових записів користувачів. Паролі зберігалися в хэшированном форматі SHA-1, що є слабким алгоритмом, який можна легко зламати. Крім того, паролі не були засолені, що полегшувало зловмисникам їх злом.

У 2014 році eBay піддався витоку даних, в результаті якої хакери вкрали облікові дані понад 145 мільйонів користувачів. Паролі зберігалися в хэшированном форматі з використанням алгоритму SHA-1, який є слабким алгоритмом, який можна легко зламати. Крім того, паролі не були засолені, що полегшувало зловмисникам їх злом.

Ці приклади демонструють важливість впровадження надійних методів зберігання паролів, таких як використання надійних алгоритмів шифрування, соління і безпечне зберігання, для зниження ризику витоку даних і злому облікових записів користувачів.

Висновок

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

Інші Послуги

Готові до безпеки?

зв'язатися з нами