Як веб-сайти захищають ваші паролі?
Тепер ми рідко проводимо місяць, не чуючи про якесь порушення даних; це може бути сучасний сервіс, такий як Gmail. або щось, про що більшість з нас забули, наприклад, MySpace
- Сценарій найгіршого випадку: простий текст
- Не так добре, як здається: шифрування
- Дивно просто (але не завжди ефективно): хешування
- Так добре, як виходить: соління і повільні хеші
- Чому це має значення?
- Ви виявили будь-яких правопорушників з відкритим текстом? Яким сайтам ви довіряєте беззастережно? Як ви думаєте, що є наступним кроком для безпечного зберігання пароля?
Фактор підвищення обізнаності про те, як наша особиста інформація пилососиться Google, соціальні мережі (зокрема, Facebook), і навіть наші власні смартфони., і ніхто не може звинуватити вас у тому, що ви трохи параноїдально ставитеся до того, як веб-сайти виглядають так само важливо, як ваш пароль. паролі паролів.
Насправді, для спокою, це те, що кожен повинен знати...
Сценарій найгіршого випадку: простий текст
Подумайте про це: головний сайт був зламаний. Кіберзлочинці прорвалися через будь-які основні заходи безпеки, які вони вживають, можливо, скориставшись недоліком своєї архітектури. Ви клієнт. На цьому сайті зберігаються ваші дані. На щастя, ви були впевнені, що ваш пароль у безпеці.
За винятком того, що сайт зберігає ваш пароль у вигляді простого тексту.
Це завжди була тикаюча бомба. Звичайні текстові паролі просто чекають, коли їх розберуть. Вони не використовують алгоритм, щоб зробити їх нечитаними. Хакери можуть прочитати це так само просто, як ви читаєте цю пропозицію.
Це страшна думка, чи не так? Не має значення, наскільки складний ваш пароль, навіть якщо він складається з 30 цифр: звичайна текстова база даних - це список всіх паролів, чітко прописаних, включаючи будь-які додаткові цифри і символи, які ви використовуєте. Навіть якщо хакери не зламають сайт, чи дійсно ви хочете, щоб адміністратор міг бачити ваші конфіденційні дані для входу?
Ви можете подумати, що це дуже рідкісна проблема, але приблизно 30% веб-сайтів електронної комерції використовують цей метод для «захисту» ваших даних - насправді є цілий блог, присвячений виявленню цих правопорушників! До минулого року навіть в НХЛ паролі зберігалися таким чином, як і Adobe до серйозного порушення.
Шокуюче, фірма із захисту від вірусів McAfee також використовує простий текст.
Простий спосіб з'ясувати, чи використовує сайт це, якщо відразу після реєстрації ви отримаєте від них електронний лист із зазначенням ваших реєстраційних даних. Дуже хитромудро. У цьому випадку ви можете змінити будь-які сайти з тим же паролем і зв'язатися з компанією, щоб попередити їх, що їх безпека турбує.
Це не обов'язково означає, що вони зберігають їх у вигляді простого тексту, але це хороший показник - і їм все одно не слід надсилати подібні повідомлення електронною поштою. Вони можуть стверджувати, що у них є міжмережеві екрани та ін захищати від кіберзлочинців, але нагадувати їм, що жодна система не є бездоганною і заважає втратити клієнтів перед ними.
Вони скоро передумають. З надією...
Не так добре, як здається: шифрування
Так що ці сайти роблять?
Багато хто звернеться до шифрування. Ми всі чули про це: здається непроникним спосіб шифрування вашої інформації, що робить її нечитаною до тих пір, поки не будуть представлені два ключі - один, утримуваний вами (це ваші дані для входу в систему), а іншою розглянутою компанією. Це відмінна ідея, яку ви повинні навіть реалізувати на своєму смартфоні. та інші пристрої.
Інтернет працює на шифрування: коли ви бачите HTTPS в URL, це означає, що сайт, на якому ви знаходитеся, використовує протокол SSL, або Протоколи безпеки транспортного рівня (TLS) для перевірки з'єднань і об'єднання даних
Але, незважаючи на те, що ви, можливо, чули, шифрування не ідеальне.
Це повинно бути безпечно, але це так само безпечно, як і те, де зберігаються ключі. Якщо веб-сайт захищає ваш ключ (тобто Пароль), використовуючи свій власний, хакер може розкрити останній, щоб знайти перший і розшифрувати його. Потрібне порівняно невелике зусилля злодія, щоб знайти ваш пароль; Ось чому ключові бази даних є величезною метою.
По суті, якщо їх ключ зберігається на тому ж сервері, що і ваш, ваш пароль також може бути у вигляді простого тексту. Ось чому вищезгаданий сайт PlainTextOffenders також перераховує сервіси, які використовують зворотне шифрування.
Дивно просто (але не завжди ефективно): хешування
Тепер ми кудись добираємося. Хешування паролів звучить як безглуздий жаргон, але це просто більш безпечна форма шифрування.
Замість того, щоб зберігати ваш пароль у вигляді простого тексту, сайт запускає його за допомогою хеш-функції, такої як MD5, алгоритм безпечного хешування (SHA) -1 або SHA-256, який перетворює його на зовсім інший набір цифр; це можуть бути цифри, літери або будь-які інші символи. Ваш пароль може бути IH3artMU0. Це може перетворитися на 7dVq $ @ ihT, і якщо хакер проник в базу даних, це все, що вони можуть побачити. І це працює тільки в один бік. Ви не можете декодувати його назад.
На жаль, це не так безпечно. Це краще, ніж простий текст, але все ж досить стандартно для кіберзлочинців. Ключ полягає в тому, що певний пароль створює певний хеш. Для цього є вагома причина: кожен раз, коли ви входите в систему з паролем IH3artMU0, він автоматично проходить через цю хеш-функцію, і веб-сайт дозволяє вам отримати доступ, якщо цей хеш і той, що в базі даних сайту, збігаються.
Це також означає, що хакери розробили райдужні таблиці, список хешів, які вже використовувалися іншими в якості паролів, і що складна система може швидко пройти через атаку методом грубої сили. атаки Якщо ви вибрали неймовірно поганий пароль, це буде високо на райдужних столах і могло бути легко зламано; більш незрозумілі - особливо великі комбінації - займуть більше часу.
Наскільки це може бути погано? Ще в 2012 році LinkedIn був зламаний. Адреси електронної пошти та відповідні їм хеші були пропущені. Це 177,5 мільйона хешів, що зачіпають 164,6 мільйона користувачів. Ви можете подумати, що це не надто турбує: вони просто набір випадкових цифр. Досить нерозбірливо, вірно? Два професійні зломщики вирішили взяти зразок 6,4 мільйона хешів і подивитися, що вони можуть зробити.
Вони зламали 90% з них всього за тиждень.
Так добре, як виходить: соління і повільні хеші
Жодна система не може бути неприступною. - хакери будуть природно працювати, щоб зламати будь-які нові системи безпеки - але більш сильні методи, що застосовуються на найбезпечніших сайтах, розумних хешів.
Солоні хеші засновані на практиці одноразового шифрування, випадкового набору даних, що генерується для кожного окремого пароля, зазвичай дуже довгого і дуже складного. Ці додаткові цифри додаються до початку або кінця пароля (або комбінації адреси електронної пошти та пароля) перед його проходженням через хеш-функцію, щоб протидіяти спробам з використанням райдужних таблиць.
Як правило, не має значення, чи зберігаються солі на тих же серверах, що і хеші; злом набору паролів може бути дуже трудомістким для хакерів, що ще більш ускладнюється, якщо сам пароль занадто складний і складний Ось чому ви завжди повинні використовувати надійний пароль, незалежно від того, наскільки ви довіряєте безпеці сайту.
Сайти, які особливо серйозно ставляться до своєї безпеки і, відповідно, до своєї безпеки, все частіше звертаються до повільних хешів як додатковий захід. Найвідоміші хеш-функції (MD5, SHA-1 і SHA-256) існують вже давно і широко використовуються, оскільки вони відносно прості в реалізації і дуже швидко застосовують хеші.
Все ще застосовуючи солі, повільні хеші ще краще в боротьбі з будь-якими атаками, які залежать від швидкості; обмежуючи хакерів істотно меншою кількістю спроб в секунду, вони зламують їх довше, тим самим роблячи спроби менш вартісними, враховуючи також знижену ймовірність успіху. Кіберзлочинці повинні зважити, чи варто атакувати віднімають багато часу повільні хеш-системи за порівняно «швидкі виправлення»: медичні установи зазвичай мають меншу безпеку., наприклад, щоб дані, які можна було отримати звідти, можна було продати за дивовижні суми.
Це також дуже адаптивно: якщо система відчуває особливе навантаження, вона може сповільнитися ще більше. Coda Hale, колишній головний розробник програмного забезпечення Microsoft, порівнює MD5 з, мабуть, найпомітнішою повільною хеш-функцією bcrypt (інші включають PBKDF-2 і scrypt):
"Замість злому пароля кожні 40 секунд [як у випадку з MD5] я буду зламувати їх кожні 12 років або близько того [коли система використовує bcrypt]. Ваші паролі можуть не потребувати такого захисту, і вам може знадобитися більш швидкий алгоритм порівняння, але bcrypt дозволяє вам вибирати баланс швидкості і безпеки ".
І оскільки повільний хеш все ще може бути реалізований менш ніж за секунду, це не повинно впливати на користувачів.
Чому це має значення?
Коли ми використовуємо онлайн-сервіс, ми укладаємо договір довіри. Ви повинні бути в безпеці, знаючи, що ваша особиста інформація зберігається в безпеці.
Безпечне зберігання вашого пароля особливо важливе. Незважаючи на численні попередження, багато хто з нас використовує один і той же для різних сайтів, так що, якщо, наприклад, зламаний Facebook, зламаний, ваші реєстраційні дані для будь-яких інших сайтів, які ви часто використовуєте з тим же паролем, також можуть бути відкритою книгою для кіберзлочинців.
