Security_metod
.pdf
Ключем до розуміння того, як працює атака переповнення таблиці MACадрес, є усвідомлення того, що таблиця MAC-адрес обмежена в розмірах. MAC повінь використовує це обмеження, надсилаючи комутатору фрейми з підробленими MAC-адресами джерела, доки таблиця МАС-адрес комутатора повністю не заповниться. Якщо достатня кількість записів вноситься до таблиці МАСадрес, перш ніж час життя старих записів сплинув, таблиця заповнюється до такої міри, що нові записи не можуть бути прийняті. Коли це відбувається, комутатор починає транслювати весь вхідний трафік на всі порти. Комутатор, по суті, починає діяти як хаб. В результаті, зловмисник може бачити всі фрейми, відправлені з одного хоста на інший в межах своєї VLAN.
Якщо зловмисник не продовжує надсилати фрейми з недійсними МАСадресами джерела, комутатор зрештою видалить старі записи з таблиці MACадрес і знову почне нормально працювати.
Найбільш поширений спосіб реалізації атаки переповнення таблиці MACадрес - використання інструменту macof. Цей інструмент організовує для комутатора повінь з кадрів, які містять випадкові MAC і IP адреси джерела і призначення. За короткий період часу таблиця MAC-адрес заповнюється (рис. 11). Коли таблиця MAC-адрес заповнена недійсними MAC-адресами, комутатор починає пересилати фрейми, які отримує, в режимі хабу. Поки macof працює, таблиця на комутаторі залишається повною, і комутатор продовжує надсилати всі отримані фрейми на всі порти.
Рис.11 – Реалізація атаки переповнення таблиці МАС-адрес
70
Обидві атаки - підробка MAC-адрес та переповнення таблиці MAC-адрес можуть бути попереджені за рахунок налаштування безпеки портів на комутаторі. З port security, адміністратор може або статично задати MAC-адресу на певний порт комутатора, або дозволити комутатору динамічно вивчити фіксовану кількість MAC-адрес на порт комутатора. Статичне завдання MAC-адреси не є гарним рішенням для виробничого середовища. Дозволити динамічно вивчити фіксовану кількість MAC адрес – це масштабоване рішення.
8.3 Атаки STP маніпуляцій
Наступна вразливість пристроїв 2-го рівня - Spanning Tree Protocol (STP). STP є протоколом 2-го рівня, який забезпечує вільну від петель топологію. STP працює, обравши root bridge і будує топологічне дерево від цього кореня. STP дозволяє надлишковість, але в то самий час, гарантує, що тільки один лінк буде задіяно і петлі відсутні.
Мережні хакери можуть маніпулювати STP для проведення атаки шляхом трансформаційних змін топології мережі. Зловмисник може зробити атакуючий хост кореневим мостом, тим самим підмінивши root bridge (рис. 12). Весь трафік для домену комутації буде проходити через фальшивий root bridge, тобто через атакуючу систему.
Рис.12 – Атака STP маніпуляції
Для проведення атаки STP маніпуляції, атакуючий хост передає широкомовно STP конфігурацію і BPDU зміни топології для того, щоб викликати перерахунок spanning-tree. BPDU, які посилаються атакуючим хостом анонсують більш низький пріоритет фальшивого моста в спробі бути обраним в якості кореневого моста. У разі успіху, атакуючий хост стає root bridge і бачить безліч фреймів, які в іншому випадку йому були б не доступні.
71
Ця атака може бути використана для порушення всіх трьох цілей безпеки: конфіденційності, цілісності і доступності.
Методи попередження маніпуляцій STP включають методи PortFast, а та-
кож root guard і BPDU Guard.
8.4 Атака LAN – шторм
Пристрої 2-го рівня також уразливі до атаки LAN -шторм. LAN -шторм відбувається, коли пакети створюють повінь в LAN, трафік стає надмірним і знижується продуктивність мережі. Помилки в реалізації стека протоколів, помилки в конфігурації мережі, користувачі, які здійснюють DoS атаку, можуть викликати такий шторм. Також в мережі можуть відбуватися broadcast шторми, оскільки комутатори завжди передають широкомовлення на всі свої порти
(рис.13). Деякі важливі протоколи, такі як Address Resolution Protocol (ARP) і
Dynamic Host Configuration Protocol (DHCP), використовують широкомовлення,
тому, комутатор повинен бути в змозі перенаправляти широкомовний трафік.
Рис.13 – Атака LAN - шторм
Хоча це і неможливо запобігти усім типам пакетних штормів і надмірного широкомовлення, можна зменшити їх інтенсивність за допомогою контролю "лавини". Контроль "лавини" запобігає порушенню трафіку в локальній мережі від широкомовного, групового або одноадресного штормів на одному з фізичних інтерфейсів. Контроль "лавини" контролює пакети, що приходять з інтерфейсу на шину комутації і визначає, чи буде пакет одноадресним, груповим чи широкомовним. Комутатор підраховує кількість пакетів певного типу, отриманих протягом певного інтервалу часу і порівнює отримане значення з наперед визначеним пороговим рівнем. Контроль "лавини" блокує трафік, якщо є перевищення порогу.
72
8.5 VLAN – атаки
VLAN є логічним широкомовним доменом, який може займати кілька фізичних сегментів LAN. В межах комутованого міжмережного середовища, VLAN забезпечують сегментацію та організаційну гнучкість. Структура VLAN може бути розроблена так, щоб групувати станції логічно за функціями, проектними командами, або застосунками незалежно від місцезнаходження користувачів. Кожен порт комутатора може бути призначений тільки на одну VLAN, тим самим додаючи рівень безпеки. Порти в VLAN поширюють широкомовлення, порти в різних VLAN не поширюють широкомовлення. Локалізація широкомовлення в VLAN покращує загальну продуктивність мережі.
Існує ціла низка різних типів VLAN атак, поширених в сучасних комутаційних мережах. Важливо зрозуміти загальну методологію цих атак та основні підходи до їх попередження.
Архітектура VLAN спрощує обслуговування мережі і підвищує продуктивність, але й відкриває можливості для зловживань. VLAN-стрибки дозволяють трафік з однієї VLAN бачити в іншій VLAN. За певних умов, зловмисник може прослуховувати дані і отримувати паролі та іншу конфіденційну інформацію. Атака працює, скориставшись неправильно налаштованим магістральним портом. За замовчуванням, магістральні порти мають доступ до всіх VLAN і передають трафік декількох VLAN через один і той же фізичний канал, як правило, між комутаторами. Дані, які передаються через ці лінки можуть бути інкапсульовані за 802.1Q IEEE протоколом або Inter-Switch Link (ISL).
В основі атаки VLAN-стрибків, зловмисник використовує автоматичне налаштування за замовчуванням магістральних каналів на більшості комутаторів. Мережний зловмисник налаштовує систему так, щоб його сприймали як комутатор. Цей спуфінг вимагає, щоб мережний зловмисник міг емулювати ISL
або 802.1Q сигналізацію разом з Cisco-proprietary Dynamic Trunking Protocol (DTP) сигналізацією. Комутатор має думати, що зловмисник - це ще один комутатор, якому необхідний транк, таким чином зловмисник може отримати доступ до всіх VLAN, які дозволені на магістральних портах. Ця атака вимагає налаштування на портах підтримки транкінгу в автоматичному або динамічному режимі. В результаті, зловмисник є членом всіх VLAN, які можуть передавати дані магістралями і може стрибати, тобто, відправляти і отримувати трафік на всіх VLAN.
Атака VLAN-стрибків може бути запущена одним із двох способів.
Підробка DTP повідомлень від атакуючого хоста для того, щоб перевести комутатор в режим транка. Після чого, зловмисник може передавати трафік з міткою цільової VLAN, і комутатор доставляє пакети до місця призначення.
Видаючи сете за комутатор і забезпечивши транкінг, зловмисник може отримати доступ до всіх VLAN на комутаторі – жертві.
Кращий спосіб запобігти VLAN стрибковій атаці - відключити транкінг на всіх портах, окрім тих, які дійсно для цього використовуються. На портах,
73
для яких потрібен транкінг, відключіть DTP (auto trunking) і вручну налаштуйте магістральні канали.
Інший тип VLAN атаки - подвійне тегування (або double-encapsulated). Цей вид атаки використовує те, як працює обладнання більшості комутаторів. Більшість комутаторів виконує тільки один рівень 802.1Q декапсуляціі, що може дозволити зловмиснику в конкретних ситуаціях вбудувати прихований 802.1Q тег всередині фрейму. Цей тег дозволяє фрейму перейти до VLAN, на яку не вказував оригінальний 802.1Q (рис.14). Важливою характеристикою цієї атаки є те, що вона працює, навіть якщо транки на портах відключені.
Рис. 14 - VLAN стрибкова атака з подвійним тегуванням
VLAN стрибкова атака з подвійним тегуванням відбувається за чотири кроки:
1.Зловмисник надсилає двічі позначений 802.1Q фрейм на комутатор. Зовнішній заголовок має VLAN тег зловмисника, такий самий, як у VLAN магістрального порту. Для цього прикладу, припустимо, що це VLAN 10. Внутрішній тег VLAN жертви, в даному прикладі, VLAN 20.
2.Фрейм надходить на комутатор, який досліджує перші 4-байти тегу 802.1Q. Комутатор бачить, що фрейм призначений для VLAN 10, яка є native VLAN. Комутатор передає фрейм на всі VLAN 10 порти після видалення тегу VLAN 10. На магістральному порту VLAN 10 тег видаляється, і фрейм повторно не позначається, оскільки він є частиною native VLAN. На даний момент, тег VLAN 20 ще не чіпався і не був досліджений першим комутатором.
3.Фрейм прибуває на другий комутатор, який не знає, що він призначений для VLAN 10. Трафік native VLAN не маркується при відправці комутатором, як зазначено в специфікації 802.1Q.
74
4. Другий комутатор бачить тільки внутрішній тег 802.1Q, який був доданий зловмисником і бачить, що фрейм призначений для VLAN 20, цільової VLAN. Другий комутатор посилає фрейм на порт жертви або на всі свої порти, залежно від того, чи існує запис у таблиці MAC-адрес для хоста жертви.
Цей вид атаки спрямований в одному напрямі і працює тільки тоді, коли порт зловмисника і магістральний порт знаходяться в одній native VLAN. Зірвати таку атаку не так просто. Краще заздалегідь упевнитися в тому, що native VLAN магістральних портів відрізняється від VLAN на портах користувачів.
8.6 Самостійна робота студента
8.6.1 Запитання для самоперевірки
1.Які типи атак на пристрої 2-го рівня моделі OSI Ви знаєте?
2.У який спосіб може бути відтворена VLAN-стрибкова атака?
3.За рахунок чого можлива атака переповнення таблиці МАС-адрес комутатора?
8.6.2 Матеріали для самостійного поглибленого вивчення теми
1.Знайдіть в Інтернеті описи конкретних атак, які були реалізовані за сценаріями, описаними в цій темі.
2.Дослідіть рішення безпеки кінцевих пристроїв, які пропонуються на ринку.
3.Знайдіть пропозиції Wireless Security.
4.Знайдіть пропозиції VoIP Security.
5.Знайдіть пропозиції SAN Security.
75
ТЕМА 9. КРИПТОГРАФІЧНІ СИСТЕМИ
Вступ
Для захисту трафіку при проходженні через мережу Інтернет зазвичай використовуються криптографічні методи.
Криптологія це наука про створення та розкриття секретних кодів. Розробкою та використанням кодів займається криптографія, а зламом кодів - криптоаналіз. Шифрування використовувалося протягом століть для захисту секретних документів. Наприклад, Юлій Цезар використовував простий алфавітний шифр для шифрування повідомлень, призначених генералам. Його генерали повинні були знати ключ, необхідний для дешифрування повідомлень. Сьогодні, сучасні криптографічні методи використовуються для реалізації різних способів забезпечення безпечного зв'язку.
Безпечні комунікації вимагають гарантії того, що повідомлення не є підробкою і приходять насправді, від певної особи (аутентифікація). Вони також вимагають гарантій того, що ніхто не перехопив повідомлення і не змінив його (цілісність). Нарешті, безпечний зв'язок гарантує, що якщо повідомлення перехоплено, воно не може бути розшифровано (конфіденційність).
Принципи криптографії можуть бути використані для пояснення, як сучасні протоколи та алгоритми використовуються для забезпечення безпечного зв'язку. В сучасних мережах забезпечують аутентифікацію за допомогою такого протоколу, як HMAC. Цілісність забезпечується за рахунок реалізації або MD5 або SHA-1. Конфіденційність даних забезпечується використанням симетричних алгоритмів шифрування, включно з DES, 3DES, AES або асиметричних алгоритмів, у тому числі RSA і public key infrastructure (PKI). Симетричні алгоритми шифрування засновані на тому, що кожна сторона спілкування знає заздалегідь визначений загальний ключ. Асиметричні алгоритми шифрування засновані на припущенні, що обидві взаємодіючі сторони заздалегідь не поділилися таємницею і необхідно встановити безпечний спосіб зробити це.
9.1 Криптографічні сервіси 9.1.1 Безпечні комунікації
Безпечні комунікації передбачають виконання декількох основних завдань:
Аутентифікація \ Ідентифікація - гарантія того, що повідомлення не є підробкою і насправді приходять від того, хто про це заявляє.
Цілісність - схожа на контрольну суму фрейму, гарантує, що ніхто не перехопив повідомлення і не змінив його.
Конфіденційність – гарантія того, що в разі перехоплення повідомлення воно не може бути розшифровано.
76
Аутентифікація
Аутентифікація гарантує, що повідомлення приходить саме від того джерела, яке зазначено як відправник. Перевірка справжності схожа на введення секретної інформації безпеки (PIN) в банкоматі. PIN-код має бути відомий тільки користувачеві і фінансовій установі. PIN-код є загальним секретом, який допомагає захиститися від підробки.
Аутентифікація може бути виконана криптографічними методами. Це особливо важливо для застосунків або протоколів, таких як електронна пошта або IP, які не мають вбудованих механізмів для запобігання підміні джерела.
Неможливість відмовитися від переданих даних (Data nonrepudiation) - послуга, яка дозволяє однозначно ідентифікувати відправника повідомлення. Використання такої послуги не дозволить відправнику заперечувати, що він був джерелом цього повідомлення. Найбільш важливою частиною послуги nonrepudiation є те, що пристрій-відправник не може відмовитися, або спростувати, що повідомлення було надіслано. Ця послуга спирається на той факт, що тільки відправник має унікальні характеристики або підпис, поставлений під повідомленням.
Цілісність
Цілісність даних гарантує, що повідомлення не змінюється під час передачі. Цілісність даних дозволяє одержувачу переконатися, що отримане повідомлення збігається з відправленим повідомленням і що ніяких маніпуляцій не відбулося.
В стародавні часи цілісність даних в документах забезпечувалася шляхом використання воскової печатки при закритті конверта. Часто використовувався перстень з печаткою, де було зображено фамільний герб, ініціали, портрет, або особистий символ власника перстня.
Конфіденційність
Конфіденційність даних забезпечує те, що тільки одержувач може прочитати повідомлення. Шифрування є процесом перетворення даних, так щоб вони не могли бути прочитані сторонніми особами.
При використанні шифрування, дані які легко прочитати називають відкритим текстом (plaintext), а зашифрована їх версія називається шифрованим текстом (ciphertext). Для шифрування і дешифрування повідомлень потрібен ключ.
9.1.2 Криптографія
Аутентифікація, цілісність і конфіденційність є компонентами криптографії. Криптографія це практика і вивчення методів приховування інформації.
Криптографічні послуги є основою для багатьох реалізацій безпеки і використовуються для захисту даних, якщо ці дані можуть бути переглянуті ненадійною стороною. Розуміння основних функцій шифрування і як шифрування забезпечує конфіденційність і цілісність, відіграє важливу роль у створенні ус-
77
пішної політики безпеки. Важливо також розуміти питання, які пов'язані з управлінням ключами шифрування.
Історія криптографії демонструє нам використання різних методів шифрування у дипломатичних колах та під час ведення військових дій. Наприклад, шифр Цезаря та шифр Віженера. Кожен з цих методів шифрування використовував певний алгоритм, званий шифром, для шифрування і дешифрування повідомлень. Шифр являє собою серію чітко визначених кроків, яких потрібно дотримуватися для процедури шифрування і дешифрування повідомлень.
Є кілька способів створення зашифрованого тексту: транспозиція – перестановка, заміна, шифр Вернама.
У шифрі транспозиції, літери не замінюються, вони просто переставляються. Правило перестановки в зворотному порядку є ключем для дешифровки листа.
Інший приклад шифру транспозиції - це шифр огорожі. У цій транспозиції, слова написані так, щоб вони були схожі на огорожу. Наприклад, шифр огорожі, який використовує ключ 3 вказує, що три рядки необхідні при створенні зашифрованого коду. Щоб прочитати повідомлення, потрібно читати по діагоналі вгору і вниз, слідом за огорожею.
Сучасні алгоритми шифрування, такі як стандарт DES і 3DES використовують транспозицію як частину алгоритму.
Шифр заміни замінює одну літеру на іншу. У своїй найпростішій формі шифр заміни зберігає частоту появи літери у вихідному повідомленні.
Шифр Цезаря був простим шифром підстановки. Кожен день використовувався інший ключ для регулювання алфавіту. Наприклад, якщо ключ дня був 3, літера А переносилася на 3 позиції направо, в результаті чого в зашифрованому повідомленні літера D використовувалася на місці літери А, літера Е замінює літеру B і так далі. Оскільки всі повідомлення спиралися на той самий ключ зсуву, шифр Цезаря називається моноалфавітним шифром підстановки. Його досить легко зламати.
З цієї причини були винайдені поліалфавітні шифри, такі як шифр Віженера. Метод спочатку був описаний Джованні Баттіста Bellaso в 1553 році, але схема була пізніше помилково приписана французькому дипломату та криптографу, Блезу де Віженеру.
Шифр Віженера заснований на шифр Цезаря, за винятком того, що він шифрує текст за допомогою секретного ключа, для кожної букви тексту зсув відбувається на різну кількість позицій. Незважаючи на це, шифр Віженера також легко може бути зламаний. З цієї причини, потрібні кращі методи шифрування.
Гілберт Вернам, інженер AT & T Bell Labs в 1917 році винайшов і запатентував потоковий шифр, а потім шифр одноразового блокноту. Вернам запропонував телетайпний шифр, в якому використовується підготовлений ключ.
78
Ключ складався з як завгодно довгої послідовності чисел, що не повторюються, і був збережений на паперовій стрічці. Ці символи поєднуються з текстом повідомлення для отримання зашифрованого тексту. Кожна стрічка могла бути використана тільки один раз, звідси і назва одноразовий блокнот.
Деякі труднощі притаманні використанню одноразових блокнотів в реальному світі. Одна з них - проблема створення випадкових даних. Комп'ютери нездатні до створення дійсно випадкових даних. Крім того, якщо ключ використовується більш ніж один раз, його легко зламати. RC4 є прикладом такого роду шифру, який широко використовується в Інтернеті.
9.1.3 Криптоаналіз
Поки існує криптографія, існуватиме криптоаналіз. Криптоаналіз - це практика і вивчення розкриття значення зашифрованої інформації без доступу до загального секретного ключа.
Безліч методів використовується в криптоаналізі.
Brute-Force Attack (атака грубої сили)
Під час атаки грубої сили, зловмисник пробує всі можливі ключі з алгоритмом шифрування, знаючи, що врешті-решт один з них спрацює. Всі алгоритми шифрування уразливі цією атакою. У середньому, атака грубої сили має успіх після перебору 50 відсотків можливих ключів. Мета сучасної криптографії – збільшити простір ключів, щоб виконання атаки грубої сили займало дуже багато грошей і дуже багато часу.
Атака з відомим тільки шифрованим текстом (Ciphertext-Only)
Зловмисник має зашифрований текст кількох повідомлень, які були зашифровані з використанням одних і тих же алгоритмів шифрування, але зловмисник не знає базовий відкритий текст. Задача атакуючого відновити текст стількох повідомлень, скількох можливо. Навіть краще для атакуючого вивести ключ або ключі, які використовувалися для шифрування повідомлень, щоб розшифрувати інші повідомлення, зашифровані з тими ж ключами. Зловмисник може використовувати статистичний аналіз для визначення ключа. Ці види атак більше не практичні, тому що сучасні алгоритми отримання псевдовипадкових послідовностей стійкі до статистичного аналізу.
Атака з відомим Plaintext
У цій атаці, зловмисник не тільки має доступ до зашифрованих текстів кількох повідомлень, а й знає щось про текст, який лежить в їх основі. Зі знанням базового протоколу, типу файлу, або деяких характерних рядків, які з'являються в тексті, зловмисник використовує атаку грубої сили, щоб спробувати ключі, до тих пір, поки дешифрування з правильним ключем не призведе до результату. Це атака може бути більш практичною, оскільки зловмисники зазвичай припускають деякі особливості основного тексту, якщо вони захоплюють зашифрований текст. Сучасні алгоритми з величезним простором ключів роблять ймовірність успіху такої атаки малоймовірною, тому що, в середньому, зловми-
79
