Що таке тестування безпеки? приклад
⚡ Розумний підсумок
Тестування безпеки – це дисципліна тестування програмного забезпечення, яка виявляє вразливості, загрози та ризики в додатку, перш ніж це зроблять зловмисники. У цій статті розглядаються сім основних типів, модель інтеграції SDLC, загальні методології, ключові ролі та найкращі інструменти.

Що таке тестування безпеки?
Тестування безпеки є одним з видів тестування програмного забезпечення який виявляє вразливості, загрози та ризики в застосунку та запобігає зловмисним атакам зловмисників. Мета тестів безпеки полягає у виявленні кожної лазівки та слабкості в системі, які можуть призвести до втрати інформації, доходу чи репутації від рук інсайдерів або сторонніх осіб.
Чому важливе тестування безпеки?
Головна мета тестування безпеки — виявити загрози в системі та виміряти їхній потенційний вплив, щоб їх можна було пом’якшити, а система продовжувала безпечно функціонувати. Тести безпеки виявляють усі можливі ризики та надають розробникам корисну інформацію для виправлення проблем у коді перед розгортанням.
Типи тестування безпеки в тестуванні програмного забезпечення
Згідно з Посібником з методології тестування безпеки з відкритим кодом (OSSTMM), існує сім основних типів тестування безпеки.
- Сканування вразливості: Автоматизоване програмне забезпечення сканує систему на наявність відомих сигнатур вразливостей.
- Сканування безпеки: Виявляє слабкі місця мережі та системи та рекомендує виправлення. Може виконуватися вручну, автоматизовано або одночасно.
- Випробування на проникнення: Моделює зловмисну атаку для виявлення вразливостей, які може використати зовнішній зловмисник.
- Оцінка ризику: Аналізує ризики безпеки, що спостерігаються в організації, та класифікує їх як низькі, середні або високі, рекомендуючи заходи контролю.
- Аудит безпеки: Внутрішня перевірка заявок та операційні системи на наявність недоліків безпеки. Може включати порядкову перевірку коду.
- Етичний хакінг: Санкціонований злом програмного забезпечення організації з метою виявлення недоліків безпеки — протилежний намір зловмисних хакерів.
- Оцінка постави: Поєднує сканування безпеки, етичний злодійта оцінку ризиків, щоб показати загальний стан безпеки організації.
Як провести тестування безпеки
Загальновизнано, що вартість виправлення дефекту безпеки різко зростає, чим пізніше його виявляють. Відкладення тестування безпеки до розгортання набагато дорожче, ніж вбудовування його в SDLC з самого початку.
У таблиці нижче зіставлено заходи безпеки з кожною фазою SDLC.
| Фаза SDLC | Процеси безпеки |
|---|---|
| Вимога | Аналіз безпеки вимог та розгляд випадків зловживань/неправильного використання. |
| Дизайн | Аналіз ризиків безпеки для проєкту. Розробка план тесту що включає тести безпеки. |
| Кодування та модульне тестування | Статичне та динамічне тестування плюс безпека тестування білої скриньки. |
| Інтеграційне тестування | Тестування чорної скриньки. |
| Тестування системи | Тестування чорної скриньки та сканування вразливостей. |
| Реалізація | Тест на проникнення та сканування вразливостей. |
| Підтримка | Аналіз впливу патчів. |
План тестування безпеки повинен включати:
- Тестові випадки та сценарії, пов'язані з безпекою.
- Тестові дані, призначені для тестування безпеки.
- Інструменти тестування, необхідні для кожної дії безпеки.
- Аналіз результатів роботи різних інструментів безпеки.
Приклади тестових сценаріїв для перевірки безпеки
Наведений нижче список пропонує короткий огляд типових випадків тестування безпеки.
- Паролі зберігаються в зашифрованому вигляді, ніколи не у вигляді простого тексту.
- Програма або система блокує недійсних користувачів.
- Файли cookie та час очікування сеансу перевіряються для кожного робочого процесу.
- Для фінансових сайтів кнопка «Назад» у браузері не повинна відкривати захищені сторінки після виходу з системи.
Методології та методи тестування безпеки
Тестування безпеки проводиться за кількома встановленими методологіями.
- Тигр Box: Тестування проводилося з ноутбука, на якому було встановлено кілька операційних систем та інструментів для злому. Використовується тестерами на проникнення для оцінки вразливостей та проведення атак.
- Black Box: Тестувальник не має внутрішніх знань про топологію мережі чи технологічний стек і досліджує систему так, як це зробив би сторонній спостерігач.
- сірий Box: Тестер отримує часткову інформацію про систему. Цей гібрид методів «білої скриньки» та «чорної скриньки» відображає реалістичну модель загрози, де деякі деталі просочилися.
Ролі тестування безпеки
- Хакер: Загальний термін для позначення особи, яка отримує доступ до комп’ютерної системи або мережі — сьогодні зазвичай використовується для позначення хакерів-«чорних капелюхів», які роблять це без дозволу.
- Крекер: Зламує системи з метою крадіжки або знищення даних.
- Етичний хакер: Виконує ті ж дії, що й хакер, але з явного дозволу власника, helping зміцнити систему.
- Сценаристи-дітки / Пакетні мавпи: Недосвідчені зловмисники з обмеженими знаннями програмування, які покладаються на готові скрипти та інструменти.
Інструменти тестування безпеки
1) Teramind
Teramind надає комплексний пакет рішень для запобігання внутрішнім загрозам та моніторингу співробітників. Він підвищує безпеку завдяки аналітиці поведінки та запобіганню втратам даних, забезпечуючи відповідність вимогам та оптимізуючи бізнес-процеси. Його налаштовувана платформа відповідає різним потребам організації, надаючи практичну інформацію, спрямовану на підвищення продуктивності та захист цілісності даних.
Особливості гри:
- Запобігання внутрішнім загрозам: Виявляє та запобігає діям користувача, які можуть свідчити про внутрішні загрози даним.
- Оптимізація бізнес-процесів: Використовує аналітику поведінки на основі даних для вдосконалення операційних процесів.
- Продуктивність робочої сили: Контролює продуктивність, безпеку та відповідність вимогам.
- Керування дотриманням вимог: Забезпечує відповідність вимогам за допомогою одного масштабованого рішення, що підходить для малого бізнесу, великих підприємств та державних установ.
- Криміналістика інцидентів: Надає докази для покращення реагування на інциденти, розслідування та розвідки загроз.
- Запобігання втраті даних: Відстежує та захищає від втрати конфіденційних даних.
- Моніторинг співробітників: Tracрезультати та діяльність співробітників ks.
- Поведінкова аналітика: Аналізує детальні дані про поведінку користувачів у додатку для отримання корисної інформації.
- Налаштовувані параметри моніторингу: Дозволяє встановлювати правила моніторингу, щоб вони відповідали конкретним випадкам використання.
- Інформаційна панель: Забезпечує прозорість та практичну аналітику завдяки комплексній інформаційній панелі.
2) ОВАСП
Команда Open Web Application Security Project (OWASP) – це всесвітня некомерційна організація, що займається покращенням безпеки програмного забезпечення. Проєкт пропонує кілька інструментів для пен-тестування різних програмних середовищ та протоколів. Флагманські інструменти включають:
- Zed Attack Proxy (ZAP) — інтегрований інструмент для тестування на проникнення.
- Перевірка залежностей OWASP — сканує залежності проекту на наявність відомих вразливостей.
- Проект середовища веб-тестування OWASP — кураторська колекція інструментів та документації безпеки.
3) Wireshark
Wireshark — це інструмент мережевого аналізу, раніше відомий як Ethereal. Він фіксує пакети в режимі реального часу та відображає їх у форматі, зрозумілому для людини. Wireshark має відкритий вихідний код і працює на Linux, Windows, macOS, Solaris, NetBSD, FreeBSD та багато інших систем. Дані можна переглядати в графічному інтерфейсі або за допомогою утиліти командного рядка TShark.
4) w3af
w3af — це фреймворк для атак та аудиту веб-застосунків. Він має три категорії плагінів — виявлення, аудит та атака — які взаємодіють один з одним. Плагін виявлення шукає URLдля тестування, пересилає їх до плагіна аудиту, який сканує на наявність вразливостей, а потім плагін атаки намагається здійснити їх експлуатацію.
Міфи та факти тестування безпеки
Кілька стійких міфів уповільнюють програми безпеки. У наведеному нижче списку кожен міф поєднується з основним фактом.
Міф #1: Малому бізнесу не потрібна політика безпеки.
Факт: Кожній людині та кожній компанії потрібна політика безпеки.
Міф #2: Тестування безпеки не пропонує окупності інвестицій.
Факт: Тестування безпеки виявляє області для покращення, які підвищують ефективність, зменшують час простою та забезпечують максимальну пропускну здатність.
Міф #3: Єдиний спосіб забезпечити безпеку – це відключити систему від мережі.
Факт: Практична безпека випливає з оцінки стану, що відповідає бізнес-, правовим та галузевим вимогам, а не з відключення мережі.
Міф #4: Купівля додаткового програмного або апаратного забезпечення захистить бізнес.
Факт: Інструменти не замінюють стратегії. Спочатку зрозумійте ландшафт загроз, а потім оберіть відповідні засоби контролю.




