Заходи першої допомоги при захисті від систем розподілених атак, Інтернет і інші мережі, Security & Hack, статті

mixter, duke

На сайті компанії NeoNet Ви могли читати статтю від 15 грудня, що вийшла ще
до відомих Вам атак на великі американські новинні сайти, присвячену
аналізу структур мереж розподілених атак і методам можливого захисту від цього.

Почнемо з того, що методи, якими можна дістати несанкціонований
доступ до серверів з метою пуску розподіленої атаки, дуже і дуже різноманітні.
Взагалі не існує стандартизованого і загального методу захисту від даного класу атак, але з іншого боку, існує ряд заходів щодо поліпшення безпеки, який просто необхідно прийняти. Нижче слід їх короткий список:

1) Не піддавайтеся паніці. Минулі атаки як правило були спрямовані на створення панічної обстановці в зв’язку з типом цілей, на які вони були направлені. Дуже важливо зрозуміти, що тільки досить малий список компаній і серверів повинні всерйоз вопрінімать можливість distributed DoS. У цей список входять популярні сайти, що включають розвинуті популярні пошукові машини, центри e-Commerce, великі і популярні IRC-сервера або ж новинні стрічки. Інакше кажучи, якщо Ваша улюблена сторінка не має бболее 10000 відвідувань в день або ж тисячного денного обороту у разі, якщо це електронний магазин, Вам можна нервувати в меншій ступеня.

2) скоординують дії з Вашим Internet-провайдером.
Дуже важливо, щоб ви мали зв’язок і підтримку з боку тих, хто надає Вам послуги хостингу. Загальна пропускна спокобность каналів, задіяних в розподіленої атаки так велика, то Ваша підмережа швидше за все не зможе витримати навантаження. Обов’язково з’ясуйте у Вашого ISP, чи можуть вони пріменіьт рід контролю, який обмежить сумарний обсяг вхідного до Вас трафіку, ссмогут вони боротися вже на своїх роутерах з величезним числом пакетів, що мають підроблений (spoofed) зворотну адресу. В ідеальній ситуації, Ваш ISP повинен надати Вам статістікуу або ж дати доступ до роутера в разі насувається атаки.

3) Оптимізуйте структуру роутінга у вашій мережі.
Якщо у вас не один хост, але велика мережа, вам краще провести необхідну настройку роутерів щоб мінімізувати наслідки DoS-атаки. Щоб запобігти SYN-флуд, забезпечте належну настройку Вашого файлвола (досить детальну документацію самої компанії Сisco, присвячену цьому ви можете так само
прочитати на VOID.RU. Забезпечте фільтрацію, наприклад, UDP, IGMP, ICMP-трафіку (тобто тих протоколів, які не є необхідними для нормального функціонування Вашої мережі). Заборонити ICMP-unreach трафік (таким трафіком Ваші хости будуть відповідати на ICMP-флуд).

Нижче слідують докладні рекомендації з налагодження роутера з метою запобігти можливості SYN-флуда:

  • Перехоплення пакетів (TCP-Intercept) дозволяє запобігти атаці на машини позаду роутера допомогою SYN-флуда, тобто коли хакер посилає на сервер величезна кількість пакетів із запитом на установку з’єднання. Так як у цих пакетів варто невірний зворотну адресу, але з’єднання не миє бути встановлений, і обсяг нерозпізнаних встановлених з’єднань призводить до того, що сервер виявляється нездібний обробляти нові запити від користувачів, що використовують www, ftp або інші сервіси, що надаються атакується сервером.


  • Перехоплення пакетів (TCP Intercept) дозволяє запобігти поодобние атаки, перехоплюючи і перевіряючи всі запити на встановлення з’єднання. Програмне забезпечення з’єднується з клієнтом, з сервером і якщо з’єднання відбулося успішно, то замикає ці напів-з’єднання в одну – для користувача це непомітно, він як би безпосередньо підключений до сервера. Але неіснуючі сервера ніколи не з’єднаються з роутером, і, відповідно, запит на з’єднання з ними не буде відісланий підзахисному 😉 клієнту. “Перехоплення” ж продовжує функціонувати і перенаправляти пакети на вже існуючому з’єднанні.
  • У разі неправильних запитів, програмне забезпечення встановлює для підозрілих пакетів свій таймаут і граничне кількість коннектів до цього сервера, при цьому обробляючи решта – коректні запити.

    Визначаючи політику безпеки, що захищається, ви можете вибрати від перехоплення всіх запитів на з’єднання до перехоплення запитів від або для певних серверів або підмереж. Ви так само можете задати порогове кількість з’єднань.

    Можна так само запустити перехоплення в режимі перегляду, при котрому будуть створюватися лог-файли без управління з’єднаннями.

Конфігурування


  • Включення перехоплення

    Щоб активувати перехоплення, зробіть наступне:
    Додайте до списку адреси, які ви збираєтеся контролювати: access-list access-list-number {deny | permit} tcp any destination destination-wildcard
  • Активізуйте перехоплення

    ip tcp intercept list access-list-number Ви можете задати перехоплення всіх запитів з певних мереж або від певних адрес. Як правило, список конфігурації доступу за умовчанням перевіряє всі SYN-пакети. Як правило, не варто перевіряти джерело – SYN-флудери генерує source-ip випадковим чином.
  • Установка режиму:

    Як вже говорилося, перехоплення може працювати як в активному, так і в пасивному режимі. За замовчуванням включений активний (режим перехоплення).
  • У такому режимі програмне забезпечення перехоплює кожен запит на з’єднання (SYN) і відповідає серверу ACK’om (підтвердженням). Так само сервер очікує підтвердження від кліетнта. Коли т сервера отримана інформація про підтвердження з’єднання, клієнтові повідомляється про встановлення з’єднання і роутер встановлює коннект через себе.

    У режимі спостереження (passive) запити на з’єднання безперешкодно проходять через роутер але відслідковуються до установки з’єднання.

    Якщо з’єднання немає в течії 30 секунд, клієнту надсилається сигнал про скасування спроби встановити з’єднання (час задається зміною параметра ip tcp intercept watch-timeout).

    Щоб поміняти режим функціонування перехоплення, встановіть параметр командою ip tcp intercept mode з параметром watch або intercept.

  • Установка режиму скидання

    При проведеної атаці, програмне забезпечення стає агресивнішим, ніж у нормальному стані. Якщо число невстановлених з’єднань за останню хвилину перевершує 1100, кожен новий запит призведе до того що найстаріший запит буде видалено з черги. Так же тайм-аут знижується до напівсекунди проти звичайних 30 секунд.

    За замовчуванням, перехоплювач видаляє з черги найстаріший запит на з’єднання. Альтернативний режим – видалення запитів з черги випадковим чином. Для установки такого режиму скидання віддайте команду ip tcp intercept drop-mode з параметром oldest або random.

  • Налаштування таймерів

    За замовчуванням, програмне забезпечення чекає 30 секунд для кожної спроби з’єднання, чекаючи установки оного. Після цього захищається Пашина відсилається Reset. Щоб змінити таймаут, в режимі загального конфігурування (Global configuration), віддайте наступну команду:

    ip tcp intercept watch-timeout [к-сть секунд] За замовчуванням, програмне забезпечення чекає 5 секунд від одержувача обміну пакетами FIN. Щоб змінити цей таймаут, в режимі загального конфігурування (global configuration), віддайте наступну команду:

    ip tcp intercept finrst-timeou [к-сть секунд] За замовчуванням, програмне забезпечення добу управляє з’єднанням, навіть якщо ніяких даних не передається. Щоб змінити цей таймаут, в режимі загального конфігурування (global configuration), віддайте наступну команду:

    ip tcp intercept connection-timeout [к-сть секунд]

  • Установка порогових значень

    Початок і закінчення передбачуваної атаки визначаються двома факторами: загальна кількість “неповних” з’єднань і кількість запитів на з’єднання за період в одну хвилину. Обидва порогових значення можуть бути перевизначені (як – див вище).

    Коли цей поріг перевищено, перехоплювач встановлює факт атаки на сервер і переходить в агресивний режим. У цьому режимі відбувається наступне:

    -Кожне нове з’єднання призводить до того, що одне із старих скидається. -Таймаут на ретрасляцію пакетів з клієнта на сервер зменшується до напівсекунди.

    -Якщо перехоплювач знаходиться в пасивному режимі моніторингу, то тайм-аут для спостереження за з’єднанням зменшується вдвічі (странтегія скидання змінюється командою ip tcp intercept drop-mode (див. вище)

  • Зауважте, що агресивний режим завершується при виявленні кінця атаки. Коли обидва значення (к-сть неповних з’єднань та швидкість їх прибуття) падають нижче порога, перехоплювач переводиться на “бойове чергування”.

    Поставити умови для переходу в агресивний режим можна командами. За замовчуванням значення low і high дорівнює 900 і 1100 відповідно. Щоб встановити значення для скидання агресивного режиму, віддайте команду ip tcp intercept max-incomplete low number. Для включення оного – ip tcp intercept max-incomplete high number.

    Ви так само можете змінити порогові значення для кількості запитів на коннект, які прибули за останню хвилину. Команди – ip tcp intercept one-minute low number і ip tcp intercept one-minute high number відповідно.


  • ПРИКЛАД КОНФІГУРАЦІЇ

    Дана конфігурація задає список 101, при цьому програмне забезпечення перехвативат всі пакети, адресовані підмережі 192.168.1.0/24:

    ip tcp intercept list 101

    !

    access-list 101 permit tcp any 192.168.1.0 0.0.0.255

4) Оптимізуйте ваші хости, на які припадає найбільша частка загального трафіку. Виконайте це з усіма серверами, які, на Вашу думку, можуть стати жертвою flodd-атаки. Забороніть все увазі трафіку, некритичні для серверів, які Ви хочете захистити. Так само, multihoming (привласнення множинних IP-адрес одного й того ж хосту) може сильно збити атакуючого з пантелику. Рекомендується “розподілити” таким чином ваш головний сайт по декількох фізично різним машинам, в той час як HTML-індекс на різних машинах буде перенаправленням на “істинний” web-site.

5) Під час проходять атак почніть аналіз як можна швидше. Головне – встигнути відстежити джерела пакетів і проконтактіровать з провайдерами, чиї підмережі стали джерелом атаки. Не надавайте великого значення зворотним адресами, вказаними в пакетах, так як даний адресу так само легко встановити в будь-яке значення, як і власне почати атаку. Важлива швидкість і оперативність ваших дій, тому що зміни в таблицях роутінга, які дозволять відстежити оригінальний джерело флуду, скинуться незабаром після закінчення атаки.

Дії, які слідуємо зробити, щоб Ваша система не стала жертвою несанкціонованого доступу, злому і установки модуля мереж розподілених атак.

6) Не піддавайтеся паніці.
Як потенційна жертва, ви повинні не панікувати, а вживати дії з метою перешкодити ймовірному противнику. Зауважте, що виявлені “у природі” модулі мереж розподілених атак працювали лише під управлінням Solaris або Linux. Можливо, вони можуть бути портіровани на BSD, але так як BSD спочатку більш безпечна по ряду причин, це не повинно бути великою проблемою.

7) Переконайтеся, що ваші машини не можуть бути легко зламані.
Сущетсвует безліч експлойтів, існують їх архіви, існують списки версій, доступні, до прісмеру, на packetstorm.securify.com або ж www.securityfocus.com. Пошукайте на даних сайтах експлоїти, відповідні Вашим версіями сервісів. Пам’ятайте, що хакеру нудні уразливі сервіси, щоб хоч-якось встановити контроль над вашою системою. Вимкніть всі непотрібні сервіси. Якщо у вас залишаються сумніви з приводу захищеності Вашої машини або ж ви симі не в змозі виконати роботи – зверніться для допомоги до спеціалізованої організації.

8) Регулярно перевіряйте Ваші системи. Зрозумійте, що крім Вас, за них ніхто не несе відповідальності. Читайте документацію і manи, розумійте, як функціонує операційна ісітема та програмне забезпечення, намагайтеся бути в курсі подій, ставте всі необхідні патчі і апдейти. Часто відвідуйте security-related проекти – не дивлячись на бьольшую потенційну загрозу, що вільно розповсюджується security-related інформація часто є єдиним безкоштовним засобом, що дозволяє Вам підтримувати високий рівень захищеності Ваших систем.

9) Використовуйте криптографічні перевірки
На системах, в яких ви впевнені, варто поставити систему, яка генерує криптографічні підпису (найпростіший приклад – CRC32) і потім періодично перевіряє, чи відбулися в файлах зміни. Хороший приклад такої системи – TripWire. Так само рекомендується виділити окремий сервер, на якому будуть зберігатися дійсні контрольні суми файлів, або ж навіть зберігати їх на магнітооптиці або стриммерів, до яких неможливо технічно отримати віддалений доступ.

10) Під час проводяться атак негайно вимкніть Ваші системи і приступайте до аналізу. Якщо одне з джерел атаки перебував у Вашій мережі, або ж до Вас звернулися з цієї причини, негайно вимкніть дані системи або від’єднайте їх від мережі. Якщо атаки проводилися з Ваших систем, це означає, що до них, швидше за все, був отриманий повний доступ. Їх необхідно проаналізувати, і потім зробити переустановку операційної системи. Так само рекомендується повідомити про факт в спеціалізовані організації або ж у команди швидкого реагування (CERT). Пам’ятайте, що надання їм даних, що залишилися на машинах після атаки, може сильно допомогти у визначенні першоджерела.

Рекомендовані матеріали:

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*