Науково-педагогічні працівники кафедри “Управління інформаційною та кібернетичною безпекою” (УІКБ) продовжують навчання студентів у дистанційному форматі.
Однією із тем, яка вивчається студентами другого курсу спеціальності 125 Кібербезпека, є пошук та аналіз вразливостей ВЕБ-додатків, що на сьогодні є найактуальнішим питанням кібербезпеки.
З метою здобуття студентами не тільки теоретичних знань, але і практичних умінь та навичок пошукy та аналізу вразливостей ВЕБ додатків, працівники кафедри «розгорнули» в мережі Інтернет, та надали доступ студентам до спеціального ВЕБ-додатку Juice Shop (by OWASP).
Це, мабуть, найсучасніший і найскладніший «небезпечний» ВЕБ-додаток. Його можна використовувати в тренінгах з безпеки, демонстрації поінформованості, та CTF. Juice Shop охоплює вразливості з усієї першої десятки OWASP, а також безліч інших вад (проблем) безпеки, виявлених у реальних програмах, серед яких:
- Injection SQL (SQLi, noSQLi, command injection etc.).
- Broken Authentication.
- Sensitive Data Exposure.
- XML External Entities (XXE).
- Broken Access Control.
- Security Misconfiguration.
- Cross-Site Scripting XSS.
- Insecure Deserialization.
- Using Components with Known Vulnerabilities.
- Insufficient Logging & Monitoring.
Успішний пошук вразливості та її експлуатація дозволяє отримати «ключ» який підтвердить успішність студента у виконанні окремого завдання.
Juice Shop – одна із найпопулярніших лабораторій для тренування навичок тестування захищеності ВЕБ-додатків і тепер вона доступна для студентів Державного університету телекомунікацій онлайн.
Пройшовши теоретичний курс, студент може застосувати набуті знання на практиці – безпечно для учасників мережі інтернет та для себе.
Довідка
WEB-додаток — це клієнт-серверний додаток, де в якості клієнта виступає браузер, який відображає користувацький інтерфейс, формує запити до сервера і опрацьовує відповіді від нього. А серверна частина являє собою WEB-сервер, обробник запитів клієнтів. Взаємодія між клієнтом і сервером, як правило, реалізовується за допомогою протокола HTTP.
OWASP (Open Web Application Security Project) - це некомерційна організація, метою якої є підвищення обізнаності всіх фахівців галузі інформаційної безпеки в питаннях розробки, експлуатації та захисту веб-додатків. OWASP Top 10 є одним з найбільш відомих проектів організації. OWASP Top 10 - це рейтинг з десяти найбільш небезпечних ризиків інформаційної безпеки для веб-додатків, складений спільнотою експертів галузі:
- SQL Injections (ін'єкція - впровадження коду) — один з поширених способів злому сайтів та програм, що працюють з базами даних, заснований на впровадженні в запит довільного SQL-коду. Атаки SQL-ін'єкцією дозволяють зловмисникам нанести вразливість -підробляти ідентифікаційні дані, підробляти існуючі дані, викликати проблеми з відмовою, такі як анулювання транзакцій або зміна балансу, вирішувати повне розкриття всіх даних в системі, знищувати дані або робити їх недоступними з інших причин і ставати адміністраторами сервер бази даних.
- Broken Authentication (Недоліки системи аутентифікації - некоректна аутентифікація) – вразливість, яка досягається атаками: Brute-Force, Session Hijacking, Rainbow Tables. В результаті таких атак отримується доступ до облікового запису за допомогою звичайного підбору даних грубою силою, використовуючи мільйони можливих комбінацій, автоматичними інструментами і словниками.
- Sensitive Data Exposure (Незахищеність критичних даних, протоколів - витік чутливих даних). Багато веб-додатків не захищають конфіденційні дані, такі як кредитні карти і облікові дані для аутентифікації (передача персональних даних і даних кредитных карт по протоколу HTTP замість HTTPS; відсутність шифрування критичних даних, таких як паролі або номери кредитних карт).
- XML External Entities (XXE) - Впровадження зовнішніх сутностей XML - вид ін'єкції, заснований на впровадженні в XML-запит до сервера атрибутів і сутностей, що дозволяють отримати неавторизований доступ до даних. Наприклад, коли в XML запит вказують зовнішній файл, який знаходиться на сервері.
- Broken Access Control (Порушення контролю доступу) – вразливість в методах авторизації, яка дозволяє порушнику отримати підвищені привілеї у додаткові. Один конкретний тип проблеми контролю доступу - це адміністративні інтерфейси, які дозволяють адміністраторам сайтів керувати сайтом через Інтернет. Такі функції часто використовуються, щоб дозволити адміністраторам сайтів ефективно керувати користувачами, даними та вмістом на своєму сайті.
- Security Misconfiguration (Небезпечна конфігурація) - некоректне налаштування параметрів безпеки. Безпека Web-додатку вимагає наявності безпечної конфігурації всіх компонентів інфраструктури: компонентів програми (таких як фреймворки - frameworks), веб-сервера, сервера баз даних і самої платформи. Програмне забезпечення повинно бути в актуальному стані: уразливості знаходять кожен день в самих різних програмних компонентах - операційній системі, web-серверах, серверах баз даних, поштових серверах і т.д.
- Cross-Site Scripting XSS (Міжсайтовий скриптинг – XSS) - міжсайтове виконання сценаріїв - помилка валідації призначених для користувача даних, яка дозволяє передати JavaScript код на виконання в браузер користувача. Через JavaScript можна змінювати дані, розташовані на сторінці, наприклад, там можуть бути реквізити для банківського переказу. Атаки такого роду часто також називають HTML - ін'єкціями, адже механізм їх впровадження дуже схожий з SQL-ін'єкціями, але на відміну від останніх, впроваджуваний код виповнюється в браузері користувача.
- Insecure Deserialization (Відсутність валідації даних) - небезпечна десеріалізація - це вразливість, яка виникає, коли ненадійні дані використовуються для зловживання логікою додатка, для атаки типу «відмова в обслуговуванні» (DoS) або навіть для виконання довільного коду після його десеріалізації. Серіалізація відноситься до процесу перетворення об'єкта в формат, який можна зберегти на диску (наприклад, зберегти в файл або сховище даних), відправити через потоки (наприклад, stdout) або відправити по мережі. Десеріалізація перетворює серіалізовані дані, що надходять з файлу, потоку або мережевого сокета, в об'єкт. Веб-додатки використовують серіалізацію і десеріалізацію на регулярній основі, і більшість мов програмування навіть надають вбудовані функції для серіалізації даних.
- Using Components with Known Vulnerabilities (Використання компонентів з відомими уразливими). Необхідна увага на web-додатки, які написані з використанням спеціальних бібліотек або «фреймворків» (англ - framework) і поставляються сторонніми компаніями. Їх компоненти мають відкритий вихідний код, а це означає, що вони також використовуються мільйонами користувачів у всьому світі і можуть бути уразливі. Звичайно уразливості шукають (і знаходять) в більш низькорівневих компонентах системи, таких як сервер бази даних, web-сервер і компоненти операційної системи аж до її ядра. Тому важливо використовувати останні версії компонентів і стежити за відомими уразливими, які з'являються на сайтах типу securityfocus.com.
- Insufficient Logging & Monitoring (Недостатній облік та моніторинг - відсутність журналів та моніторингу). Недостатня реєстрація та моніторинг комп'ютерних систем, додатків і мереж надають безліч шлюзів для проб і порушень, які важко або неможливо ідентифікувати і усунути без життєздатного контрольного журналу. Типова лог-архітектура генерує як журнали безпеки, так і оперативні журнали, аналізує, зберігає і контролює ці журнали. Це важливо не тільки для боротьби з загрозами, що виникають через недостатню реєстрації та моніторингу, а й для відповідності нормативним вимогам.
*****