Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
NЯкщо другий фрагмент повністю потрапить всередину першого, тоСодержание книги
Поиск на нашем сайте ¨end<offset, і fp–>len стає від’ємною nТаку перевірку розробники не передбачили! ¨структура fp заповнювалась відповідними даними і відбувався виклик функції memcpy() ¨функція сприймала третій параметр, що мав від’ємне значення, як велике додатне ціле ¨в результаті здійснювалась спроба копіювання занадто великої області пам’яті, що призводило до краху системи Фрагментація IP як засіб проникнення через брандмауер NІдея атаки ¨Під час аналізу заголовків брандмауер спочатку визначає, чи не є досліджуваний пакет фрагментом ¨Якщо ні — то за заголовком IP, з якого визначають як мінімум адреси джерела та призначення і тип протоколу, повинен знаходитись заголовок відповідного транспортного протоколу, наприклад, TCP ¨З нього брандмауер визначає порти джерела і призначення (а також, якщо необхідно, іншу інформацію) ¨Ідея полягала у тому, що перший пакет повинен містити у заголовку TCP дозволені значення портів, а наступний пакет, що позначений як фрагмент, повинен мати мінімальне зміщення і містити в собі нові, недозволені параметри (головною метою, звичайно, є підміна порту призначення) ¨Вперше на цю вразливість у 1995 р. вказав Фред Коен (Fred Cohen) у своєму онлайн-журналі “Internet Holes” NНасправді ¨У такому вигляді загроза є міфічною ¨І кінцеві вузли, і брандмауери визначають перший фрагмент пакета за нульовим зміщенням. Тобто, якщо вказати зміщення “0”, то пакет буде сприйнятий, як перший фрагмент, і брандмауер проаналізує номери портів, що сховані у його заголовках ¨Мінімальне зміщення, яке можна вказати для фрагмента, що не є першим, — це “1”. Це зміщення на вісім байт ¨У заголовку TCP номери портів розміщені таким чином, що перекрити їх шляхом збирання IP-пакета з фрагментів неможливо ¨Оскільки заголовок протоколу UDP має повну довжину у 8 байтів, модифікація жодних його полів подібним шляхом взагалі неможлива NАле ¨Повна (найменша, без опцій) довжина заголовка TCP становить 20 байтів, і останні 12 з них саме таким чином можна модифікувати ¨З тих полів, які можуть бути модифіковані, потенційно цікавими для порушників є прапорці SYN, ACK, RST, FIN ¨Певні нестандартні комбінації цих прапорців у минулому використовувались для здійснення “прихованого” сканування портів і навіть для деяких атак Транспортний протокол UDP
NПротокол UDP є дуже простим дейтаграмним протоколом ¨Стандарт його визначений у RFC 768 ¨Його основні функції обмежуються мультиплексуванням і демультиплексуванням інформаційних потоків ¨Ідентифікація програм-відправників і програм-одержувачів здійснюється за номерами UDP-портів NМожна констатувати, що протокол UDP не має вбудованих засобів безпеки ¨Він повністю покладається на ідентифікацію відправника засобами мережного рівня, тобто за IP-адресою ¨16-розрядна контрольна сума захищає від помилок при передаванні даних, але жодним чином не захищає від цілеспрямованої модифікації даних ¨Протокол UDP не гарантує доставку і не має засобів контролю доставки — це покладається на протокол вищого (прикладного) рівня NПротокол UDP виконує покладені на нього функції. Слід добре розуміти його обмеження і не покладатись на нього, коли міркування безпеки є суттєвими. ¨Цей протокол дуже часто використовують як транспортний для різних протоколів керування мережею. ¨Розробники протоколу керування повинні чітко розуміти, що цей транспортний протокол є ненадійним і не захищає від підроблення даних і атрибутів відправника, тому засоби захисту необхідно включити до самого протоколу керування. Безпека протоколу TCP NПротокол TCP описаний у RFC 793 ¨Протокол TCP є протоколом із встановленням логічного з’єднання ¨У межах з’єднання здійснюються Nреєстрація послідовності пакетів, Nпідтвердження доставки кожного пакета, Nкерування потоком пакетів, Nповторна передача спотворених пакетів. ¨Деякі із зазначених функцій надають сервіс із захисту від підміни суб’єктів з’єднання Nдеякі протоколи прикладного рівня, в тому числі FTP, TELNET, HTTP, що надають користувачам віддалений доступ, використовують саме TCP як транспортний протокол NTCP як транспортний протокол використовує один з основних протоколів маршрутизації в Інтернеті — BGP Nдеякі служби, як, наприклад, DNS, можуть використовувати (як транспорт) і UDP, і TCP Nяк правило, дають рекомендацію щодо обов’язкового використання саме TCP для підвищення стійкості служби проти атак Формат заголовка TCP-пакета
Керування з’єднанням у TCP NУ заголовку присутні командні біти — прапорці, за допомогою яких здійснюється керування з’єднанням ¨URG (Urgent Pointer field significant) – термінове повідомлення; ¨ACK (Acknowledgment field significant) – квітанція на сегмент, що був прийнятий;; ¨PSH (Push Function) – запит на відправлення повідомлення без очікування заповнення буфера; ¨RST (Reset the connection) – запит на відновлення з’єднання; ¨SYN (Synchronize sequence number) – повідомлення, що використовується для синхронізації лічильників переданих даних при встановленні з’єднання; ¨FIN (No more data from sender) – признак передачі останнього байта переданих даних. nНайважливішу роль в керуванні потоком інформації через TCР-з’єднання грають два 32-розрядних поля: ¨Номер послідовності ¨Номер підтвердження NЦі поля відіграють роль ідентифікаторів пакета, з’єднання і суб’єкта з’єднання, а також відіграють роль лічильника пакетів NТакож важливу роль має поле Розмір вікна, яке інформує про розмір вільного буфера на боці приймача Процедура встановлення TCР-з’єднання nДля встановлення TCР-з’єднання передбачена спеціальна процедура рукостискання (Handshake) у три кроки ¨Припустімо, що хост А намагається утворити TCР-з’єднання з хостом В ¨Першим кроком є відправлення хосту В на обраний TCР-порт пакета, в якому з прапорців встановлений лише SYN (так званий SYN-пакет) NSYN-пакет завжди є найпершим пакетом у будь-якому TCР-з’єднанні nПри цьому в полі Номер послідовності установлено початкове 32-розрядне значення ISSa, або ISN (Initial Sequence Number) ¨Другий крок — відповідь від В до А. У цій відповіді повинні бути Nвстановлені прапорці SYN і ACK Nу полі Номер послідовності повинно міститися початкове значення ISSb, обране хостом В Nу полі Номер підтвердження повинно міститися значення, яке підтверджує одержання хостом В першого пакета. Значення підтвердження — це значення, яке хост В очікує в наступному пакеті ¨На третьому кроці хост А завершує процедуру рукостискання, відсилаючи хосту В пакет, в якому Nвстановлено прапорець ACK nполе Номер послідовності містить ISSa+1 nполе Номер підтвердження містить ISSb+1 ¨Коротко ці три стадії записують таким чином: nA → B: SYN, ISSa NПісля встановлення з’єднання лічильники Номер послідовності і Номер підтвердження відраховують кількість переданих/прийнятих байтів інформації Захисні функції TCP NПрипустимо, що ми намагаємось встановити з’єднання від імені іншого хосту NДля цього підставимо як адресу відправника чужу IP-адресу (атака IP spoofing) NПрипустимо, наш пакет успішно потрапив до хосту-одержувача NУ відповідь хост надсилає SYN-ACK-пакет на ту адресу, яка була вказана як адреса відправника nДля того, щоби завершити встановлення з’єднання, ми повинні надіслати пакет, в якому міститься правильне значення ISSb+1 NДля цього ми або повинні мати змогу перехопити пакет SYN-ACK, або повинні вгадати це значення. ¨Перехопити пакет можна лише в тому разі, якщо ми
|
|||||||||||||||||||||
|
Последнее изменение этой страницы: 2016-09-13; просмотров: 222; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.102 (0.006 с.) |