Головна / Блог / Пентест
Пентест

Що має бути у звіті з пентесту?

Що має бути у звіті з пентесту: резюме для керівництва, межі, методика, знахідки з доказами й кроками відтворення, CVSS, виправлення і ретест. Чекліст.

ПоділитисяLinkedInTelegram
Звіт: Що має бути у звіті з пентесту. Резюме; Межі; Докази; Критичність
Зміст статті
  1. Коротко
  2. Звіт за розділами: хто читає і що має бути
  3. Що має бути в кожній знахідці
  4. Приклад добре описаної знахідки
  5. Як оцінюють критичність
  6. Ознаки слабкого звіту
  7. Що робити зі звітом далі
  8. Чекліст: перевірте звіт перед прийманням
  9. FAQ
  10. Посилання

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

Нижче розбір звіту за розділами, таблиця «хто читає і що має бути», як оцінюють критичність, приклад однієї знахідки і ознаки звіту, за який не треба платити.

Коротко

  • Резюме для керівництва пояснює простими словами, що знайшли і чим це загрожує бізнесу. Без жаргону.
  • Межі, дати й обмеження показують, що саме перевіряли, а що ні. Без цього звіт не можна показати партнеру чи аудитору.
  • Кожна знахідка має назву, рівень критичності, опис, доказ, кроки відтворення, вплив і рекомендацію з виправлення.
  • Критичність зазвичай рахують за CVSS від FIRST і уточнюють з урахуванням вашого бізнесу.
  • Ретест підтверджує, що виправлення працюють. Його результат додають до звіту або видають окремим документом.
  • Експорт сканера з новою обкладинкою не є звітом з пентесту.

Звіт за розділами: хто читає і що має бути

Звіт читають різні люди: керівник вирішує, на що дати гроші й час, розробник виправляє, аудитор чи партнер перевіряє, що тест був. NIST прямо пише, що в звіту може бути кілька аудиторій і для них можуть знадобитися різні формати. [2] PTES ділить звіт на дві великі частини: резюме для керівництва і технічний звіт. [3] OWASP WSTG пропонує схожу структуру: вступ з межами й обмеженнями, резюме, знахідки і додатки. [4]

РозділХто читаєЩо має бутиТривожний знак, якщо цього немає
Резюме для керівництваВласник, CEO, CTOМета перевірки, головні знахідки мовою бізнесу, загальний стан, пріоритетні крокиКерівник не розуміє, що робити, і звіт лягає в шухляду
Межі, дати, обмеженняCTO, аудитор, партнерЯкі системи, адреси й ролі перевіряли, період робіт, що не перевіряли і чомуНеможливо довести, що саме перевірено
МетодикаCISO, аудиторПідхід і стандарти (OWASP WSTG, PTES, NIST SP 800-115), ручна і автоматична частинаНезрозуміло, чи це пентест, чи прогін сканера
Зведена таблиця знахідокCTO, керівник розробкиНомер, назва, рівень критичності кожної знахідкиВажко спланувати роботу і розподілити задачі
Деталі знахідокРозробники, адміністраториОпис, доказ, кроки відтворення, вплив, рекомендація, посиланняКоманда не може відтворити проблему і не вірить у неї
Пояснення оцінки ризикуCISO, аудиторЯк рахували критичність: CVSS, бізнес-контекстРівні виглядають довільними
ДодаткиТехнічна командаОчищений вивід інструментів, перелік виконаних перевірокНемає слідів, що перевірки взагалі проводили
Результат ретестуУсі, хто читав звітСтатус кожної знахідки після виправленьНевідомо, чи виправлення спрацювали

WSTG також радить додати до вступу застереження, що тест показує стан на конкретний момент і не гарантує повноти. [4] Це чесно: пентест обмежений межами і часом.

Що має бути в кожній знахідці

Знахідка є основною одиницею звіту. Розробник має відкрити її і без дзвінка тестувальнику зрозуміти, що зламано, як це перевірити і як виправити. WSTG перелічує такі поля: номер, назва, ймовірність або легкість використання, вплив, рівень ризику, опис, рекомендація і додаткові матеріали. [4]

На практиці добра знахідка містить:

  • номер і коротку назву, яка каже суть: «Покупець бачить чужі замовлення», а не «Проблема авторизації»;
  • рівень критичності і, якщо домовлялися, вектор CVSS;
  • де саме: адреса, параметр, роль користувача;
  • опис простими словами: що не так і чому це небезпечно;
  • доказ: запит і відповідь, знімок екрана, команда, з якої видно результат; чутливі дані замасковані;
  • кроки відтворення, за якими розробник повторить проблему сам;
  • вплив на бізнес: які дані, гроші чи процеси під загрозою;
  • рекомендацію: що саме змінити, а не загальне «оновіть систему»;
  • посилання: CWE, документацію, гайд з виправлення.

Приклад добре описаної знахідки

Приклад вигаданий, щоб показати формат.

ПолеЗміст
Номер і назваVT-03. Покупець бачить чужі замовлення (IDOR)
КритичністьВисока
ДеGET /orders/{id}, роль «покупець»
ОписСервер не перевіряє, чи належить замовлення користувачу, який його запитує. Достатньо змінити номер в адресі.
ДоказКористувач A відкриває /orders/1045 (своє замовлення), змінює адресу на /orders/1046 і отримує відповідь 200 з ім’ям, телефоном і адресою доставки користувача B. Знімок екрана і запит додано, персональні дані замасковано.
Кроки відтворення1. Увійти як тестовий покупець A. 2. Відкрити своє замовлення. 3. Змінити номер в адресі на сусідній. 4. Побачити чуже замовлення.
ВпливБудь-який зареєстрований покупець може по черзі вивантажити дані всіх клієнтів. Це витік персональних даних і питання до вас від регулятора.
РекомендаціяНа сервері перевіряти власника замовлення для кожного запиту. Не покладатися на те, що номер «важко вгадати». Додати автотест на доступ до чужого об’єкта.
ПосиланняCWE-639: Authorization Bypass Through User-Controlled Key
РетестВиправлено. Запит до чужого замовлення повертає 404.

Різницю між такою знахідкою і рядком зі сканера показано в статті пентест чи сканування вразливостей.

Як оцінюють критичність

Найпоширеніша система оцінки називається CVSS. Її розвиває організація FIRST. Остання версія, CVSS v4.0, вийшла в листопаді 2023 року. [1]

CVSS v4.0 має чотири групи метрик: [1]

  • Base: властивості самої вразливості, які не змінюються з часом і не залежать від середовища;
  • Threat: те, що змінюється з часом, наприклад чи є готовий експлойт;
  • Environmental: особливості вашого середовища, наприклад захисні заходи;
  • Supplemental: додатковий контекст, який не змінює саму оцінку.

Оцінка від 0 до 10 перекладається в рівні: 0.1–3.9 низький, 4.0–6.9 середній, 7.0–8.9 високий, 9.0–10.0 критичний. [1] Специфікація радить доповнювати базову оцінку метриками загроз і середовища. Сам по собі Base не описує ризик для вашої компанії. [1]

Тому в доброму звіті поруч з CVSS є бізнес-контекст. Одна й та сама вразливість у тестовому середовищі без даних і в платіжному модулі має різний пріоритет. Чесний підрядник пояснює, чому підняв або знизив рівень.

Альтернатива CVSS: OWASP Risk Rating Methodology. Ризик там рахують як поєднання ймовірності й впливу, кожне за шкалою від 0 до 9, з окремими факторами для технічного і бізнес-впливу. [5] Автори методики прямо пишуть, що бізнес-вплив важливіший. [5] Обидва підходи нормальні. Головне, щоб звіт пояснював, як саме рахували.

