Що таке IPsec і як він працює?
IPsec є основою методів, до яких звикли забезпечити з’єднання між двома точками. Він розшифровується як безпека Інтернет-протоколу і найчастіше спостерігається у VPN. Це може бути дещо складним, але це корисний варіант для забезпечення з’єднань у певних ситуаціях.
Це керівництво розбиває IPsec на легкі фрагменти, даючи вам ознайомлення, що стосується того, що таке протокол, як він працює, та деякі його потенційні проблеми безпеки.
IPsec: огляд
IPsec спочатку був розроблений, оскільки найпоширеніший інтернет-протокол, IPv4, не має в своєму розпорядженні великою кількістю правил безпеки. Дані, що передаються через IPv4, можна легко перехоплювати, змінювати або зупиняти, що робить його поганою системою для будь-яких важливих передач.
Для захисту інформації був потрібен новий набір стандартів. IPsec заповнив цю прогалину, виступаючи в якості основи, яка може автентифікувати з’єднання, а також довести цілісність даних і зробити їх конфіденційними. IPsec – це відкритий стандарт, який діє на мережевому рівні. Він може бути використаний для надійної передачі даних від хоста до хоста, мережі до мережі або між мережею та вузлом.
IPsec найчастіше використовується для захисту трафіку, який проходить через IPv4. Спочатку виникла потреба у впровадженні нового протоколу Internet, IPv6, для підтримки IPsec. Незважаючи на це, зараз це лише рекомендація і не виконується.
В якості основи IPsec він складається з трьох основних елементів. Перші два – це протоколи, Інкапсуляція корисного вантажу безпеки (ESP) та заголовка аутентифікації (AH). Асоціації з безпеки (SA) є заключним аспектом.
ESP можна використовувати як для шифрування, так і автентифікації даних, тоді як AH може використовуватися лише для аутентифікації. Обидва варіанти зазвичай використовуються окремо, хоча можливо використовувати їх разом.
IPsec використовує SA для встановлення параметрів з’єднань. Ці параметри включають системи управління ключами, які використовує кожна сторона для автентифікації один одного, а також алгоритми шифрування, алгоритми хешування та інші елементи, важливі для роботи безпечного та стабільного з’єднання.
IPsec може використовувати як ESP, так і AH в тунельному або транспортному режимі. Коли використовується тунельний режим, весь пакет даних або шифрується, або аутентифікується (або обидва). Корисне навантаження, заголовок та трейлер (якщо вони включені) загортаються в інший пакет даних для захисту.
У транспортному режимі оригінальний заголовок залишається, але під ним додається новий заголовок. Існують також деякі інші зміни, залежно від того, використовується ESP або AH. Це служить для захисту пакету, проте деяка інформація все ще доступна для зловмисників.
Найпоширеніша конфігурація, яку ми бачимо ESP з аутентифікацією в тунельному режимі. Саме на це покладаються багато VPN, щоб захистити дані. Він функціонує як зашифрований тунель, забезпечуючи безпечний прохід даних під час проходження через потенційно небезпечні проміжні мережі.
Історія IPsec
У перші дні Інтернету безпека не була великим пріоритетом у багатьох ситуаціях. Це тому, що Інтернет-спільнота була обмежена лише тими, хто мав знання, ресурси та бажання ними користуватися. Кількість користувачів була невеликою порівняно з сучасним часом, і було передано набагато менший обсяг даних. Через це нападники мали набагато менше можливостей.
По мірі того, як громада зростала і Інтернет став активнішим, безпека стала більше необхідною. У вісімдесятих роках NSA використовувала свою програму Secure Data Network Systems (SDNS) для фінансування розробки ряду протоколів, орієнтованих на безпеку..
Результати були опубліковані Національним інститутом стандартів і технологій (NIST) у 1988 році. Один із протоколів, викладених NIST, Протокол безпеки на рівні 3 (SP3), перетворився на Інтернет-стандарт, Протокол безпеки мережевого рівня (NLSP).
З часом різні організації почали вдосконалюватись на SP3, і проекти, здійснені Військово-морською лабораторією США (NRL), AT&T Bell Labs, Довірені інформаційні системи та інші. У той же час, інші досягнення, такі як драйвер пристрою для стандарту шифрування даних (DES), дали змогу надійно надсилати дані між берегами США з розумною швидкістю протягом періоду часу..
Якби ці події залишилися продовжуватися окремо, це призвело б до питання інтероперабельності між різними системами. Робоча група з питань Інтернет-інженерії (IETF) сформувала Робочу групу з питань захисту прав інтелектуальної власності з метою стандартизації цих розробок у сумісний протокол. У 1995 році IETF опублікував деталі стандарту IPsec у RFC 1825, RFC 1826 та RFC 1827.
NRL був першим, хто створив працюючу імплементацію стандарту, який з тих пір перейшов у масове використання. Протягом багатьох років існувало чимало оновлень IPsec та його документації, але воно все ще розгорнутесь для автентифікації обох сторін з’єднання та захисту даних, що перебувають між ними.
Як працює IPsec?
Перш ніж ми розберемося з більш технічними подробицями IPsec та його різними режимами, ми поговоримо про це через аналогію, яка полегшує візуалізацію дещо складних конфігурацій. Спочатку потрібно трохи розібратися в тому, як працюють пакети над IPv4 та пов’язані з ними проблеми із безпекою.
Що таке пакети даних та як вони працюють?
Дані передаються в пакетах, які складаються з корисне навантаження та заголовок в IPv4. Корисне навантаження – це самі дані, що передаються, тоді як заголовок містить тип протоколу, адреси та іншу інформацію, необхідну для впевненості, що дані можуть надходити у потрібне місце.
Один з найкращих способів зображення пакетів даних – це уявлення про них як листівки. Корисне навантаження – це повідомлення, яке хтось пише на звороті, а заголовок – це інформація про доставку, яку ви ставите спереду. Як і на листівках, дані, що надсилаються у звичайному пакеті IPv4, не дуже захищені.
У цих стандартних пакетах, кожен може побачити корисне навантаження, так само, як листонош або будь-який зловмисник, який перехоплює вашу листівку, може її прочитати. Ці пакети можна навіть змінити так, як якщо б ви спочатку написали листівку олівцем, а зловмисник стер первісне повідомлення та написав щось інше.
Зловмисники також можуть бачити інформацію заголовка, так само, як лицьова сторона вашої листівки. Це дає їм знати, з ким ви спілкуєтесь, і як ви це робите. Вони навіть можуть підробити власні пакети IPv4, щоб вони виглядали так, як ви їх надіслали, що дуже схоже, якби вони скопіювали ваш стиль рукописного тексту і зробили вигляд, що ви -.
Як бачите, це навряд чи безпечний спосіб спілкування, і існує багато способів, що його можуть зірвати зловмисники. Саме це спричинило розвиток IPsec. Яt забезпечив спосіб аутентифікації з’єднань, доведення цілісності даних та збереження їх конфіденційності, все на мережевому рівні. Без IPsec або інших протоколів безпеки, зловмисники можуть вільно переглядати або змінювати будь-які конфіденційні та цінні дані, які вони перехопили.
Інкапсуляція корисного навантаження для безпеки (ESP): візуалізація
Ми спочатку поговоримо про ESP, оскільки це більш часто використовуваний протокол. Коли він реалізований з аутентифікацією в тунельному режимі, він використовується для формування VPN, які безпечно підключати хости та мережі через незахищені проміжні мережі що лежать між ними.
Як ви бачили вище, передавати конфіденційні дані за допомогою IPv4 небезпечно. Режим ESP від IPsec вирішує цю проблему, надаючи спосіб зашифрувати дані, що робить дані конфіденційними та запобігає доступу зловмисників до них. ESP також може використовуватися для аутентифікації даних, що може підтвердити його правомірність.
Коли ESP використовується з шифруванням, це дуже схоже на те, щоб помістити листівку в заблоковану скриньку та надіслати її через кур’єр. Ніхто не може бачити вміст листівки, а також не може їх змінювати. Вони можуть бачити, що інформація про розсилку написана на заблокованому полі, але це відрізняється від того, що написано на листівці.
Якщо ESP використовується і для автентифікації, це дуже схоже на підписання листівки або нанесення на неї власної особистої печатки перед тим, як вона буде розміщена у полі. Коли одержувач отримає заблоковану скриньку, він може відкрити її та вийняти листівку. Коли вони бачать печатку або підпис, то знають, що листівка законно від вас.
Коли ESP перебуває в транспортному режимі, це виглядає як би листівка заблокована у коробці та надіслана кур’єром, за винятком того, що в коробці є чітке вікно, через яке можна побачити інформацію про адресу листівки. Якщо він перебуває в тунельному режимі, схоже, що листівка знаходиться в суцільній коробці з різною інформацією адреси зовні.
Звичайно, це все лише аналогія, яка допоможе вам уявити, що відбувається. Насправді їх є кілька досить істотні відмінності, такі як дані, що подорожують між мережами та хостами, а не просто одна людина, що надсилає інформацію іншій.
Інкапсуляція корисного навантаження для безпеки (ESP): Технічні деталі
Тепер, коли ми дали вам приблизне уявлення про те, як ESP працює на захист даних, саме час переглянути це на більш технічному рівні. ESP може використовуватися з низкою різних алгоритмів шифрування, причому AES є одним з найпопулярніших. Він навіть може бути реалізований без шифрування, хоча це на практиці рідко робиться. Заголовки пакетів даних ESP мають індекс параметрів безпеки (SPI) та порядковий номер.
SPI – це ідентифікатор, який повідомляє одержувачу знати, до якого з’єднання стосуються дані, а також параметри цього з’єднання. Номер послідовності – ще один ідентифікатор, який допомагає запобігти зловмисникам змінювати пакети даних.
ESP також містить трейлер, який містить прокладки, деталі про тип протоколу для наступного заголовка та дані аутентифікації (якщо використовується автентифікація). Коли аутентифікація встановлена, це робиться за допомогою a Код аутентифікованого повідомлення (HMAC), яка розраховується за допомогою таких алгоритмів, як SHA-2 та SHA-3.
Перевірка автентичності ESP лише підтверджує заголовок ESP та зашифроване корисне навантаження, але це не впливає на решту пакету. Коли пакет зашифрований за допомогою ESP, зловмисники можуть бачити дані лише із заголовка, а не корисного навантаження.
Інкапсулювання корисного навантаження на безпеку (ESP): транспортний режим
Транспортний режим ESP використовується для захисту інформації, що надсилається між двома хостами. IP-заголовок зберігається поверх пакету ESP, і значна частина інформації заголовка залишається такою ж, включаючи джерела та адреси призначення. Він шифрує та необов’язково автентифікує пакет, що забезпечує конфіденційність і може бути використаний для перевірки цілісності пакета.
Інкапсулювання корисного навантаження на безпеку (ESP): режим тунелю
Коли ESP знаходиться в режимі тунелю, весь пакет даних IP загортається всередині іншого, а новий заголовок додається зверху. Коли також встановлена автентифікація, режим тунелю ESP може використовуватися як VPN. Це найбільш часто використовувана конфігурація IPsec.
Аутентифікація, підтвердження цілісності та конфіденційності заходи, пов’язані з автентифікованим режимом тунелю ESP, роблять корисним безпечне з’єднання двох окремих мереж через ненадійні та потенційно небезпечні мережі, що лежать між ними.
Цей режим найкраще описується загальним кліше побудови зашифрованого тунелю між двома точками, створюючи безпечне з’єднання, до якого зловмисники не можуть проникнути. Коли ESP використовується для шифрування та автентифікації, Зловмисники, які перехоплюють дані, бачать лише те, що для з’єднання використовується VPN. Вони не бачать корисного навантаження або оригінального заголовка.
VPN спочатку використовувались підприємствами для з’єднання регіональних офісів зі штаб-квартирою. Цей тип з’єднання дозволяє компаніям легко та надійно обмінюватися даними між своїми окремими місцями. В останні роки VPN також стали популярною послугою для приватних осіб. Їх часто використовують для геофайфування або для забезпечення з’єднань, особливо під час використання загальнодоступного Wi-Fi.
Заголовок аутентифікації (AH): візуалізація
Тепер, коли ми охопили ESP, AH слід трохи простіше зрозуміти. Оскільки AH можна використовувати лише для автентифікації пакетів даних, це просто як підписання листівки або додавання до неї власної печатки. Оскільки шифрування не задіяне, в цій аналогії немає блокованої коробки чи кур’єра.
Відсутність зашифрованого захисту трохи нагадує листівку, яка надсилається звичайною поштою, де листоноша та будь-які зловмисники можуть бачити як адресу адреси, так і повідомлення, яке написано на звороті картки. Однак через печатку або підпис цю інформацію неможливо змінити. Так само печатка та підпис дозволяють довести, що ви справжній відправник, а не той, хто намагався наслідувати вас.
У транспортному режимі AH, an додано заголовок аутентифікації, який захищає корисне навантаження та переважну більшість інформації заголовка. Це схоже на уявну листівку, яка має чітку печатку, що захищає більшість її вмісту.
Все, що знаходиться під печаткою, неможливо змінити, але всю листівку може побачити кожен, хто її перехопить. Кілька деталей не охоплені печаткою і потенційно можуть бути змінені, але вся важлива інформація захищена печаткою. На печатці також буде написана деяка інформація, але для цілей цього прикладу не важливо опрацьовувати її зараз.
В тунельному режимі, пакет загортається всередину іншого, і більшість є автентифікованими. Аналогія в цьому випадку трохи розбивається, але це як би загортати листівку в прозорий конверт із печаткою. Конверт містить і свою інформацію про адресу, і печатка захищає майже всю річ від модифікації.
Заголовок аутентифікації (AH): Технічні деталі
AH використовується для автентифікації того, що дані надходять із законного джерела, а також, що вони зберігають свою цілісність. З його допомогою можна показати, що дані не були підроблені та захищені від атак повторного відтворення.
АН не застосовується дуже часто, але все ж важливо обговорити. Він додає власний заголовок аутентифікації та використовує Коди аутентифікації хеш-повідомлень (HMAC) для захисту більшості пакетів даних. Сюди входить все корисне навантаження, а також більшість полів у заголовку. HMAC розраховуються за допомогою хеш-алгоритмів типу SHA-2.
Заголовок аутентифікації (AH): режим транспорту
Зазвичай використовується режим транспортування AH двостороння комунікація між господарями. До пакету додається заголовок AH, а частина протокольного коду переміщується. Коли приходить AH-пакет і перевіряється HMAC, заголовок AH забирається і проводиться кілька інших змін. Після повернення пакета даних у звичайному вигляді він може бути оброблений, як зазвичай.
Заголовок аутентифікації (AH): режим тунелю
У цьому режимі оригінальний пакет загортається всередину іншого, потім аутентифікується HMAC. Це процес додає заголовок аутентифікації, автентифікація цілісного оригінального заголовка (у транспортному режимі кілька частин заголовка не охоплені), а також більшість ново доданих заголовків. Корисна навантаження також автентифікована.
Коли ці пакети досягають місця призначення, вони проходять перевірку автентичності, тоді пакет повертається до нормального стану, забираючи як щойно доданий заголовок, так і заголовок аутентифікації.
Асоціації з безпеки (SA)
Асоціації безпеки (SA) встановлюють і зберігають параметри для з’єднання IPsec. Вони використовуються як AH, так і ESP для встановлення стабільного процесу спілкування, який відповідає потребам безпеки кожної сторони. Кожен хост або мережа має окремі SA для кожної сторони, з якою він з’єднується, і всі вони мають свій набір параметрів.
Коли два господарі вперше домовляються про їх з’єднання, вони сформувати SA з параметрами, які будуть використані при з’єднанні. Вони роблять це поетапно, коли одна сторона пропонує політику, яку інша може або прийняти, або відхилити. Цей процес триває до тих пір, поки вони не придумають взаємно узгоджену політику та повторюються для кожного окремого параметра.
Кожен SA включає алгоритми, які будуть використовуватися, незалежно від того, чи вони призначені для аутентифікації (наприклад, SHA-2) або шифрування (наприклад, AES). SA також включають параметри обміну ключами (наприклад, IKE), політику фільтрації IP, обмеження маршрутизації та інше. Після створення асоціації безпеки вона зберігається в базі даних Асоціації безпеки (SAD).
Коли інтерфейс отримує пакет даних, він використовує три різні відомості, щоб знайти правильний SA. Перший – це IP-адреса партнера, яка, як ви можете припустити, – це IP-адреса іншої сторони в з’єднанні. Другий – це Протокол IPsec, або ESP, або AH.
Кінцевою інформацією є Індекс параметрів безпеки (SPI), що є ідентифікатором, який додається до заголовка. Він використовується для вибору між SA-різними з’єднаннями, щоб переконатися в застосуванні правильних параметрів.
Кожен SA йде лише в один бік, тому потрібно щонайменше два, щоб спілкування могло йти в обох напрямках. Якщо AH та ESP повинні використовуватися разом, то для кожного протоколу знадобиться SA в кожному напрямку, що становить чотири.
IPsec проти TLS / SSL
Іноді може бути важко зрозуміти різницю між IPsec та протоколами, такими як TLS / SSL. Зрештою, вони обоє просто забезпечують безпеку, правда? Вони це роблять, але роблять це по-різному і на різних рівнях.
Один з найкращих способів порівняння IPsec та TLS / SSL – це подивіться на них у контексті моделі OSI. Модель OSI – це концептуальна система, яка використовується, щоб допомогти зрозуміти та стандартизувати різні аспекти та рівні нашого складного процесу спілкування..
У цій моделі, IPsec функціонує на третьому шарі, мережевий рівень, що означає, що він розміщений для передачі пакетів даних хосту через одну або ряд мереж.
Коли ми дивимось на TLS / SSL, то речі стають дещо заплутанішими. Це тому, що він працює над іншим транспортним засобом, TCP. Це має місце TLS / SSL вище шару чотири у моделі OSI.
TLS / SSL також організовує повідомлення рукостискання, які є п’ятим рівнем, сесійним шаром. Це ставить TLS / SSL або в шари, або в шість.
Це ускладнюється, якщо врахувати, що програми використовують TLS / SSL як транспортний протокол. Це ставить TLS / SSL на рівні чотирьох або нижче. Але як це може бути одночасно в шарах шість або сім, а також у шарі чотири чи нижче?
Відповідь полягає в тому, що TLS / SSL просто не входить у модель. Причини цього виходять за межі цієї статті. Найголовніше, що вам потрібно знати, – це те, що модель OSI – це саме те, модель, а іноді реальність не відповідає нашим акуратним і охайним моделям..
Коли ми говоримо про ці стандарти в практичному розумінні, Роль TLS / SSL полягає в аутентифікації даних, перевірці їх цілісності, шифруванні та стисканні. Він може бути реалізований для захисту цілого ряду інших протоколів, таких як HTTP або SMTP, а також спостерігається у широкому діапазоні застосувань, таких як VoIP та веб-перегляд.
IPsec відрізняється двома способами, перший полягає в тому це рамка, а не єдиний протокол. Він також складніший, що ускладнює налаштування та обслуговування.
Зрештою, TLS / SSL простіший за IPsec, що є ще однією причиною, чому він, як правило, реалізується більш широко. Це основна частина одного з основних альтернативних протоколів тунелювання, OpenVPN.
Дивись також: Кінцевий посібник з TCP / IP
Безпека IPsec
В останні кілька років багато говорилося про те урядові установи, розміщуючи заднім числом IPsec та використовуючи вразливі місця для орієнтації на тих, хто використовує протокол. Деякі з ранніх звинувачень з’явилися в 2010 році, коли Грег Перрі зв’язався з провідним розробником OpenBSD.
Він це стверджував ФБР розмістило численні задні куточки, а також механізми для протікання ключів бічних каналів у код OpenBSD. Це, як стверджується, впливає на стек OpensecD IPsec, який широко використовується.
У 2013 році під час протікання Сноудена було виявлено, що NSA орієнтувався на різні форми шифрування та інші засоби захисту. Документи, схоже, підтверджують, що у АНБ були свої методи доступу до ключів, які використовуються в IPsec, що дозволяє їм прослуховувати певні з’єднання.
Документація, просочена брокерами Shadow у 2016 році, показує, що NSA має інструмент, який може бути використаний для зриву реалізації IPsec, який використовується у брандмауерах PIX Cisco. Хоча ці брандмауери були припинені в 2009 році, атака BENIGNCERTAIN може бути використана для доступу до паролів для пристроїв PIX.
Атака передбачала надсилання пакетів Інтернет-обміну ключами (IKE) на PIX-сервер, що призвело б до вивільнення частини його пам’яті. Ця інформація може бути проаналізована для пошуку інформації про конфігурацію та приватного ключа RSA, який потім може використовуватись NSA для шпигування за IPsec-з’єднанням. Майте на увазі, що це лише одна реалізація, яка була вразливою, і вона не зачіпає жодних сучасних форм IPsec.
У 2023 році дослідники використали недолік у протоколі IKE, що дозволило їм розшифрувати з’єднання. Концепція перевірки концепції може бути використана для проведення атак “людина-посеред”, коли зловмисники можуть перехоплювати дані, підробляти їх або навіть зупиняти їх передачу.
Ця методика використовує оракули Bleichenbacher для дешифрування значень, що порушує аутентифікацію RSA в першій фазі IKE. Це дозволяє зловмисникам використовувати шахрайські симетричні ключі зі своєю ціллю. Потім вони можуть підробляти кінцеву точку IPsec, порушуючи шифрування, що дозволяє їм вставити себе в те, що раніше було захищеним з’єднанням.
Хоча це тривожна атака, випущені патчі для реалізацій, на які, як відомо, вони впливають. Huawei, Cisco, Clavister та XyXEL усі випущені патчі незабаром після того, як їх попередили про вразливість. Безпечно використовувати ці раніше постраждалі реалізації, якщо вони є актуальними.
У IPsec є ще кілька потенційних уразливостей, серед яких багато IKE. Незважаючи на ці питання, IPsec досі вважається безпечним для загального використання, до тих пір, поки вона була належним чином реалізована та впровадження використовує останні оновлення.
Сам IPsec не порушений. Важливо пам’ятати, що це лише рамка, яка може використовувати декілька різних протоколів. Ще можна безпечно використовувати IPsec, якщо правильні протоколи використовуються відповідним чином. Однак небезпечні конфігурації можуть атакувати АНБ та інші сторони, тому важливо правильно використовувати IPsec.
Якщо ви використовуєте IPsec?
IPsec здебільшого використовується для формування захищеного тунелю в VPN, але це не єдиний варіант. Якщо ви турбуєтесь про свою безпеку, краще розглянути інші варіанти та знайти рішення, яке відповідає вашому випадку використання та профілю ризику.
Основні альтернативи – PPTP, SSTP і OpenVPN. Протокол тунелювання «точка-точка-точка» (PPTP) є старим і має безліч проблем безпеки, так це і є найкраще уникати цього за будь-яких обставин. Протокол безпечного тунелювання сокетів (SSTP) – кращий варіант для користувачів Windows, однак, це так не підлягають незалежному аудиту.
OpenVPN – це альтернатива з відкритим кодом, яка має цілий ряд різних параметрів конфігурації. Він використовує SSL / TLS і, як відомо, жодних проблем із безпекою, тому це найкращий вибір для тих, хто стурбований проблемами безпеки, які були виявлені в IPsec.
Це не означає, що всі IPsec-з’єднання по суті є незахищеними, це просто означає, що існують більш безпечні альтернативи для тих, хто не відповідає безпеці або стикається з високим рівнем загрози..
Пов’язані: IPSec vs SSL
Клавіатура комп’ютера ліцензію на CC0