Переклад owasp testing guide

Пропоную Вашій увазі цикл статей по найбільш повної методології тестування безпеки веб-додатків - OWASP Testing Guide.

Тестування: введення і завдання

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

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

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

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

Що таке тестування?
Тестування це перевірка відповідності веб-додатки всім вимогам безпеки.

Підхід при написанні цього посібника
Даний посібник є відкритим і спільним:

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

З метою даного підходу ми прагнемо створити Методологію тестування, яка буде:

  • послідовної;
  • відтворюється;
  • ретельної;
  • Під якісним контролем.

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

Що таке методологія тестування OWASP?

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

Модель тестування складається з наступних елементів:

  • Тестувальник - той хто проводить тестування;
  • Інструменти і методологія - ядро ​​даного проекту;
  • Додаток, який тестується методом чорного ящика.

В цілому тестування можна розділити на два етапи:

Під час пасивного етапу тестувальник намагається зрозуміти логіку програми і «грає» з ним. Можуть використовуватися інструменти для збору інформації. Наприклад, за допомогою HTTP проксі можна вивчити всі HTTP запити і відповіді. В кінці цього етапу тестувальник повинен розуміти всі крапки входу додатки (наприклад, HTTP заголовки, параметри і куки). У розділі «Збір інформації» пояснюється як потрібно проводити тестування під час пасивного етапу.

Наприклад, тестувальник може знайти що-небудь подібне:

Даний урл може свідчити про наявність форми аутентифікації, в якій запитується ім'я користувача і пароль.

Наступні параметри представляють собою дві точки входу в додатку:

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

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

Всі тести були розбиті на одинадцять підрозділів: