Як захистити веб-програму: основні поради, інструменти, корисні посилання. Порівняльне тестування сканерів безпеки web-програм Сканування на безпеку веб ресурсу

Найкращих веб-сервісів, за допомогою яких можна досліджувати сайти на вразливості За оцінкою HP, 80% всіх вразливостей викликано неправильними налаштуваннями веб-сервера, використанням застарілого програмного забезпечення або іншими проблемами, яких можна було легко уникнути.

Сервіси із огляду допомагають визначити такі ситуації. Зазвичай сканери здійснюють перевірку на основі відомих уразливостей. Деякі з них досить прості і тільки перевіряють відкриті порти, інші працюють ретельніше і навіть намагаються здійснити SQL-ін'єкцію.

WebSAINT

SAINT - відомий сканер уразливостей, на основі якого зроблені веб-сервіси WebSAINT та WebSAINT Pro. Як Approved Scanning Vendor, сервіс здійснює ASV-сканування сайтів організацій, для яких це необхідно за умовами сертифікації PCI DSS. Може працювати за розкладом та проводити періодичні перевірки, складає різні звіти за результатами сканування. WebSAINT сканує порти TCP та UDP на вказаних адресах у мережі користувача. У «професійній» версії додані пентести та сканування веб-додатків та звіти, що настроюються.

ImmuniWeb

Сервіс ImmuniWeb від компанії High-Tech Bridge використовує трохи інший підхід до сканування: окрім автоматичного сканування, тут пропонують ще пентести вручну. Процедура починається у вказаний клієнтом час і займає до 12 години. Звіт переглядають співробітники компанії, перш ніж відправити клієнту. У ньому вказують як мінімум три способи усунення кожної виявленої вразливості, у тому числі варіанти зміни вихідного кодувеб-програми, зміна правил файрвола, встановлення патча.

За людську працю доводиться платити більше, ніж за автоматичну перевірку. Повне сканування з пентестами ImmuniWeb коштує $639.

BeyondSaaS

BeyondSaaS від BeyondTrust обійдеться ще дорожче. Клієнтам пропонують оформити передплату за $3500, після чого вони можуть проводити необмежену кількість перевірок протягом року. Одноразовий скан коштує $700. Сайти перевіряються на SQL-ін'єкції, XSS, CSRF та вразливості операційної системи. Розробники заявляють ймовірність помилкових спрацьовувань трохи більше 1%, а звітах теж вказують варіанти виправлення проблем.

Компанія BeyondTrust пропонує інші інструменти для сканування на вразливості, у тому числі безкоштовний Retina Network Community, який обмежений 256 IP-адресами.

Dell Secure Works

Dell Secure Works, можливо, найпросунутіший з веб-сканерів, представлених в огляді. Він працює на технології QualysGuard Vulnerability Management та перевіряє веб-сервери, мережеві пристрої, сервери додатків та СУБД як усередині корпоративної мережі, і на хмарному хостингу. Веб-сервіс відповідає вимогам PCI, HIPAA, GLBA та NERC CIP.

Веб-сканери сайтів – це спеціальні програми, які виявляють уразливості та дефекти веб-застосунків.

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

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

Які дані можна отримати за допомогою веб-сканера сайтів

При використанні веб-сканерів можна виявити такі:

  • Порушення в процесі кодування - помилки, пов'язані з неправильною обробкою вхідних та вихідних даних (SQL-ін'єкції, XSS).
  • Порушення під час використання та конфігурування web-додатків – помилкова конфігурація його оточення (сервери програм, SSL/TLS та різні сторонні компоненти).
  • Порушення у процесі експлуатації ресурсу – застосування неактуального ПЗ, легких паролів, збереження архівних даних, службових модулів у прямому доступі на сервері.
  • Неправильне налаштування фільтра IP, що призводить до відмови в обслуговуванні. У тому числі атаки на сервер за допомогою напряму великої кількості автоматичних запитів, які він не здатний швидко обробити, внаслідок чого зависає, перестаючи обробляти запити реальних користувачів.
  • Слабке забезпечення захисту операційної системи на сервері. За її наявності у шахраїв формується можливість створити довільний код.

Принципи функціонування веб-сканерів сайтів

  1. Збір відомостей про аналізований ресурс.
  2. Перевірка ПЗ ресурсу на вразливість за допомогою спеціальних.
  3. Визначення слабких секторів у системі.
  4. Складання рекомендацій щодо видалення помилок.

Різновиди сканерів захищеності веб-сайтів

Виходячи з призначення, ці програми діляться на кілька груп:

  • Мережеві сканери. Відкривають всілякі мережеві послуги, визначають ОС і т.д.
  • Сканери визначення помилок у скриптах. Розпізнають уразливості, такі як XSS, SQL inj, LFI/RFI тощо, або дефекти, що залишилися після використання непостійних компонентів, індексації директорій та ін.
  • Засоби підбору експлойтів. Виконують пошук експлойтів у ПЗ та скриптах.
  • Програма автоматизації ін'єкцій. Сюди входять утиліти, що займаються виявленням та використанням ін'єкцією.
  • Дебаггери. Програми усунення дефектів та виправлення коду в ресурсах.

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

Безкоштовні послуги

Мережеві сервіси:

  • Nmap – програма з відкритим кодом. Використовується для дослідження мереж незалежно від кількості об'єктів та визначення їхнього стану.
  • IP Tools - обслуговування аналізу протоколів, що забезпечує норми фільтрації, адаптер відбору, декорування протоколів і т.д.

