Современные
информационные технологи/Информационная безопасность
Дубчак
О. В., Грушенкова А.А.
Національний
авіаційний університет, Україна
ЗАХИСТ
ДАНИХ У WEB – ДОДАТКАХ ВІД XSS
ТА CSRF АТАК
Вступ. Бурхливий розвиток мережі Інтернет, без якої важко уявити ведення
бізнесу, здійснення комерційних операцій, надання різних інформаційних послуг
тощо, призводить до загострення проблеми інформаційної безпеки Web-ресурсів.
Актуальність. Важливим чинником
інформаційної безпеки стає протидія свідомому поширенню конфіденційної
інформації, яке завдає безпосередньої шкоди фізичним та юридичним особам у
сфері забезпечення їх конституційних прав.
Постановка завдання. За
даними переліку TOP-10 міжнародної організації OWASP (Open Web Application
Security Project), що займається вивченням можливих вразливостей та потенційних
атак на Web-додатки, одними з найнебезпечніших зловмисних
дій визнаються міжсайтове виконання сценаріїв XSS (Сross
Site Sсriрting) та міжсайтова підробка запитів CSRF (Сross Site Request Forgery) [1]. Існування таких вразливостей, як XSS
та CSRF, є одним з прикладів і елементів, що
складають загальну глобальну проблему забезпечення інформаційної безпеки у Web-сфері.
Викладення матеріалу. Більшість сучасних атак, що
загрожують Web-додаткам, реалізуються за допомогою використанням
існуючих вразливостей, пов’язаних з невірною обробкою даних, одержуваних
ззовні, або їх недостатньою перевіркою. Найвідомішими серед атак є XSS та CSRF, які можуть призвести до
перенаправлення користувача на «інфікований» ресурс,
впровадження в Web-ресурс шкідливого коду,
крадіжки Cookie-файлів, сесії тощо [4].
Для захисту даних користувачів
від подібних атак у Web-додатках ефективними вважаються такі методи, як видалення
небезпечних символів, використання протоколу HTTPS, використання токенів [5].
Видалення небезпечних
символів. Універсальний спосіб запобігання атакам полягає у
видаленні небезпечних символів з усіх даних сумнівного походження перед їх
використанням для динамічного створення вмісту документа. Рішенням проблеми є
виключення можливості програмного виконання в браузері «інфікованого» коду, що уводиться
користувачем, зберігається і згодом передається іншим користувачам Web-додатку. Отже, необхідно нейтралізувати у вхідних
даних всі місця, які явно або імовірно включають в себе скрипт, тобто: контейнери <script > . . . </script>; символи «<» «>» «=» «’» «”»; псевдопротоколи javascript.
HTTPS Only. Безпечний протокол передачі
гіпертексту HTTPS (HyperText Transfer Protocol Secure) - це розширення протоколу HTTP, що підтримує шифрування за
допомогою криптографічних протоколів SSL і TLS. Відмінність HTTPS від HTTP: HTTPS не є окремим
протоколом передачі даних, а являє собою
розширення протоколу HTTP з надбудовою шифрування; передані протоколом
HTTP дані не захищені, а HTTPS забезпечує конфіденційність інформації шляхом її
шифрування; HTTP використовує порт 80, HTTPS - порт 443. Для використання HTTPS
на Web-сервері, що обробляє запити від користувачів, має
встановлюватися спеціальний SSL-сертифікат [3]. Відбувається шифрування як даних, отриманих
клієнтом, так і даних, відправлених на сервер. Переваги протоколу HTTPS - сертифікат
SSL гарантує отримання браузером даних
з легального домену та відправлення конфіденційних даних у визначене місце. У
браузері можна ознайомитися з інформацією про сертифікат і компанію, яка його
видала. Безпечне HTTPS з'єднання
робить атаки виду XSS та CSRF дуже
складними або неможливими.
Використання
токенів. Ефективним методом
захисту сайтів є деякий «секретний ключ», який представляє собою спеціальне
значення, що генерується випадковим чином і зберігається в сесії відвідувача. Згодом на основі ключа генерується
«токен», який створюється таким чином, щоб він не тільки відрізнявся від ключа (адже може існувати багато токенів
для одного секретного ключа), але і з умовою можливості перевірити чи токен згенерований
на основі вищезазначеного ключа, чи ні. Зміст
даного методу полягає у додаванні спеціального параметру, в якому міститься
токен, до кожного вхідного параметру. В такому випадку, при отриманні запиту
сервер має перевіряти наявність даного токена у вхідних даних. Кожний
користувач повинен отримувати унікальний токен. Найкращим рішенням є
генерування унікального точена для кожної операції.
Новий токен щоразу має генеруватися при кожному вхідному запиті і
встановлюватись в Сookies
користувача, а також додаватись в параметри форм і посилань у Web-додатку, і, на останок, порівнюватись з токеном,
вказаним в параметрах форми при отриманні кожного нового запиту [2].
Висновки. Проблема
забезпечення захисту даних у сфері Web-ресурсів
від несанкціонованого доступу, копіювання, модифікації і знищення вимагає для
свого вирішення специфічних засобів і методів захисту. Реалізація атак типу XSS та CSRF,
які становлять загрозу для конфіденційних даних клієнтів та відвідувачів сайту,
може спричинити часткове або повне порушення працездатності Web-додатків, зробивши їх недоступним для
користувачів. Одними з найефективніших засобів протидії атакам є видалення небезпечних
символів, використання протоколу HTTPS та застосування спеціальних токенів.
Література:
1. OWASP TOP-10. URL: https://geekbrains.ru/posts/OWASP
2. HTTP & HTTPS. URL: https://hostiq.com.ua
3. Дубчак О.В. Протокол SSL як засіб захисту Web – сервера/ О.В.Дубчак, В.В.Крамарчук// Vedecky pokrok na prelomu tysyachalety-2013:ІХ Mezinarodni vedecko-prakticka conference,27.05.2013–05.06.2013.: тези доп. –Praha, 2013.- Dil. 22.- С. 67-69.
4. Защита Web – приложений. URL: http://ruseller.com/lessons.php?id=1644&rub=37
5. Семенов А.Н. Методы защиты от XSS-атак и SQL-инъекций.URL: http://bourabai.ru/php/secure-php.htm