Забезпечення веб-безпеки є надзвичайно важливим питанням, і краще усвідомити це на ранніх етапах, ніж чекати негативних наслідків.
Швидкий технологічний прогрес, особливо у сфері веб-сервісів та додатків, спричинив значні зміни в сучасній підприємницькій діяльності. Значна кількість компаній перенесли більшість своїх процесів в онлайн-простір, що дає можливість співробітникам та партнерам з усього світу спільно працювати та обмінюватися інформацією в режимі реального часу.
З появою сучасних веб-технологій, таких як HTML5 та Web 2.0, запити користувачів зазнали трансформації. Наразі кожен прагне мати цілодобовий доступ до будь-якої необхідної інформації. Внаслідок цього, онлайн-підприємства змушені забезпечувати постійну доступність своїх даних.
Попри те, що період загальносвітового карантину виявився сприятливим для віддалених працівників та онлайн-магазинів, він також приніс значні переваги кіберзлочинцям.
Збільшення кількості онлайн-транзакцій та поширення віддаленої роботи створили для зловмисників можливості викрадати дані кредитних карток та націлюватися на віддалених працівників та їхні організації. Цей розвиток привернув увагу шахраїв та хакерів, які постійно розробляють нові види загроз.
Згідно зі звітом, приблизно 80% компаній цього року зіткнулися зі зростанням кібератак, а пандемія коронавірусу викликала збільшення загроз для банків на 238%.
Для зменшення впливу цих атак було розроблено концепцію безпеки веб-додатків. Ця сфера потребує кваліфікованих фахівців, здатних захистити організації від втрати даних, фінансових ресурсів та довіри клієнтів.
Ця стаття має на меті ознайомити вас з основами веб-безпеки, розповісти про вимоги до професіоналів цієї сфери та надати ресурси для навчання та вдосконалення навичок.
Тож, почнемо?
Що таке безпека веб-додатків?
Веб-безпека, або безпека веб-додатків, це комплекс заходів, спрямованих на захист онлайн-сервісів та веб-сайтів від різноманітних загроз, що використовують вразливості у програмному коді.
Серед поширених цілей таких атак є системи керування базами даних, такі як phpMyAdmin, SaaS-програми, системи управління контентом (CMS), зокрема WordPress та інші.
Веб-безпека має на меті запобігати таким атакам шляхом обмеження несанкціонованого доступу, використання, руйнування чи модифікації даних.
Чому ж зловмисники так часто націлюються саме на веб-додатки?
- Внутрішня складність вихідного коду програми підвищує ймовірність виникнення вразливостей та можливостей для маніпуляцій.
- Веб-додатки відносно легкі в експлуатації; отже, зловмисники можуть безперешкодно запускати або автоматизувати більшість атак, спрямованих на тисячі програм одночасно.
- Високий потенціал збитків, що включають витік конфіденційної та приватної інформації внаслідок маніпуляцій з вихідним кодом, а також значні фінансові втрати.
Поширені типи вразливостей
Міжсайтовий скриптинг (XSS)
XSS дозволяє зловмисникам впроваджувати скрипти на стороні клієнта на веб-сторінку, отримуючи прямий доступ до важливих даних, обманюючи користувачів з метою розкриття персональної інформації або видаючи себе за інших. Наслідки можуть включати доступ до облікових записів, активацію троянських програм, зміну вмісту сторінки та інше.
Міжсайтова підробка запитів (CSRF)
CSRF полягає в обмані користувача, змушуючи його робити запити, використовуючи їхню авторизацію чи автентифікацію. Таким чином, використовуючи привілеї облікового запису, зловмисники можуть створювати запити від імені користувача. Це може призвести до переказу коштів, зміни пароля та інших небажаних дій.
Відмова в обслуговуванні (DoS) та розподілена відмова в обслуговуванні (DDoS)
Зловмисники перевантажують цільовий сервер та/або його інфраструктуру великим потоком атак. Коли сервер не в змозі ефективно обробляти вхідні запити, його робота сповільнюється, і зрештою він відмовляє в обслуговуванні, навіть для легітимних відвідувачів.
SQL ін’єкція 💉
Це метод, який зловмисники використовують для експлуатації вразливостей у тому, як бази даних обробляють запити. За допомогою SQL ін’єкцій зловмисники отримують несанкціонований доступ до даних, створюють або змінюють дозволи користувачів, знищують або змінюють конфіденційну інформацію.
Віддалене включення файлів
Зловмисники використовують цей метод для впровадження шкідливих файлів з кодом на веб-сервер для виконання цих кодів з метою завдання шкоди додатку, маніпулювання ним та викрадення даних.
Інші
До інших видів атак належать пошкодження пам’яті, витоки даних, клікджекінг, обхід каталогу, впровадження команд, переповнення буфера та інше.
Сподіваюся, цієї інформації достатньо, щоб усвідомити, що забезпечення веб-безпеки є необхідністю сьогодення, і кожен повинен впроваджувати її якнайшвидше, щоб уникнути будь-яких загроз для програм та фінансових чи репутаційних збитків.
Через зростаючий попит багато людей виявляють інтерес до вивчення цієї сфери. Якщо ви також зацікавлені, це може бути чудовим вибором кар’єри та корисним на особистому рівні.
Що роблять фахівці з веб-безпеки?
Професіонали з веб-безпеки відповідають за захист веб-програм, відповідних мереж та даних. Вони допомагають зменшити наслідки порушень даних, контролюючи мережу та реагуючи на загрози.
Ці фахівці, як правило, мають досвід роботи мережевими або системними адміністраторами, а також програмістами. Ця галузь вимагає допитливості, критичного мислення, пристрасті до досліджень та постійного навчання. Вони повинні бути здатними перехитрити хакерів, які “деструктивно креативні” у розробці та впровадженні різних загроз.
Оскільки загрози безпеці можуть виникнути в будь-який час, фахівці з безпеки повинні бути в курсі всіх останніх тактик, які використовують хакери для проникнення в системи та мережі. Ось деякі обов’язки фахівців з веб-безпеки:
- Пошук вразливостей у веб-додатках, базах даних та шифруванні.
- Зменшення наслідків атак шляхом виправлення проблем безпеки.
- Періодичне проведення перевірок для забезпечення дотримання найкращих практик безпеки.
- Впровадження засобів запобігання та виявлення загроз для захисту від шкідливих атак.
- Впровадження систем для керування вразливостями у хмарних та локальних активах.
- Виконання відновлення після атак.
- Співпраця з іншими ІТ-підрозділами для планування аварійного відновлення.
- Співпраця з керівниками груп та відділом кадрів для навчання всіх працівників розпізнаванню підозрілих дій.
Деякі найкращі практики безпеки для захисту веб-додатків
Використання брандмауерів веб-додатків (WAF)
WAF допомагає захистити веб-додатки від шкідливих HTTP-запитів. Він створює бар’єр між зловмисником та вашим сервером. Він здатний захистити сьомий рівень моделі OSI від таких загроз, як XSS, CSRF, SQL-ін’єкції та інших.
Захист від DDoS-атак
Як випливає з назви, ця практика використовується для зменшення впливу DDoS-атак на додатки та мережевому рівні, забезпечуючи захист веб-сайтів, додатків та серверної інфраструктури.
Фільтрація ботів 🤖
Фільтрація ботів призначена для відсіювання шкідливого трафіку ботів.
Захист DNS
Захист DNS спрямований на запобігання викраденню запитів DNS через атаки “людина посередині” та отруєння кешу DNS.
Використання HTTPS
HTTPS-протокол шифрує всі дані, якими обмінюються сервер та клієнт, захищаючи облікові дані для входу, інформацію заголовків, файли cookie, дані запитів та інше.
Отже, якщо ви вирішили вивчати безпеку веб-додатків, ви можете звернутися до навчальних ресурсів, наведених нижче, та відточити свої навички 🧑💻.
PortSwigger
Навчайтесь у розробників Burp Suite, провідної платформи для різноманітних інструментів кібербезпеки, за допомогою PortSwigger. Це БЕЗКОШТОВНЕ онлайн-навчання, яке може допомогти у вашій кар’єрі в галузі кібербезпеки.
Завдяки інтерактивним лабораторіям ви можете навчатися в будь-який час та з будь-якого місця, а також відстежувати свій прогрес. Навчання охоплює вразливості бізнес-логіки, розкриття інформації, отруєння веб-кешу, незахищену десеріалізацію, SQL-ін’єкції, XSS, CSRF, XXE-ін’єкції та багато іншого.
Навчальні матеріали PortSwigger створені досвідченими професіоналами, дослідницькою групою та їхнім засновником, Дафідом Штутардом. Він також є автором відомої книги “Довідник хакера веб-додатків”.
Матеріали викладено у вигляді тексту та відео, що полегшує запам’ятовування ключових моментів. Інтерактивні лабораторії роблять навчання захоплюючим, пропонуючи реалістичні головоломки для перевірки ваших хакерських навичок.
EdX
Курс “Основи веб-безпеки” від EdX ідеальний для розуміння базових принципів. Він надає огляд типових атак та відповідних заходів протидії у теоретичному та практичному аспектах.
Крім того, курс навчить вас найкращим практикам безпеки, що використовуються для захисту веб-програм. Для участі в курсі не обов’язково мати попередні знання з безпеки, але розуміння основ HTTP, JavaScript, HTML тощо буде корисним.
Курс триває 5 тижнів і передбачає 4-6 годин навчання на тиждень. Навчання є абсолютно БЕЗКОШТОВНИМ, проте ви можете заплатити 48,97 доларів США, щоб отримати підтверджений сертифікат з підписом інструктора та логотипом закладу. Цей сертифікат може допомогти вам у пошуку роботи, ним можна поділитися у LinkedIn або додати до вашого резюме.
Стенфорд
Курс CS 253 Web Security від Стенфорда пропонує повний огляд веб-безпеки та має на меті забезпечити студентів розумінням типових веб-атак та методів їх запобігання. Курс охоплює не лише основи, але й передові навички веб-безпеки.
Курс охоплює такі теми:
- Принципи веб-безпеки
- Атаки та контрзаходи
- Вразливості веб-додатків
- Модель безпеки браузера
- Ін’єкції, DoS та TLS-атаки
- Відбитки пальців, конфіденційність, політика того самого джерела, автентифікація, міжсайтовий скриптинг, безпека JavaScript
- Глибинний захист
- Нові загрози
- Методи написання безпечного коду, експлойти безпеки
- Впровадження веб-стандартів, що розвиваються, та захист слабких веб-програм
Для участі в цьому курсі ви повинні мати досвід веб-розробки, еквівалентний курсу CS 142. Відвідування є обов’язковим, а оцінювання базується на:
- 75% за виконання завдань
- 25% за підсумковий іспит
Для кращої підготовки ви можете ознайомитися з розв’язанням підсумкового іспиту 2019 та іншими зразковими питаннями для CS 253.
Дружній для початківців
Безсумнівно, Udemy є одним з найкращих ресурсів для онлайн-навчання різноманітних курсів, включно з безпекою веб-додатків. Якщо ви новачок, цей курс чудово підійде вам, оскільки він не вимагає попередніх навичок кодування.
У цьому курсі ви дізнаєтеся:
- Визначення 10 основних загроз, визначених OWASP (Open Web Application Security Project)
- Як зменшити ці загрози
- Вплив кожної загрози на ваш бізнес
- Як зловмисники реалізують ці загрози
Курс викладається простою мовою, що робить його зрозумілим для всіх, хто має мінімальні знання про Інтернет та комп’ютери. Він також охоплює глибокий захист, пояснення спуфінгу, розкриття інформації, підробки, відмови, підвищення привілеїв та DoS.
Досвідчені викладачі навчать вас усього необхідного для освоєння основ веб-безпеки.
Coursera
Ще один чудовий варіант у списку – Coursera, який навчає використанню OWASP ZAP (Zed Attack Proxy). Цей інструмент допомагає фахівцям з безпеки та тестувальникам проникнення знаходити вразливості.
- Курс навчає, як шукати вразливості, аналізувати результати сканування, створювати звіти на їх основі та інше.
- Ви також навчитеся налаштовувати проксі-сервер браузера для пасивного сканування відповідей та запитів під час перегляду веб-сайтів.
- Надається коротке пояснення того, як переглядати, перехоплювати, перенаправляти та змінювати веб-запити, що надходять між веб-програмою та браузером.
- Крім того, ви навчитеся використовувати словники для пошуку папок та файлів на веб-сервері.
- Ви також зрозумієте, як сканувати сайти для пошуку URL-адрес та посилань.
Інструктори курсу поетапно викладають матеріал у відео у розділеному екрані, а оскільки він розміщений у хмарі, вам не потрібно витрачати час на завантаження. Coursera надає сертифікати про закінчення курсу без додаткової оплати.
PentesterLab
PentesterLab охоплює рівні від базового до просунутого. Тут ви навчитеся знаходити та використовувати вразливості вручну. Всі вправи охоплюють типові недоліки або проблеми, виявлені в різних системах.
Для покращення навчального процесу надаються реальні системи та реальні вразливості, що дає можливість навчатися в реальному часі, без емуляції. Онлайн-вправи дозволяють отримати сертифікат після завершення курсу. Усі вправи розділені на значки, які потрібно виконати, щоб отримати сертифікат.
YouTube
YouTube є джерелом знань; головне – правильно його використовувати!
Зверніть увагу на канал Google Chrome Developers із 505 тис. підписників, який може надати вам корисну інформацію.
У цих навчальних матеріалах ви зможете зрозуміти деякі типові вектори атак та методи захисту своїх даних, користувачів та репутації. Крім того, ви ознайомитеся з новим курсом, що пропонує короткі лекції та практичні вправи на теми, включно із захистом та атакою.
Mozilla
Зверніться до Веб-документів MDN від Mozilla та отримайте доступ до корисних статей про веб-безпеку. Тут ви знайдете статті, що охоплюють різноманітні теми, такі як безпека контенту, безпека з’єднання, безпека даних, витік інформації, цілісність даних, захист від клікджекінгу, безпека даних користувача та багато іншого.
Інформація з цих статей допоможе вам захистити свій веб-сайт та його код від крадіжки даних та атак. Ви можете дізнатися про те, як можна виправити свій сайт, заблокувавши змішаний контент, про алгоритми підписів та інше.
Invicti
Вичерпна стаття від Invicti здатна пояснити тонкощі безпеки веб-додатків. Вона написана таким чином, що навіть новачки зможуть зрозуміти терміни та технології, що використовуються в веб-безпеці.
У статті пояснюються міфи та основи безпеки веб-програм, а також розглядаються шляхи, за допомогою яких сучасні компанії можуть підвищити безпеку своїх веб-сайтів та програм, щоб захистити їх від кіберзлочинців.
Тут ви дізнаєтеся:
- Як захистити веб-програми
- Як вибрати правильний сканер вразливостей
- Яка різниця між безкоштовними та комерційними сканерами вразливостей
- Як перевірити сканер вразливостей та коли його використовувати
- Деякі найкращі методи захисту веб-сервера та інших компонентів
SANS
Пройдіть курс SEC22 від SANS, якщо ви зацікавлені у захисті веб-додатків. Він допоможе вам зрозуміти всі вразливості безпеки, пов’язані з вашим веб-додатком, щоб ви могли захистити свої веб-активи.
Курс познайомить вас з методами зменшення наслідків для архітектури, інфраструктури та кодування, а також з методами, що застосовуються у реальному світі. Ви ознайомитесь із природою вразливостей, щоб зрозуміти, чому вони виникають та як їх можна усунути.
Цей курс підходить для тих, хто відповідає за управління, впровадження чи захист веб-додатків, включаючи аналітиків безпеки, архітекторів, розробників, аудиторів, тестувальників на проникнення та інших фахівців.
Курс охоплює такі теми, як:
- 10 основних загроз OWASP
- Специфічні проблеми із ТОП-25 програмних помилок CWE
- Інтеграція хмари у веб-програму
- Конфігурація мови програми
- Конфігурація інфраструктури та управління безпекою
- Механізми автентифікації
- HTTP-заголовки
- Помилки в бізнес-логіці
- Помилки кодування, такі як XSS, CSRF, SQL-ін’єкції та інші
Якщо ви розумієте основи концепцій та технологій веб-додатків, зокрема JavaScript та HTML, ви можете пройти цей курс.
Cloudflare
Ознайомтеся зі статтею від Cloudflare, яка висвітлює питання веб-безпеки.
Зокрема, тут пояснюються:
- Значення термінології
- Деякі типові вразливості
- Найкращі практики для запобігання вразливостям веб-безпеки
Прочитайте цю статтю, щоб прояснити деякі основні поняття, які будуть корисними під час навчання з веб-безпеки.
Висновок
Вивчення безпеки веб-додатків стало надзвичайно важливим, оскільки кількість кібератак стрімко зростає.
Бажаємо вам успіхів!