Сканери виявлення помилок у скриптах:

  • Nikto – забезпечує всебічне дослідження серверів на помилки, перевірку великої кількості потенційно небажаних файлів і додатків.
  • Skipfish – забезпечує рекурсивну перевірку додатків та подальший аналіз на базі спеціальних словників.

Програми розпізнавання експлойтів:

  • Metasploit – програма працює на базі Perl та забезпечує всебічну перевірку різноманітних платформ та додатків.
  • Nessus – у процесі аналізу використовує як стандартні методи тестування, і відокремлені, що імітують поведінка шахраїв у процесі впровадження у систему.

Програми автоматизації ін'єкцій:

  • SQLMap - сервіс з доступним ключовим кодом, що використовується для аналізу SQL-уразливостей.
  • bsqlbf-v2 – програма для пошуку сліпих SQL-ін'єкцій.

Дебаггери:

  • Burp Suite – це комплекс автономних сервісів, розроблених на основі Java.

Призначення сканера вірусів сайту

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

Виникає необхідність виявлення причин виникнення зазначених проблем. Це спеціальна процедура, яку виконують сканери вірусів сайту. Вона включає 2 основні етапи:

  1. Аналіз компонентів та баз даних на хостингу на предмет виявлення шкідливих скриптів та інжектів.
  2. Перевірка ресурсу на сторінках сайту. Виявляє приховані редиректи та інші проблеми, які не можна знайти за допомогою програм пошуку вразливості.

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

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

До найбільш популярних сканерів вірусів сайту відносяться Nod, Dr.Web, Kaspersky і т.д. Всі вони є досить ефективними, якщо використовувати версії з останніми оновленнями. Працюють у режимі онлайн.

Рисунок 2. Зовнішній виглядвеб-програми Mutillidae

Методика тестування

Тепер, коли ми підготували тестовий стенд, можна розглянути процес тестування, який буде наступною послідовністю дій:

  1. Підготовка тестової програми до сканування
  2. Налаштування сканера безпеки
  3. Запуск процесу сканування з вибраними параметрами
  4. Аналіз результатів та занесення їх до таблиці
Тип уразливості Знайдено Невірно знайдено Час

Таблиця 1. Результати сканування

Після того, як будуть проведені всі серії тестування для всіх сканерів, ми занесемо отримані результати до зведеної таблиці.

The Path Traversal / Local File Inclusion

Sensitive Data Exposure

Витрачений час

Хибно виявити-

Хибно виявлено

Хибно виявити-

Хибно виявити-

Хибно виявити-

Таблиця 2. Підсумкова таблиця результатів

У процесі проведення тестів ми зіштовхнемося з декількома проблемами:

  1. Сканери безпеки відрізняються своїм налаштуванням та функціоналом. Для того щоб відобразити в нашому тестуванні специфічні особливості сканерів, ми будемо проводити кілька серій сканування з різними конфігураціями налаштувань для отримання більш якісного результату (якщо це можливо).
  2. Сканери безпеки бувають спеціалізовані певному типі вразливості або можуть визначати широкий спектр вразливостей. Якщо сканер спеціалізований на певному типі вразливості, отже, він повинен якісніше визначати їх, в іншому випадку ми будемо акцентувати особливу увагу на не ідентифікованої або помилково ідентифікованої вразливості спеціалізованим сканером.
  3. Типи вразливостей. Оскільки існує безліч типів уразливостей, нам треба визначитися з тими типами, які ми відображатимемо у підсумковому звіті. В даному питанніми керуватимемося класифікацією OWASP Top 10 2013 та виберемо з цього списку п'ять типів уразливостей.
  4. Кількість вразливостей у веб-застосунку. Заздалегідь знати про те, скільки вразливостей міститься в тестовому Web додатку, ми можемо, тому за загальне число ми візьмемо суму знайдених уразливостей усіма сканерами.

Налаштування сканерів та початок тестування

SkipFish

Даний сканер є повністю автоматизованим інструментом з консольним інтерфейсом і має невелику кількість налаштувань, з повним переліком яких можна ознайомитися за допомогою команди skipfish -h. Для запуску процесу сканування автор пропонує три базові варіанти:

  1. skipfish -W /dev/null -LV […other options…] – в даному режимізапуску сканер виконує впорядкований обхід мети та в принципі працює також як інші сканери. Не рекомендується внаслідок обмеженого охоплення ресурсів мети, проте процес сканування займає значно менше часу в порівнянні з іншими режимами;
  2. skipfish -W dictionary.wl -Y […other options…] – у цьому режимі сканер використовує фазинг лише імен файлів або розширень. Цей режим кращий, якщо є обмеження часу і при цьому потрібно отримати прийнятний результат;
  3. skipfish -W dictionary.wl […other options…] – у цьому режимі сканер перебирає всі можливі пари ім'я та розширення. Цей режим значно повільніший за попередні, але при цьому він проводить більш детальний аналіз веб-додатку. Розробник сканера рекомендує використовувати цей варіант за промовчанням.

Skipfish -W dictionary.wl -o ~/report/ http://target/

W – вказуємо шлях до словника, який ми використовуватимемо;

O – вказуємо директорію, до якої зберігатимемо звіт.

Тип уразливості Знайдено Невірно знайдено Час
SQL injection 6 5 3ч18м
XSS 11 2
CSRF 1 1
3 2
Sensitive Data Exposure 128 0

Таблиця 3. Результати сканування SkipFish

Рисунок 3. Закінчення процесу сканування SkipFish

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

SQLMap

