Автентифікація і авторизація — це два ключові компоненти безпеки інформаційних систем, які забезпечують захист даних і контроль доступу до ресурсів.
Автентифікація
Автентифікація — це процес перевірки особи користувача або пристрою, щоб підтвердити їхню ідентичність. Це перший крок у забезпеченні безпеки, який гарантує, що користувач є тим, за кого себе видає.
Методи автентифікації
1. Паролі: Найпоширеніший метод. Користувач вводить унікальний пароль для доступу до системи. 2. Біометричні дані: Використання фізичних характеристик (відбитки пальців, сканування обличчя, райдужна оболонка) для підтвердження особи. 3. Токени: Використання апаратних або програмних токенів (наприклад, USB-токени) для підтвердження особи. 4. Багатофакторна автентифікація (MFA): Поєднання декількох методів автентифікації, що підвищує рівень безпеки (наприклад, пароль + код з SMS). 5. Соціальна автентифікація: Використання облікових записів соціальних мереж для входу в різні системи.
Авторизація
Авторизація — це процес надання або обмеження доступу до ресурсів на основі прав, визначених для конкретного користувача або системи. Після успішної автентифікації система перевіряє, які дії може виконувати користувач.
Методи авторизації
1. Контроль доступу на основі ролей (RBAC): Користувачі отримують доступ на основі їхніх ролей у організації (наприклад, адміністратори, звичайні користувачі). 2. Контроль доступу на основі атрибутів (ABAC): Доступ визначається на основі атрибутів користувача, ресурсу та середовища (наприклад, час доступу). 3. Дискреційний контроль доступу (DAC): це модель контролю доступу, в якій власник ресурсу (файлу, папки, системи) самостійно визначає, хто має доступ до нього і які операції можна виконувати. 4. Політики доступу (MAC): це модель контролю доступу, де доступ до ресурсів визначається централізованими правилами безпеки, а не самим власником ресурсу.
Взаємозв’язок
Автентифікація — це перший крок, що підтверджує особу користувача. Без успішної автентифікації авторизація не може бути виконана.
Авторизація наступає після автентифікації. Після підтвердження особи система визначає, які ресурси доступні для користувача та які дії він може виконувати.
Автентифікація та авторизація є критично важливими аспектами безпеки інформаційних систем. Розуміння цих процесів допомагає організаціям забезпечити належний рівень захисту та контролю доступу до ресурсів.
В цьому відео поговоримо про: 00:00 Автентифікація і авторизація 00:51 Автентифікація 02:45 Авторизація 06:51 Взаємозв’язок
Хешування — це процес перетворення будь-яких даних (наприклад, тексту, паролів, файлів) в унікальний набір символів фіксованої довжини за допомогою спеціальної математичної функції, яку називають хеш-функцією.
Як це приблизно працює?
1. Ви подаєте на вхід дані будь-якої довжини. 2. Хеш-функція обробляє ці дані і видає унікальний код (хеш), який має фіксовану довжину. 3. Навіть якщо змінити вхідні дані на один символ, хеш зміниться кардинально. 4. Зворотне відновлення вихідних даних із хешу зазвичай неможливе.
Сфери використання
Збереження паролів – замість збереження паролів у відкритому вигляді, системи зберігають лише їх хеші.
Перевірка цілісності файлів – наприклад, коли ви завантажуєте файл і перевіряєте його контрольну суму (SHA-256).
Швидкий пошук даних – у базах даних або структурах типу хеш-таблиць.
SHA-256
SHA-256 — це криптографічна хеш-функція, яка приймає на вхід довільні дані і повертає хеш (контрольну суму) фіксованої довжини — 256 біт.
Основні властивості SHA-256
•Фіксована довжина – незалежно від розміру вхідних даних, вихід завжди 256 біт. •Односторонність – неможливо відновити вихідні дані за хешем. •Ефект лавини – навіть невелика зміна вхідних даних повністю змінює хеш. •Стійкість до колізій – дуже складно знайти два різні входи, які дають однаковий хеш.
Як приблизно працює SHA-256?
1. Розбиття даних на блоки по 512 біт – якщо дані менші, додається спеціальне доповнення (padding). 2. Ініціалізація внутрішніх змінних – використовується вісім 32-бітних початкових значень, визначених у стандарті. 3. Основний цикл (64 раунди обчислень) – виконується серія логічних операцій (зсуви, додавання, побітові операції) з використанням 64 унікальних констант. 4. Фінальне хешування – вихідні значення змішуються та формують 256-бітний підсумковий хеш.
Приклад SHA-256 Вхід:“hello” SHA-256 хеш:2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 Вхід:“Hello”(відрізняється лише однією великою літерою) SHA-256 хеш:185f8db32271fe25f561a6fc938b2e264306ec304eda518007d1764826381969
Дуже короткий огляд хеш-функцій
Сімейство SHA
• SHA-1 (160-бітний хеш, вважається застарілим через вразливість до колізій). • SHA-2 (SHA-224, SHA-256, SHA-384, SHA-512) — сучасний стандарт. • SHA-3 (SHA3-224, SHA3-256, SHA3-384, SHA3-512) — нове покоління, засноване на алгоритмі Keccak.
Інші хеш-функції
• MD5 (128-бітний, швидка, але небезпечниа для криптографії). • RIPEMD-160 (схожа на SHA-1, але більш стійка). • BLAKE2, BLAKE3 (швидші за SHA-256, використовується в криптовалюті). • Whirlpool (512-бітний, використовується в деяких криптографічних системах).
Хешування vs Шифрування
Характеристика
Шифрування
Хешування
Призначення
Захист інформації від сторонніх
Генерація відбитка для перевірки даних
Процес
Дані перетворюються у зашифрований текст.
Дані перетворюються у фіксований рядок за допомогою хеш-функції
Зворотність
Зворотний процес можливий—дані можна розшифрувати за допомогою правильного ключа.
Неможливо відновити оригінальні дані за отриманим хешем.
Застосування
Захист файлів, передача даних у мережах (HTTPS, VPN), шифрування жорстких дисків.
Перевірка цілісності файлів, зберігання паролів, цифрові підписи.
Шифрування і хешування – це два різні методи обробки даних у сфері кібербезпеки.
Якщо потрібно приховати дані та згодом їх розшифрувати – використовуйте шифрування.
Якщо потрібно створити унікальний відбиток даних – використовуйте хешування.
В цьому відео поговоримо про: 00:00 Хешування 02:42 Сфери використання 03:15 SHA-256 08:46 Дуже короткий огляд хеш-функцій 11:37 Хешування vs Шифрування
Шифрування відіграє ключову роль у кібербезпеці, оскільки є одним із основних засобів захисту інформації від несанкціонованого доступу, змін та атак. Воно забезпечує конфіденційність, цілісність і автентичність даних, що дозволяє мінімізувати ризики при обміні інформацією через інтернет та інші мережі.
Роль шифрування
Забезпечення конфіденційності
Шифрування дозволяє захистити чутливі дані, такі як особиста інформація, паролі, фінансові дані або медичні записи, від несанкціонованого доступу. Навіть якщо хтось отримає доступ до зашифрованих даних, вони не зможуть їх прочитати або використовувати без відповідного ключа для розшифровання. Приклад: шифрування даних в електронних платіжних системах, де транзакції захищені від перехоплення зловмисниками.
Цілісність даних
Шифрування гарантує, що дані не були змінені під час передачі або зберігання. За допомогою хешування і криптографічних підписів можна переконатися, що інформація не була змінена зловмисниками або під час випадкових збоїв. Приклад: протоколи, як TLS/SSL, використовуються для забезпечення цілісності даних під час обміну інформацією між браузером і сервером, щоб уникнути атак, таких як “man-in-the-middle” (MITM).
Аутентифікація та підтвердження особи
Шифрування також використовується для перевірки автентичності користувачів або систем. Цифрові підписи та аутентифікація через шифрування дають змогу підтвердити, що певні дані надійшли від конкретної особи або організації. Приклад: у кібербезпеці часто використовують RSA або ECDSA для перевірки цифрових підписів, що забезпечує автентичність документів або програмного забезпечення, а також перевірку джерела даних.
Захист від атак
Шифрування допомагає захистити дані від різних видів атак, зокрема: • Перехоплення даних: атаки, такі як Man-in-the-Middle (MITM), коли зловмисники намагаються перехопити дані під час їх передачі через незахищену мережу. • Реверс-інжиніринг: навіть якщо зловмисники отримають доступ до коду чи файлів, вони не зможуть отримати доступ до інформації, поки вона зашифрована. • Атаки на паролі: шифрування паролів у базах даних або під час аутентифікації захищає від їх крадіжки.
Захист даних на пристроях і в хмарах
Захист пристроїв (комп’ютерів, смартфонів) і хмарних сховищ через шифрування гарантує, що навіть якщо фізичний доступ до пристрою буде отримано зловмисниками, вони не зможуть скористатися даними без наявності ключа для розшифрування. Приклад: на персональних пристроях часто використовуються FileVault або BitLocker для повного шифрування дисків. Це забезпечує безпеку особистих даних у разі крадіжки пристрою.
Протидія соціальним атакам
Шифрування допомагає у боротьбі з атаками, що спрямовані на отримання доступу до конфіденційної інформації через маніпуляції з людьми (наприклад, фішинг). За допомогою шифрування можна упередити доступ зловмисників до критичних систем.
Захист мережевих з’єднань
Шифрування є одним з основних елементів для забезпечення безпеки мережевих з’єднань, особливо через Інтернет, де передаються чутливі дані. • VPN (Virtual Private Network) використовують шифрування для створення захищених тунелів, що дозволяє користувачам анонімно передавати дані в мережі Інтернет. • TLS/SSL використовуються для захисту з’єднань між клієнтами та веб-серверами (наприклад, HTTPS для захищених веб-з’єднань).
Запобігання витокам інформації
Шифрування даних також допомагає зменшити імовірністьвитоків чутливої інформації, таких як фінансові записи, особисті дані чи корпоративна інформація, у випадку атаки або компрометації системи. Приклад: навіть якщо система буде зламана, зашифровані дані, такі як персональні дані чи фінансові звіти, не можуть бути використані без ключа для їх розшифрування.
Захист на рівні криптовалют
Шифрування також використовується для забезпечення безпеки криптовалют, таких як Bitcoin, де кожна транзакція та приватний ключ шифруються, щоб запобігти несанкціонованому доступу до коштів користувача.
Програми для шифрування
VeraCrypt
Один з найпопулярніших і надійних інструментів для шифрування дисків і томів. Він дозволяє створювати зашифровані віртуальні диски, які працюють як звичайні диски, або повністю шифрувати цілі розділи жорстких дисків. VeraCrypt підтримує складні алгоритми шифрування, такі як AES, Serpent і Twofish, що забезпечує високий рівень захисту. • Платформи: Windows, macOS, Linux • Особливості: Підтримка шифрування дисків, створення зашифрованих томів, стійкість до атак на пароль
BitLocker
Інструмент для шифрування дисків, вбудований у операційну систему Windows (версії Pro і Enterprise). Він дозволяє шифрувати весь диск, щоб захистити дані від несанкціонованого доступу, якщо комп’ютер буде викрадений або стане доступним стороннім особам. • Платформи: Windows (Pro, Enterprise) • Особливості: Шифрування всього диска, інтеграція в систему, використання TPM (Trusted Platform Module) для зберігання ключів
FileVault
Інструмент для шифрування диска, вбудований у macOS. Він використовує алгоритм AES для шифрування даних на всьому диску Mac і допомагає захистити особисту інформацію в разі викрадення комп’ютера. • Платформи: macOS • Особливості: Шифрування всього диска, підтримка AES-128 і AES-256
AxCrypt
Програма для шифрування окремих файлів та папок. Вона дуже зручна для простих користувачів, оскільки надає можливість легко зашифрувати файли за допомогою пароля. AxCrypt підтримує як симетричне шифрування, так і розширене шифрування для більш досвідчених користувачів. • Платформи: Windows, macOS, Android, iOS • Особливості: Легкість у використанні, інтеграція з контекстним меню, підтримка AES-128 і AES-256
DiskCryptor
Програмне забезпечення для повного шифрування дисків і розділів. Він підтримує шифрування всіх даних на диску, включаючи операційну систему, що забезпечує високий рівень захисту від несанкціонованого доступу. • Платформи: Windows • Особливості: Повне шифрування диска, підтримка AES, Twofish, Serpent
В цьому відео поговоримо про: 00:00 Роль шифрування 05:05 Програми для шифрування 08:39 Трохи працюємо з VeraCrypt
Атаки на шифрування — це спроби зловмисників зламати або обійти систему шифрування з метою отримання доступу до захищених даних. Оскільки шифрування є основою багатьох методів захисту даних, важливо розуміти, як ці атаки можуть працювати і які заходи можна застосувати для їхнього запобігання.
Атака методом підбору
Атака методом підбору (Brute Force Attack) Це одна з найпростіших атак, яка полягає в переборі всіх можливих ключів шифрування, поки не буде знайдений правильний. Вона використовує обчислювальні потужності для автоматичного випробовування кожного варіанту ключа.
Принцип роботи
Якщо шифрування використовує слабкий ключ (наприклад, короткий або простий), зловмисник може швидко випробувати всі варіанти до тих пір, поки не знайде правильний.
Захист
Використання довгих та складних ключів значно знижує ефективність цієї атаки.
Атака за допомогою аналізу частотності
Атака за допомогою аналізу частотності (Frequency Analysis) Ця атака використовується для зламування симетричних шифрів, зокрема, коли текст зашифрований за допомогою простих шифрів заміни, як, наприклад, шифр Цезаря.
Принцип роботи
Зловмисник аналізує частоту появи різних символів у зашифрованому тексті. Враховуючи, що деякі літери в мові зустрічаються частіше, ніж інші, можна відновити оригінальні символи.
Захист
Для запобігання таких атак використовуються складніші алгоритми шифрування (наприклад, AES), що зводить до мінімуму можливість аналізу частотності.
Атака на довжину ключа
Атака на довжину ключа (Key Length Attack) Це атака, яка спрямована на злом шифру, що використовує слабкий ключ. Зловмисник може здійснити метод перебору ключів на основі їхньої довжини або спробувати знайти закономірності у ключах.
Принцип роботи
Якщо шифрування використовує короткий ключ (наприклад, 40 біт), це може значно знизити час, необхідний для атаки методом перебору. Проте довші ключі роблять цю атаку малоефективною.
Захист
Використання довгих та складних ключів (наприклад, 256-бітових для AES) значно ускладнює можливості успіху для цієї атаки.
Атака через вибір шифротексту
Атака через вибір шифротексту (Chosen Ciphertext Attack, CCA) В атаці CCA зловмисник має можливість вибирати зашифровані повідомлення (шифротексти) і спостерігати за їхнім дешифруванням. Така атака націлена на асиметричні системи шифрування, зокрема, на RSA.
Принцип роботи
Зловмисник може вибирати конкретні шифротексти і отримувати їх дешифровані версії, що дозволяє йому вивести деяку інформацію про самі дані або шифрувальний ключ.
Захист
Використання механізмів гарантій цілісності та елементів автентифікації (наприклад, цифрових підписів або хеш-функцій) може допомогти захистити систему від таких атак.
Атака через вибір відкритого тексту
Атака через вибір відкритого тексту (Chosen Plaintext Attack, CPA) У цьому випадку зловмисник має можливість вибирати відкритий текст, який буде зашифрований. Він може спостерігати за шифруванням цих текстів і використовувати отриману інформацію для зламування шифру.
Принцип роботи
Зловмисник може створювати специфічні відкриті тексти, аналізувати їхні шифротексти, а потім використовувати цю інформацію для відновлення ключа або дешифрування інших повідомлень.
Захист
Використання складних симетричних шифрів і застосування паддінгу (додавання випадкових символів до даних перед шифруванням) може знизити ризики таких атак.
Атака з повторним використанням ключів
Атака з повторним використанням шифрувальних ключів (Key Reuse Attack) Ця атака відбувається, коли для кількох повідомлень використовується один і той самий шифрувальний ключ. Якщо зловмисник здобуде хоча б один шифротекст, це може дати йому достатньо інформації для розкриття інших повідомлень, зашифрованих тим самим ключем.
Принцип роботи
Вразливості виникають, коли для шифрування кількох повідомлень або блоків даних використовуються однакові ключі, що дозволяє зловмиснику вивести зв’язок між зашифрованими повідомленнями.
Захист
Використання динамічних ключів для кожного сеансу чи повідомлення, а також механізмів ротації ключів можуть запобігти такій атаці.
Атака “man-in-the-middle” (MITM)
Атака “man-in-the-middle” (MITM) Ця атака є однією з найпоширеніших на передачу ключів, і її мета — перехоплення та зміна комунікацій між двома сторонами (клієнтом і сервером) без їхнього відома.
Принцип роботи
Зловмисник розміщується між двома комунікуючими сторонами (наприклад, між клієнтом та сервером), перехоплюючи всі повідомлення, включаючи ключі шифрування, що передаються. Після цього він може змінювати ці повідомлення, навіть шифрувати їх своїм власним ключем.
Захист
Використання сертифікатів SSL/TLS для автентифікації серверів і клієнтів, цифрових підписів, а також застосування публічно-приватних пар ключів для забезпечення безпеки під час передачі ключів. Важливо також перевіряти автентичність кожного учасника сесії перед початком обміну даними.
Атака через витоки ключів
Атака через витоки ключів (Key Leakage) Зловмисники можуть намагатися отримати доступ до ключів, які зберігаються в пам’яті, на жорсткому диску або в процесі передачі через канал зв’язку
Принцип роботи
Атака може бути націлена на вразливості в системах зберігання ключів або на перехоплення переданих даних під час їхнього зберігання чи передачі.
Захист
Використання апаратного захисту для зберігання ключів (наприклад, HSM — Hardware Security Module), шифрування ключів на рівні додатків та управління доступом (тільки авторизовані користувачі мають доступ до ключів).
Атака через слабке шифрування каналу
Атака через слабке шифрування каналу (Weak Encryption) Якщо канал передачі ключів використовує слабкі або застарілі методи шифрування, то зловмисники можуть легко зламати та отримати доступ до переданих ключів.
Принцип роботи
Зловмисники можуть експлуатувати слабкі шифри, такі як DES, які мають вразливості, які дозволяють зламати шифрування за допомогою сучасних обчислювальних потужностей.
Захист
Використання сучасних шифрів, таких як AES з достатньою довжиною ключа (наприклад, 256 біт) та оновлення шифрувальних протоколів для забезпечення більш високого рівня захисту.
Атака через підробку сертифікатів
Атака через підробку сертифікатів (Certificate Forgery) У разі використання сертифікатів для автентифікації обміну ключами зловмисники можуть спробувати підробити сертифікат або ввести себе як довірену сторону.
Принцип роботи
Зловмисник може створити підроблений сертифікат для того, щоб переконати жертву передати ключі або іншу чутливу інформацію.
Захист
Використання сертифікатів, виданих надійними сертифікаційними центрами, перевірка ланцюга сертифікації та перевірка підписів допомагають мінімізувати ризик таких атак.
В цьому відео поговоримо про: 00:00 Атака методом підбору 02:02 Атака за допомогою аналізу частотності 03:01 Атака на довжину ключа 04:43 Атака через вибір шифротексту 05:38 Атака через вибір відкритого тексту 06:29 Атака з використанням ключів 07:23 Атака “man-in-the-middle” (MITM) 08:43 Атака через витоки ключів 09:42 Атака через слабке шифрування каналу 10:26 Атака через підробку сертифікатів
“Тілько ворог, що сміється... Смійся, лютий враже! Та не дуже, бо все гине,— Слава не поляже; Не поляже, а розкаже, Що діялось в світі, Чия правда, чия кривда І чиї ми діти. Наша дума, наша пісня Не вмре, не загине... От де, люде, наша слава, Слава України! Без золота, без каменю, Без хитрої мови, А голосна та правдива, Як господа слово.”