Ознаки слабкого звіту

  • Експорт сканера під новою назвою. Сотні рядків «можлива вразливість», однакові рекомендації, жодної ручної перевірки. Це сканування, а не пентест.
  • Немає доказів. Знахідка описана словами, але не видно запиту, відповіді чи знімка екрана. Команда не може переконатися, що проблема існує.
  • Немає кроків відтворення. Розробник не може повторити проблему, а потім і перевірити своє виправлення.
  • Усе «критичне». Коли все горить, команда не знає, з чого почати. Рівні мають відрізнятися і мати пояснення.
  • Немає меж. Невідомо, які системи перевіряли. Такий звіт не підтвердить нічого партнеру чи аудитору.
  • Немає рекомендацій або вони загальні. «Дотримуйтесь найкращих практик» не можна взяти в роботу.
  • Немає ретесту. Без повторної перевірки невідомо, чи виправлення спрацювали. NIST описує повторне тестування як спосіб підтвердити, що заходи з виправлення виконано. [2]

Що робити зі звітом далі

NIST радить, щоб звіт для внутрішнього використання містив методику, результати, аналіз і план дій з виправлення з конкретними кроками й строками. [2] Простіше кажучи:

  1. Розберіть звіт з підрядником на зустрічі, поки питання свіжі.
  2. Перетворіть знахідки на задачі з відповідальними і строками, починаючи з критичних і високих.
  3. Виправте, перевірте у себе, потім замовте ретест.

Як організувати цю роботу, описано в статті після пентесту: як закрити знахідки і пройти ретест. Якщо ви ще обираєте виконавця, попросіть знеособлений приклад звіту ще до договору. Що ще запитати, описано в статті як обрати компанію для пентесту.

У звіті Veiltrack є резюме для керівництва, таблиці знахідок за рівнем ризику, а для кожної знахідки категорія, CWE, оцінка CVSS 3.1 або 4.0 на вибір замовника, технічний опис, докази й знімки екрана, а також порядок виправлень. Детальніше на сторінці пентест.

Чекліст: перевірте звіт перед прийманням

Завантажити чекліст підготовки (PDF)PDF · A4

FAQ

Що має бути у звіті з пентесту обов’язково?

Резюме для керівництва, межі і дати, методика, зведена таблиця знахідок і деталі кожної знахідки: критичність, доказ, кроки відтворення, вплив і рекомендація. Після виправлень додають результат ретесту.

Чим звіт з пентесту відрізняється від звіту сканера?

Звіт сканера перелічує можливі проблеми без ручної перевірки. У звіті з пентесту кожна знахідка підтверджена людиною, має доказ, кроки відтворення і пояснення, що це означає саме для вас.

Чи обов’язково використовувати CVSS?

Ні. CVSS найпоширеніший, але можна використовувати й OWASP Risk Rating Methodology чи власну шкалу. Важливо, щоб звіт пояснював, як рахували рівні, і враховував ваш бізнес.

Хто має читати звіт у компанії?

Резюме читає керівництво, щоб ухвалити рішення про ресурси. Деталі знахідок читають розробники й адміністратори, які виправляють. Межі і методику перевіряє аудитор або партнер.

Чи можна показати звіт клієнту чи партнеру?

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

Посилання

  1. FIRST: CVSS v4.0 Specification Document first.org
  2. NIST SP 800-115: Technical Guide to Information Security Testing and Assessment nvlpubs.nist.gov
  3. PTES Technical Guidelines: Reporting pentest-standard.readthedocs.io
  4. OWASP WSTG: Reporting Structure wstg.owasp.org
  5. OWASP Risk Rating Methodology community.owasp.org
ПоділитисяLinkedInTelegram
Блог

Інші статті

Black box, grey box чи white box: який пентест обрати?

Чим відрізняються black box, grey box і white box пентест: що отримують тестувальники, що це імітує, сліпі зони. Таблиця, правило вибору і чекліст.

Як перевірити безпеку Google Workspace?

Шість перевірок Google Workspace за годину: 2SV, супер-адміністратори, сторонні застосунки, доступ до Drive, пересилання пошти, журнали. Де клікати.

Як часто робити пентест?

Як часто робити пентест: щонайменше раз на рік і після суттєвих змін. Таблиця подій, що кажуть PCI DSS, DORA і NIST, сканування між тестами, чекліст.