Основною метою даного сканера є автоматичний пошук та експлуатація SQL вразливостей. Він має величезну кількість налаштувань, що дозволяють оптимізувати процес пошуку та експлуатації вразливостей. Для запуску сканування можна скористатися візардом: sqlmap-wizard або найпростішою командою: sqlmap-u "http://www.target.com/vuln.php?id=1". Ми ж намагатимемося повністю автоматизувати процес пошуку та максимізувати результат. Запускати процес сканування ми будемо двома способами:

Sqlmap -u "http://target/" -o -v 4 --crawl=4 --level=3 --risk=2 --forms --batch --dbms=mysql sqlmap –l ~/burplog.log -o –v 4 --batch --level=3 --risk=2 --dbms=mysql

У першому способі ми використовуємо вбудований в SQLMap краулер, а в другому файл логів Burp Suite. А тепер прокоментуємо параметри, які ми використали:

U – після цього параметра вказуємо адресу мети сканування;

L – після цього параметра вказуємо шлях до файлу з логами Burp Suite (або WebScarab);

O - включаємо оптимізацію;

V - встановлюємо рівень подробиці інформації, що виводиться;

-dbms - Встановлюємо СУБД, яку використовує наша мета;

-forms - включаємо парсинг та аналіз форм, що містяться в тестовому додатку;

-crawl - включаємо вбудований краулер, який скануватиме нашу мету;

-batch - так як ми вирішили повністю автоматизувати процес пошуку та експлуатації, ми скористаємося цим параметром, він змушує SQLMap виконувати всі дії за замовчуванням, а не вимагати рішення у користувача;

-level, -risk - збільшуємо кількість використовуваних тестів, при цьому значно збільшується час сканування.

Тип уразливості Знайдено Невірно знайдено Час
SQL injection 14 0 4ч27м
XSS - -
CSRF - -
The Path Traversal / Local File Inclusion - -
Sensitive Data Exposure - -

Таблиця 4. Результати сканування SQLMap

Рисунок 4. Експлуатація виявленої SQL вразливості

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

Acunetix Web Vulnerability Scanner (Acunetix WVS)

Цей інструмент є єдиним платним представником, який працює тільки на платформі Windows, у нашому тестуванні. Сканер має як графічний, і консольний інтерфейс. Для запуску процесу сканування потрібно скористатися візардом, в якому буде запропоновано використовувати як стандартні налаштування, так і спеціально налаштовані.

Отже, приступимо до налаштування сканера:

  1. На першому кроці нам пропонують ввести адресу мети, або вибрати файл із структурою сайту, який був отриманий за допомогою інструмента Site Crawler, ми виберемо перший варіант
  2. На другому кроці ми маємо вибрати профіль сканування, їх досить багато, ми виберемо профіль «Default», оскільки він містить у собі тести для пошуку всіх доступних типів вразливостей та налаштування сканування, які ми залишимо дефолтними
  3. На третьому етапі сканер намагається визначити технології, які використовує ціль, і відображає отримані значення, при цьому їх можна обрати самому або виставити значення Unknown. У нашому випадку всі значення були визначені правильно, і ми залишимо їх без зміни
  4. Наступним кроком пропонується вибрати спосіб аутентифікації, так як нам вона не знадобиться, ми пропустимо цей крок
  5. На останньому кроці пропонується зберегти налаштування і після натискання Finish починається процес сканування
Тип уразливості Знайдено Невірно знайдено Час
SQL injection 1 0 2г 13м
XSS 31 0
CSRF 19 0
The Path Traversal / Local File Inclusion 4 3
Sensitive Data Exposure 231 0

Таблиця 5. Результати сканування Acunetix WVS

Рисунок 5. Закінчення процесу сканування Acunetix WVS

Простота налаштування і мінімум помилкових спрацьовувань ось що можна сказати про даний інструмент. Крім результатів, занесених до таблиці, Acunetix WVS зібрав багато інформації щодо структури веб-додатка та конфіденційних даних користувачів. Однією з корисних фіч сканера можна виділити надання докладної інформації про вразливість та методи її усунення, а також посилання ресурси, що містять вичерпну інформацію.

Web Application Attack and Audit Framework (w3af)

Фреймворк із графічним та консольним інтерфейсом, що дозволяє шукати та експлуатувати вразливості у веб-додатку. Завдяки широкому спектру плагінів, можна досить тонко налаштувати процес сканування. Також у w3af є готові шаблонидля сканування, користувачеві треба ввести адресу мети.

При налаштуванні сканера ми будемо базуватися на шаблонах full_audit і full_audit_spider_man, їх відмінність полягає в тому, що в першому шаблоні як плагін краулера використовується web_spider - класичний web-павук, а в другому spider_man - локальний проксі. Для наших цілей нам не знадобляться плагіни з групи «bruteforce», які включені за замовчуванням у вибраних шаблонах, тому ми їх виключимо. Залишилося налаштувати плагіни із групи «output». За замовчуванням виведення зібраної інформації проводиться тільки в консоль, що для аналізу результатів не дуже зручно, тому ми включимо плагін "html_file", який дозволяє зберігати всю отриману інформацію в файлі HTML.

Тепер можна ввести адресу цілі та розпочати сканування.

Тип уразливості Знайдено Невірно знайдено Час
SQL injection 4 2 2ч57м
XSS 3 1
CSRF 25 0
The Path Traversal / Local File Inclusion 4 3
Sensitive Data Exposure 17 0

Таблиця 6. Результати сканування w3af

Рисунок 6. Деталі запиту, що містить SQL вразливість

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

Підсумки тестування

Що ж показало наше тестування? Якщо у вас виникли завдання, пов'язані з проведенням аудиту безпеки веб-програми, вам слід запастися терпінням та часом. У таблиці, наведеній нижче, можна звернути увагу на час, який зайняв процес сканування кожним із інструментів. Воно не дуже велике, причина в наступному: по-перше, тестовий додаток і сканери безпеки знаходилися на одній фізичній машині і, по-друге, даний час не включає процес аналізу отриманих результатів, в реальних умовах час тестування займатиме значно більше часу . Як ви встигли помітити, результати, надані сканерами різняться: якийсь сканер краще впорався з пошуком тієї чи іншої вразливості, якийсь надав більш детальну інформацію про програму в цілому. У зв'язку з цим при аудиті безпеки не варто покладатися лише на один інструмент, треба використовувати комплекс різних засобів, у тому числі й ручний аналіз веб-програми. Також варто сказати, що веб-технології розвиваються зі стрімкою швидкістю, і сканери безпеки не встигають за їх розвитком, тому перед проведенням аудиту треба докладно ознайомитися з технологіями, що використовуються в веб-додатку, що тестується, щоб більш точно підібрати комплекс інструментів і методик.

SQL injection

1. Мета та завдання

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

З поставленої мети, у роботі вирішуються такі:

1. Здійснити аналіз основних загроз інформаційної безпеки в освітніх мережах.

2. Розробити метод обмеження доступу до небажаних інформаційних ресурсів у освітніх мережах.

3. Розробити алгоритми, що дозволяють здійснювати сканування веб-сторінок, пошук прямих з'єднань та завантаження файлів для подальшого аналізу потенційно шкідливого коду на сайтах.

4. Розробити алгоритм ідентифікації небажаних інформаційних ресурсівна веб-сайтах.

2. Актуальність теми

Сучасні інтелектуальні навчальні системи є Web-орієнтованими та передбачають для своїх користувачів можливість роботи з різними видамилокальних та віддалених освітніх ресурсів. Проблема безпечного використання інформаційних ресурсів (ІР), розміщених у мережі Інтернет, постійно набуває все більшої актуальності. Одним із методів, що використовуються при вирішенні цієї проблеми, є обмеження доступу до небажаних інформаційних ресурсів.

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

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

Існуючі системи обмеження доступу до мережевих ресурсів мають можливість перевіряти на відповідність заданим обмеженням як окремі пакети, а й їх вміст - контент, переданий через мережу. В даний час в системах контентної фільтрації застосовуються такі методи фільтрації web-контенту: на ім'я DNS або конкретної IP-адреси, по ключовим словамвсередині web-контенту та за типом файлу. Щоб блокувати доступ до певного веб-сайту або групи вузлів, необхідно встановити безліч URL, контент яких є небажаним. URL-фільтрація забезпечує ретельний контроль за безпекою мережі. Однак не можна передбачити всі можливі неприйнятні URL-адреси. Крім того, деякі web-вузли із сумнівним інформаційним наповненням працюють не з URL, а виключно з IP-адресами.

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

Для усунення недоліків існуючих систем фільтрації контенту для освітніх мереж актуальна розробка систем фільтрації web-трафіку з динамічним визначенням категорії web-ресурсу за вмістом його сторінок.

3. Передбачувана наукова новизна

Алгоритм обмеження доступу користувачів інтелектуальних навчальних систем до небажаних ресурсів Інтернет-сайтів, що базується на динамічному формуванні списків доступу до інформаційних ресурсів шляхом їх відкладеної класифікації.

4. Заплановані практичні результати

Розроблені алгоритми можуть використовуватись у системах обмеження доступу до небажаних ресурсів в інтелектуальних системах комп'ютерного навчання.

5. Огляд досліджень та розробок

5.1 Огляд досліджень та розробок на глобальному рівні

Проблемам забезпечення інформаційної безпеки присвячені роботи таких відомих вчених, як: H.H. Безруков, П.Д. Зегжда, AM. Івашко, А.І. Костогризов, В.І. Курбатов К. Лендвер, Д. Маклін, А.А. Молдов'ян, H.A. Молдовян, А.А.Малюк, Е.А.Дербін, Р. Сандху, Дж. М. Керрол та інших. Разом з тим, незважаючи на переважний обсяг текстових джерел у корпоративних та відкритих мережах, в галузі розробки методів та систем захисту інформації в даний час недостатньо представлені дослідження, спрямовані на аналіз загроз безпеки та дослідження обмеження доступу до небажаних ресурсів при комп'ютерному навчанні з можливостями доступу до Web.

В Україні провідним дослідником у цій сфері є Домарьов В.В. . Його дисертаційні дослідження присвячені проблемам створення комплексних систем захисту інформації. Автор книг: «Безпека інформаційних технологій. Методологія створення систем захисту”, “Безпека інформаційних технологій. Системний підхід» та ін, автор понад 40 наукових статей та публікацій.

5.2 Огляд досліджень та розробок на національному рівні

У Донецькому національному технічному університетірозробкою моделей та методів для створення системи інформаційної безпеки корпоративної мережі підприємства з урахуванням різних критеріїв займалася Хімко С.С. . Захистом інформації у навчальних системах Зайняла Ю.С. .

6. Проблеми обмеження доступу до веб-ресурсів в освітніх системах

Розвиток інформаційних технологій в даний час дозволяє говорити про два аспекти опису ресурсів Інтернет-контент та інфраструктуру доступу. Під інфраструктурою доступу прийнято розуміти безліч апаратних та програмних засобів, що забезпечують передачу даних у форматі IP-пакетів, а контент визначається як сукупність форми подання (наприклад, у вигляді послідовності символів у певному кодуванні) та контенту (семантики) інформації. Серед характерних властивостей такого опису слід виділити такі:

1. незалежність контенту від інфраструктури доступу;

2. безперервна якісна та кількісна зміна контенту;

3. поява нових інтерактивних інформаційних ресурсів («живі журнали», соціальні мережі, вільні енциклопедії та ін), в яких користувачі безпосередньо беруть участь у створенні мережного контенту.

При вирішенні завдань управління доступом до інформаційних ресурсів велике значення мають питання вироблення політики безпеки, які вирішуються стосовно характеристик інфраструктури та мережевого контенту. Чим вище рівень опису моделі інформаційної безпеки, тим більше управління доступом орієнтоване на семантику мережевих ресурсів. Очевидно, що MAC та IP-адреси (канальний та мережевий рівень взаємодії) інтерфейсів мережевих пристроївнеможливо прив'язати до будь-якої категорії даних, так як одна і та ж адреса може представляти різні послуги. Номери портів (транспортний рівень), як правило, дають уявлення про тип сервісу, але якісно не характеризують інформацію, що надається цим сервісом. Наприклад, неможливо віднести певний Web-сайт до однієї з семантичних категорій (ЗМІ, бізнес, розваги тощо) лише на підставі інформації транспортного рівня. Забезпечення інформаційного захисту прикладному рівні впритул наближається до поняття контентної фільтрації, тобто. керування доступом з урахуванням семантики мережевих ресурсів. Отже, що більш орієнтована на контент система управління доступом, то більше диференційований підхід по відношенню до різних категорій користувачів та інформаційних ресурсів можна реалізувати за її допомогою. Зокрема, семантично орієнтована система управління здатна ефективно обмежити доступ учнів закладів освіти до ресурсів, не сумісних з процесом навчання.

Можливі варіанти процесу отримання веб-ресурсу представлені на мал.

Рисунок 1 - Процес отримання веб-ресурсу за протоколом HTTP

Щоб забезпечити гнучкий контроль використання Інтернет-ресурсів, необхідно запровадити у компанії-операторі відповідну політику використання ресурсів освітньою організацією. Ця політика може реалізовуватись як «вручну», так і автоматично. «Ручна» реалізація означає, що в компанії є спеціальний штат співробітників, які в режимі реального часу або журналів маршрутизаторів, проксі-серверів або міжмережевих екранів ведуть моніторинг активності користувачів освітнього закладу. Такий моніторинг є проблематичним, оскільки потребує великих трудовитрат. Щоб забезпечити гнучкий контроль використання Інтернет ресурсів, компанія має дати адміністратору інструмент реалізації політики використання ресурсів організацією. Цій меті є контентна фільтрація. Її суть полягає у декомпозиції об'єктів інформаційного обміну на компоненти, аналізі вмісту цих компонентів, визначенні відповідності їх параметрів прийнятій політиці використання Інтернет-ресурсів та здійсненні певних дій за результатами такого аналізу. У разі фільтрації веб-трафіку під об'єктами інформаційного обміну маються на увазі веб-запити, вміст веб-сторінок, що передаються на запит користувача файли.

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

У випадку, якщо запитаний ресурс відсутній у базі заборонених ресурсів, то доступ до нього надається, однак запис про відвідування цього ресурсу фіксується у спеціальному службовому журналі. Раз на день (або з іншим періодом) proxy-сервер формує перелік найбільш відвідуваних ресурсів (у вигляді списку URL) і надсилає його експертам. Експерти (адміністратори системи) з використанням відповідної методики перевіряють отриманий перелік ресурсів та визначає їх характер. Якщо ресурс має нецільовий характер, експерт здійснює його класифікацію (порноресурс, ігровий ресурс) і вносить зміну до бази даних. Після внесення всіх необхідних зміноновлена ​​редакція бази даних автоматично пересилається всім proxy серверам, підключеним до системи. Схема фільтрації нецільових ресурсів на proxy серверах наведена на рис. 2.

Рисунок 2 – Базові принципи фільтрації нецільових ресурсів на proxy-серверах

Проблеми фільтрації нецільових ресурсів на proxy-серверах є наступними. При централізованій фільтрації потрібна висока продуктивність обладнання центрального вузла, велика пропускна здатністьканалів зв'язку на центральному вузлі, вихід з ладу центрального вузла веде до виходу з ладу всієї системи фільтрації.

При децентралізованій фільтрації "на місцях" безпосередньо на робочих станціях або серверах організації велика вартість розгортання та підтримки.

При фільтрації за адресою на етапі відправки запиту відсутня превентивна реакція на наявність небажаного контенту, складності при фільтрації веб-сайтів, що «маскуються».

При фільтрації за контентом необхідна обробка великих обсягів інформації при отриманні кожного ресурсу, складність обробки ресурсів, підготовлених з використанням таких засобів як Java, Flash.

7. Інформаційна безпека веб-ресурсів для користувачів інтелектуальних навчальних систем

Розглянемо можливість управління доступом до ІР з допомогою поширеного рішення, заснованого на ієрархічному принципі комплексування засобів управління доступом ресурсів Інтернет (рис.3). Обмеження доступу до небажаних ІР з ІОС може бути забезпечене шляхом поєднання таких технологій як міжмережеве екранування, використання проксі-серверів, аналіз аномальної діяльності з метою виявлення вторгнень, обмеження смуги пропускання, фільтрація на основі аналізу змісту (контенту), фільтрація на підставі списків доступу. При цьому одним із ключових завдань є формування та використання актуальних списків обмеження доступу.

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

