Современные
информационные технологии.
Информационная
безопасность.
Юдін О.К., Гусєв.
М.А
Національний
Авіаційний Університет, Україна
Захист від
DDoS-атак на HTTP-сервер Apache
Вступ
DoS-атака
(від англ. Denial of Service, відмова в обслуговуванні) - атака на комп'ютерну
систему з метою довести її до відмови, тобто, до такого стану, що правомочні
користувачі системи не можуть отримати доступ до надаваних системою ресурсам
(серверів, сервісів ), або цей доступ ускладнений. Відмова «ворожої» системи
може бути як самоціллю (наприклад, зробити недоступним популярний сайт), так і
одним із кроків до захоплення контролю над системою (якщо під позаштатної
ситуації ПО видає будь-яку критичну інформацію - наприклад, версію, частина
програмного коду і т . д.).
Якщо
атака виконується одночасно з великої кількості комп'ютерів, говорять про
DDoS-атаку (від англ. Distributed Denial of Service, розподілена атака типу
«відмова в обслуговуванні»). У деяких випадках до фактичної DDoS-атаки
призводить ненавмисна дія, наприклад, розміщення на популярному
інтернет-ресурсі посилання на сайт, розміщений на не дуже продуктивному сервері
(слешдот-ефект). Великий наплив користувачів, призводить до перевищення
допустимого навантаження на сервер і, отже, відмови в обслуговуванні частини з
них.
· Помилка в програмному коді, що призводить
до некоректних результатів
· Недостатня перевірка даних користувача
· Флуд (англ. flood — «Повінь», «переповнення») — атака,
пов'язана з великою кількістю зазвичай безглуздих або сформованих в
неправильному форматі пакетів.
· Атака другого роду — атака,
яка прагне викликати помилкове спрацьовування системи захисту і привести до
недоступності ресурсу.
Будь
сервер в Інтернеті може бути підданий DDoS атаці. Один з найпопулярніших типів
DDoS атак це атака по HTTP протоколу - HTTP flood, таким чином атакуючий створює
велике навантаження на атакується веб-сервер. При великій кількості запитів по
HTTP протоколу цілком реально що веб-сервер не встигає коректно обробляти
запити і може вийти з ладу.
Мета
даної настройки - як найкраще оптимізувати конфігурацію веб сервера Apache що б
знизити навантаження на веб сервер коли ваш-сервер знаходиться під DDoS атакою.
Рекомендується використовувати такий тип налаштувань тільки при виявленні що
ваш веб сервер атакують злісні кібер-злочинці, ботоводи.
Найчастіше
найбільш ефективним анти DDoS інструментом буде встановлений брандмауер.
Наприклад, більшість брандмауерів можуть бути налаштовані так щоб обмежувати
число одночасних з'єднань від будь-яких індивідуальних IP-адрес і мереж, тим
самим запобігаючи ряд простих атак. Звичайно, це не допоможе якщо буде потужна
DDoS атака.
Давайте
приступимо до налаштування параметрів Apache, які допоможуть уникнути
деяких проблем викликаних DDoS атакою:
TimeOut - вказуйте
якомога менше значення для даної директиви (веб сервера який схильний до DDoS
атаки).
KeepAliveTimeout директива - також потрібно знизити її значення або полностю вимкнути.
Значення
різних тайм-аут директив, представлені іншими модулями теж повинні бути
перевірені.
Директиви LimitRequestBody,
LimitRequestFields, LimitRequestFieldSize, LimitRequestLine,
LimitXMLRequestBody повинні бути ретельно налаштовані на обмеження споживання
ресурсів, викликаних запитами клієнтів.
Перевірте,
що ви використовуєте директиву AcceptFilter
(на ОС які підтримують її). За замовчуванням вона включена в конфігурації
Apache httpd, але для своєї роботи може зажадати перезбирання з новими
налаштуваннями ядра вашої ОС (* nix, * bsd).
Використовуйте
директиву MaxClients щоб вказати
максимальну кількість клієнтів які зможуть бути одночасно підключені до
сервера, зменшивши значення директиви ви можете знизити навантаження на
web-сервер.
Вибір
іншого mpm-модуля може дозволити вам обробляти більше одночасних з'єднань, тим
самим пом'якшити (D) DoS атаку. За замовчуванням в * nix системах встановлюється
mpm - prefork, він найбільш ненажерливий, і найменш продуктивний.
Є
ряд сторонніх модулів до Apache які можуть обмежувати певні моделі поведінки
клієнта і тим самим пом'якшити DDoS атаки.
Виявлення DoS-атак
Існує
думка, що спеціальні засоби для виявлення DoS-атак не потрібні, оскільки факт
DoS-атаки неможливо не помітити. У багатьох випадках це дійсно так. Однак
досить часто спостерігалися вдалі DoS-атаки, які були помічені жертвами лише
через 2-3 дні.
Методи
виявлення DoS-атак можна розділити на кілька великих груп:
· сигнатурні -
засновані на якісному аналізі трафіку,
· статистичні
- засновані на кількісному аналізі трафіку,
· гібридні
(комбіновані) - поєднують в собі переваги обох методів.
Висновок
Наївно
було б припускати, що безпека Internet середовища - це само собою зрозуміле.
Будучи підмогою для нарощування конкурентних переваг, Internet таїть в собі
безліч підводних каменів. Одна з таких небезпек - ddos атака, яка не тільки
виводить сайт з робочого стану, але і дозволяє отримати контроль над сервером.
Тому захист від ddos атак є найактуальнішим питанням в рамках інформаційної
безпеки, а боротьба з ddos стає глобальною проблемою.
Література
1.
Скотт Х. Администрирование Web-сервера Apache.
– М.: Вильямс, 2011.
– 336 с.
2.
Стюарт М. Секреты хакеров. Безопасность сетей.
– СПб.: Питер, 2011. – 651
с.