- •1. Безпека www-серверів 6
- •2. Безпека ос, що лежить в основі web-сервера 15
- •3. Безпечна інсталяція і конфігурація web-сервера 28
- •4. Безпека програмного середовища 42
- •5. Використання криптографії в захисті www-серверів 45
- •6. Захист web-портала від інформаційних атак 68
- •1. Безпека www-серверів
- •1.1. Короткий опис проблеми
- •1.2. Принципи безпеки веб-серверів
- •1. Слід реалізувати відповідну практику управління безпекою і контроль за функціонуванням системи.
- •2. Слід зробити кроки для гарантування того, що на web-сайті публікується тільки коректний вміст.
- •3. Слід гарантувати захист web-вмісту від неавторизованого доступу або модифікації.
- •4. Слід використовувати активний вміст тільки після ретельного зважування отримуваних при цьому переваг порівняно із збільшенням ризиків.
- •5. Слід використовувати аутентифікацію, засновану на криптографічних технологіях, для забезпечення відповідного захисту чутливих даних.
- •6. Слід гарантувати постійне функціонування системи забезпечення безпеки.
- •1.3. Причини уразливості web-сервера
- •1.4. Планування розгортання web-сервера
- •2. Безпека ос, що лежить в основі web-сервера
- •2.1. Безпечна інсталяція і конфігурація ос
- •2.2. Видалення або заборона непотрібних сервісів і програм
- •2.3. Конфігурація аутентифікації користувача в ос
- •2.4. Управління ресурсами на рівні ос
- •2.6. Використання Appliances для web-сервера
- •2.7. Спеціально посилені (pre-hardened) ос і web-сервери
- •2.7.1. Тестування безпеки операційної системи
- •2.7.2. Список дій для забезпечення безпеки ос, на якій виконується web-сервер
- •2.7.3. Застосування patch-ів і upgrade-ів ос
- •2.7.4. Видалення або заборона непотрібних сервісів і програм, конфігурація аутентифікації користувачів в ос.
- •2.7.5. Тестування безпеки ос
- •3. Безпечна інсталяція і конфігурація web-сервера
- •3.1. Безпечна інсталяція web-сервера
- •3.2. Конфігурація управління доступом
- •3.3. Розмежування доступу для по web-сервера
- •3.4. Управління доступом до директорії вмісту web-сервера
- •Управління впливом web Bots
- •Використання програм перевірки цілісності файлів
- •Список дій для безпечної інсталяції і конфігурації web-сервера
- •3.5. Конфігурація безпечної директорії web-вмісту
- •3.6. Використання програм перевірки цілісності
- •4. Безпека програмного середовища
- •5. Використання криптографії в захисті www-серверів
- •5.1. Асиметрична криптографія
- •5.2. Симетрична криптографія
- •5.3. Дайджести повідомлень
- •5.4. Цифрові підписи
- •5.5. Сертифікати
- •5.6. Забезпечення цілісності даних і призначеної для користувача аутентифікації за допомогою підписів xml
- •5.7. Формування цифрового підпису xml: основні чотири кроки
- •5.8. Перевірка цифрового підпису xml
- •5.9. Шифрування xml
- •5.9.1. Шифрування цілого xml-файла
- •5.9.2. Шифрування окремого елементу
- •5.9.3. Шифрування змісту елементу
- •5.9.4. Обробка шифрування xml
- •5.10. Введення в безпеку Web-сервісів
- •6. Захист web-портала від інформаційних атак
- •6.1. Підсистема розмежування доступу
- •6.2. Підсистема антивірусного захисту
- •6.3. Підсистема контролю цілісності
- •6.4. Підсистема виявлення вторгнень
- •6.5. Підсистема аналізу захищеності
- •6.6. Підсистема криптографічного захисту
- •6.7. Підсистема управління засобами захисту Web-портала
- •Висновок
3.4. Управління доступом до директорії вмісту web-сервера
Не слід використовувати посилання, aliases або shortcuts з дерева директорії вмісту web на директорії або файли, що розташовані десь ще на хості або мережевій файловій системі. Краще всього заборонити можливість ПО web-сервера слідувати по посиланнях і aliases. Як указувалося раніше, лог-файли і конфігураційні файли web-сервера повинні розміщуватися поза деревом директорії, яке визначене для публічного вмісту web.
Для обмеження доступу до дерева директорії вмісту web потрібно виконати наступні кроки:
виділити окремий жорсткий диск або логічний розділ для web-вмісту і використовувати піддиректорії на даному жорсткому диску або логічному розділі виключно для файлів вмісту web-сервера, включаючи графіку, але виключаючи скрипти і інші програми;
визначити окрему директорію виключно для всіх зовнішніх по відношенню до ПО web-сервера скриптів або програм, що виконуються як частина вмісту web (наприклад, CGI, ASP, PHP);
заборонити виконання скриптів, які не знаходяться під винятковим контролем адміністративних акаунтів. Дана дія виконується створенням доступу і управлінням ним до окремої директорії, призначеної для зберігання авторизованих скриптів;
заборонити використання жорстких і символічних посилань;
визначити матрицю доступу до вмісту web. Визначити, які каталоги і файли усередині вмісту web-сервера мають обмеження і які є доступними (і кому).
Більшість виробників ПО web-сервера надають директиви або команди, які дозволяють web-адміністратору обмежити доступ користувача до файлів вмісту web-сервера. Наприклад, ПО web-сервера Apache надає директиву Limit, яка дозволяє web-адміністратору вказати, які можливості доступу (такі як New, Delete, Connect, Head і Get) пов'язані з кожним файлом web-вмісту. Директива Require в Apache дозволяє web-адміністратору обмежувати доступ до вмісту аутентифікованими користувачами або групами.
Багато директив або команди можуть бути перекриті на рівні директорії. Але при цьому слід пам'ятати, що зручність, що полягає в можливості робити локальні виключення з глобальної політики, може привести до появи дірки в безпеці, що з'явилася в окремій піддиректорії, яка контролюється іншим користувачем. Web-адміністратор повинен заборонити для піддиректорій можливість перекривати директиви безпеки верхнього рівня, якщо це не є абсолютно необхідним.
В більшості випадків подібні директиви web-сервера повинні бути заборонені. НТТР визначає, що URL, що закінчується символом слеша, повинен трактуватися як запит на перерахування файлів у вказаній директорії. Web-сервер повинен забороняти відповідати на такі запити, навіть якщо можливе публічне читання всіх файлів директорії. Такі запити часто указують на спробу розмістити інформацію способами, відмінними від тих, які допускає web-адміністратор. Користувачі можуть намагатися це робити, якщо у них виникають труднощі в навігації по сайту або якщо посилання в web-сторінках обриваються. Порушник може намагатися це зробити, щоб розмістити інформацію, приховану інтерфейсом сайту. Web-адміністратори повинні досліджувати запити даного типу, знайдені в лог-файлах web-сервера.