Доступ користувачів із частотою, нижчою за задану навіть до потенційно небажаного ресурсу, є допустимим. Аналізу та класифікації підлягають лише затребувані ресурси, тобто ті, котрим число запитів користувачів перевищило задане граничне значення. Сканування та аналіз здійснюються через деякий час після перевищення кількості запитів порогового значення (під час мінімального завантаження зовнішніх каналів).

Скануються не поодинокі веб-сторінки, а пов'язані з ними ресурси (шляхом аналізу наявних сторінок посилань). В результаті цей підхід дозволяє в процесі сканування ресурсу визначати наявність посилань на шкідливі програми.

Рисунок 3 - Ієрархія засобів управління доступом до ресурсів Інтернет

(анімація, 24 кадри, 25 Кб)

Автоматизована класифікація ресурсів провадиться на корпоративному сервері клієнта - власника системи. Час класифікації визначається методом, в основі якого лежить поняття відкладеної класифікації ресурсу. При цьому передбачається, що доступ користувачів із частотою нижче заданої навіть до потенційно небажаного ресурсу є допустимим. Це дозволяє уникнути дорогої класифікації "на льоту". Аналізу та автоматизованої класифікації підлягають лише затребувані ресурси, тобто ресурси, частота запитів користувачів яких перевищила задане граничне значення. Сканування та аналіз здійснюються через деякий час після перевищення кількості запитів порогового значення (під час мінімального завантаження зовнішніх каналів). Метод реалізує схему динамічної побудови трьох списків: «чорного» (ПСП), «білого» (БСП) та «сірого» (ССП). Ресурси, що знаходяться у «чорному» списку, заборонені для доступу. "Білий" список містить перевірені дозволені ресурси. «Сірий» список містить ресурси, які хоча б один раз були потрібні користувачами, але не пройшли класифікацію. Початкове формування та подальше «ручне» коригування «чорного» списку здійснюється на підставі офіційної інформації про адреси заборонених ресурсів, що надаються уповноваженим державним органом. Початковий зміст «білого» списку становлять рекомендовані від використання ресурси. Будь-який запит ресурсу, що не належить до «чорного списку», задовольняється. У тому випадку, якщо цей ресурс не знаходиться в білому списку, він поміщається в сірий список, де фіксується кількість запитів до цього ресурсу. Якщо частота запитів перевищує деяке граничне значення, проводиться автоматизована класифікація ресурсу, на підставі чого він потрапляє до «чорного» або «білого» списку.

8. Алгоритми визначення інформаційної безпеки веб-ресурсів для користувачів інтелектуальних навчальних систем

Алгоритм обмеження доступу. Обмеження доступу до небажаних ресурсів Інтернет-сайтів ґрунтується на такому визначенні поняття ризику доступу до небажаного ІР в ІОС. Ризиком доступу до небажаного І-го ІР, віднесеного до К-му класу ІР, будемо називати величину, пропорційну експертній оцінці шкоди, що завдається небажаним ІР даного виду ІОС або особи користувача та кількості звернень до даного ресурсу за заданий відрізок часу:

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

У процесі аналізу будь-якого веб-ресурсу, з погляду бажаності чи небажаності доступу до нього, необхідно розглядати такі основні компоненти кожної його сторінки: контент, тобто текстову та іншу (графічну, фото, відео) інформацію, розміщену на цій сторінці; контент, розміщений на інших сторінках цього ж веб-сайту (отримати внутрішні посилання із вмісту завантажених сторінок можна за регулярними виразами); з'єднання з іншими сайтами (як з точки зору можливого завантаження вірусів та троянських програм), так і з точки зору небажаного контенту. Алгоритм обмеження доступу до небажаних ресурсів з використанням списків наведено на рис. 4.

Рисунок 4 - Алгоритм обмеження доступу до небажаних ресурсів

Алгоритм визначення небажаних Web-сторінок. Для класифікації контенту – текстів веб-сторінок – необхідно вирішити такі завдання: завдання категорій класифікації; вилучення з вихідних текстів інформації, що піддається автоматичному аналізу; створення колекцій прокласифікованих текстів; побудова та навчання класифікатора, що працює з отриманими наборами даних.

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

Відомі різні підходи до побудови класифікаторів веб-сторінок. Найчастіше використовуваними є: байєсівський класифікатор; нейронні сіті; лінійні класифікатори; метод опорних векторів (SVM) Всі вищеназвані методи вимагають навчання на навчальній колекції та перевірки на колекції, що тестує. Для бінарної класифікації можна вибрати наївне байєсовське рішення, яке передбачає незалежність один від одного характеристик у векторному просторі. Вважатимемо, що це ресурси необхідно класифікувати як бажані і небажані. Тоді вся колекція зразків текстів веб-сторінок поділяється на два класи: C=(C1, C2) причому апріорна ймовірність кожного класу P(Ci), i=1,2. При досить велику колекцію зразків можна вважати, що P(Ci) дорівнює відношенню кількості зразків класу Ci до загальної кількості зразків. Для деякого класифікації зразка D з умовної ймовірності P(D/Ci), згідно з теоремою Байєса, може бути отримана величина P(Ci /D):

з урахуванням сталості P(D) отримуємо:

Припускаючи незалежність один від одного термів у векторному просторі, можна отримати таке співвідношення:

Для того, щоб більш точно класифікувати тексти, характеристики яких близькі (наприклад, розрізняти порнографію та художню літературу, в якій описуються еротичні сцени), слід запровадити вагові коефіцієнти:

Якщо kn = k; якщо kn менший k, kn.=1/|k|. Тут M – частота всіх термів у базі даних зразків, L – кількість всіх зразків.

9. Напрями вдосконалення алгоритмів

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

10. Висновки

Здійснено аналіз проблеми обмеження доступу до веб-ресурсів в освітніх системах. Вибрано базові принципи фільтрації нецільових ресурсів на proxy-серверах на основі формування та використання актуальних списків обмеження доступу. Розроблено алгоритм обмеження доступу до небажаних ресурсів з використанням списків, що дозволяє динамічно формувати та оновлювати списки доступу до ІР на основі аналізу їхнього контенту з урахуванням частоти відвідувань та контингенту користувачів. Для виявлення небажаного контенту розроблено алгоритм на основі наївного байєсівського класифікатора.

Список джерел

  1. Зима В. М. Безпека глобальних мережевих технологій/В. Зима, А. Молдовян, Н. Молдовян. - 2-ге вид. – СПб.: БХВ-Петербург, 2003. – 362 c.
  2. Воротницький Ю. І. Захист від доступу до небажаних зовнішніх інформаційних ресурсів у науково-освітніх комп'ютерних мережах/ Ю. І. Воротницький, Се Цзіньбао // Мат. XIV Між. конф. "Комплексний захист інформації". – Могильов, 2009. – С. 70-71.
Рубрика: .
Автор: Максадхан Якубов, Богдан Шкляревський.

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

Перший етап проектування, створення або використання безпечного веб-сайту - забезпечення максимального рівня безпеки сервера, на якому він розміщується.

Основним компонентом будь-якого веб-сервера є операційна система. Забезпечити її безпеку порівняно просто: достатньо вчасно встановлювати останні оновленнясистеми безпеки.

Слід пам'ятати, що хакери також схильні автоматизувати свої атаки, використовуючи шкідливе програмне забезпечення, яке перебирає один сервер за іншим у пошуках сервера, де оновлення застаріло або не було встановлено. У зв'язку з цим рекомендується стежити за тим, щоб оновлення встановлювалися своєчасно та правильно; будь-який сервер, на якому встановлені застарілі версії оновлень, може зазнати атаки.

Також слід вчасно оновлювати все програмне забезпеченняпрацює на веб-сервері. Будь-яке програмне забезпечення, яке не стосується необхідних компонентів (наприклад, DNS-сервер або засоби віддаленого адміністрування на зразок VNC або служб віддалених робочих столів), слід відключити або видалити. Якщо засоби віддаленого адміністрування все ж таки необхідні, слідкуйте за тим, щоб не використовувалися паролі за промовчанням або паролі, які можна легко вгадати. Це зауваження стосується не тільки засобів віддаленого адміністрування, але й облікових записів користувачів, маршрутизаторів і комутаторів.

Наступний важливий момент – це антивірусне програмне забезпечення. Його використання є обов'язковою вимогою для будь-якого веб-ресурсу незалежно від того, використовується як платформи Windowsабо Unix. У поєднанні з гнучким міжмережевим екраном антивірусне програмне забезпечення стає одним із самих ефективних способівзахисту від кібератак Коли веб-сервер стає метою атаки, зловмисник намагається завантажити інструменти для злому або шкідливе програмне забезпечення, щоб встигнути використовувати вразливість систем безпеки. За відсутності якісного антивірусного забезпеченнявразливість системи безпеки може довгий часзалишатися непоміченою та призвести до небажаних наслідків.

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

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

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

Деякі з цих завдань можуть здаватися скрутними, але слід пам'ятати про те, що для атаки достатньо єдиного пролому в системі безпеки. Потенційні ризики при цьому - крадіжка даних та трафіку, занесення IP-адреси сервера в «чорні» списки, збитки репутації організації та нестабільність веб-сайту.

За ступенем критичності вразливості, як правило, виділяють 5 рівнів, які визначають, у якому стані Наразізнаходиться веб-ресурс (таблиця 1). Зазвичай зловмисники, виходячи зі своїх цілей та кваліфікації, намагаються закріпитися на зламаному ресурсі та замаскувати свою присутність.

Злом сайту не завжди можна розпізнати за зовнішніми ознаками (мобільний редирект, спам-посилання на сторінках, чужі банери, дефейс та ін.). При компрометації сайту цих зовнішніх ознак може бути. Ресурс може працювати у штатному режимі, без перебоїв, помилок та потрапляння до «чорних» списків антивірусів. Але це зовсім не означає, що сайт у безпеці. Проблема в тому, що помітити факт злому і завантаження скриптів хакерів без проведення аудиту безпеки - складно, а самі веб-шелли, бекдори та інші інструменти хакера можуть досить довго знаходитися на хостингу і не використовуватися за призначенням. Але одного разу настає момент, і вони починають суворо експлуатуватись зловмисником, внаслідок чого у власника сайту виникають проблеми. За спам, розміщення фішингових сторінок сайт блокують на хостингу (або відключають частину функціоналу), а поява редиректів або вірусів на сторінках загрожує баном з боку антивірусів та санкціями з боку пошукових систем. У такому разі необхідно терміново «лікувати» сайт, а потім ставити захист від злому, щоб сюжет не повторювався. Найчастіше штатні антивіруси не впізнають деякі види троянів і веб-шеллов, причиною цього може бути невчасне оновлення або застаріле програмне забезпечення. Під час перевірки веб-ресурсу на віруси та скрипти слід користуватися антивірусними програмамирізної спеціалізації, у разі не знайдений однієї антивірусної програмою троян може бути виявлений інший. На малюнку 1 наведено приклад звіту перевірки антивірусного програмного забезпечення, тут важливо відзначити той факт, що інші антивірусні програми не змогли виявити зловмисне програмне забезпечення.

Такі троянські програми, як PHP/Phishing.Agent.B, Linux/Roopre.E.Gen, PHP/Kryptik.AE, використовуються зловмисниками для дистанційного керуваннякомп'ютер. Такі програми часто проникають на веб-сайт через електронну пошту, безкоштовне програмне забезпечення, інші веб-сайти або чат-кімнати. Велику частину часу така програма виступає як корисний файл. Проте це шкідлива троянська програма, яка збирає особисту інформацію користувачів і передає її зловмисникам. Крім того, вона може автоматично підключатися до певних веб-сайтів та завантажувати інші види шкідливого програмного забезпечення в систему. Щоб уникнути виявлення та видалення, Linux/Roopre.E.Gen може вимкнути засоби безпеки. Ця троянська програма розроблена із застосуванням технології руткіт, яка дозволяє їй ховатися всередині системи.

  • "PHP/WebShell.NCL" є троянською програмою, яка може виконувати різні функції, наприклад видалення системних файлів, завантаження шкідливих програм, приховувати існуючі компоненти або завантажену особисту інформацію та інші дані. Ця програма може обійти загальну антивірусну перевірку та проникнути до системи без відома користувача. Ця програмаздатна встановити бекдор для віддалених користувачів, щоб взяти контроль над зараженим веб-сайтом За допомогою цієї програми зловмисник може шпигувати за користувачем, керувати файлами, встановлювати додаткове програмне забезпечення та контролювати всю систему.
  • JS/TrojanDownloader.FakejQuery. A» - троянська програма, основною метою атак якої є сайти, розроблені з використанням CMS WordPress і Joomla. Коли зловмисник зламує веб-сайт, він запускає скрипт, який імітує інсталяцію плагінів WordPress або Joomla, а потім впроваджує шкідливий JavaScript-код у файл header.php.
  • "PHP/small.NBK" - є шкідливим додатком, який дозволяє хакерам отримати віддалений доступдо комп'ютерної системи, дозволяючи їм змінювати файли, красти особисту інформацію та встановлювати більш шкідливе програмне забезпечення. Ці види загроз, які називаються Троянський кінь, зазвичай завантажуються зловмисником або завантаження здійснюється іншою програмою. Вони можуть також з'являтися через встановлення заражених програм або онлайн-ігор, а також при переході на заражені сайти.

На жаль, хакерські скрипти за зовнішніми ознаками чи зовнішніми сканерами не виявляються. Тому ні антивіруси пошукових систем, ні антивірусне програмне забезпечення, встановлене на веб-майстрі на комп'ютері, не повідомить про проблеми безпеки сайту. Якщо скрипти розміщені десь у системних каталогахсайту (не в кореневому і не в images) або інжектовані в існуючі скрипти, Випадково помітити їх також не вдасться.

Рисунок 1. Приклад звіту перевірки антивірусного ПЗ

Тому необхідними заходами для захисту веб-ресурсів можуть бути такі рекомендації:

  1. Регулярне резервне копіюваннявсього вмісту файлової системи, баз даних та журналів подій (лог-файлів)
  2. Регулярне оновлення системи керування контентом до останньої стабільної версії CMS.
  3. Використання складних паролів. Вимоги до паролю: пароль повинен містити не менше восьми символів, при створенні пароля повинні бути використані символи верхнього та нижнього регістру, а також спеціальні символи.
  4. Обов'язкове використання додатків або плагінів безпеки для запобігання атакам типу XSS-атака або SQL-ін'єкції.
  5. Використання та встановлення додатків (плагінів, шаблонів або розширень) повинні здійснюватися лише з перевірених джерел або офіційних веб-сайтів розробників.
  6. Сканування файлової системи не менше 1 разу на тиждень антивірусними програмами та з використанням актуальних сигнатур баз даних.
  7. Передбачити використання механізму «CAPTCHA» для захисту веб-сайту від злому методом перебору паролів під час авторизації та введення даних у будь-яку форму запитів (форма зворотного зв'язку, пошук та ін.).
  8. Обмежити можливість входу до адміністративної панелі керування веб-сайту після певної кількості невдалих спроб.
  9. Коректно настроїти політику безпеки веб-сайту через файл конфігурації веб-сервера з урахуванням таких параметрів, як:
  • обмежити кількість IP-адрес, що використовуються адміністратором для доступу до адміністративної панелі керування веб-сайтом з метою запобігання доступу до неї з сторонніх IP-адрес;
  • заборонити передачу будь-яких тегів будь-якими способами, крім оформлення тексту (наприклад, p b i u) для запобігання XSS-атакам.
  1. Переміщення файлів, що містять інформацію про доступ до бази даних, FTP-доступу і т.д., з директорій за промовчанням до інших з наступним перейменуванням даних файлів.

Навіть не зовсім досвідченому хакеру зламати сайт на Joomla досить просто, якщо ви не передбачили захисту. Але, на жаль, часто веб-майстри відкладають захист від злому сайту на потім, вважаючи це не першою потребою. На відновлення доступу до свого сайту піде значно більше часу та зусиль, ніж на вжиття заходів щодо його захисту. Безпека веб-ресурсу – завдання не тільки розробника та хостера, який зобов'язаний забезпечити максимальну захищеність серверів, а й адміністратора сайту.