+38 (067) 372 39 55

English site

Що пентестер перевіряє в перші 30 хвилин тестування на проникнення

Що пентестер перевіряє в перші 30 хвилин тестування на проникнення

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

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

Саме цей початковий етап часто визначає подальший сценарій тестування на проникнення (penetration testing).

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

Що відбувається на початку пентесту?

До початку активного тестування команда та замовник мають узгодити scope — межі тестування, Rules of Engagement (RoE), дозволені цілі, часові рамки та обмеження.

Після старту пентесту завдання спеціаліста — не просто якомога швидше знайти вразливість.

Спочатку потрібно відповісти на кілька питань:

  1. Які системи фактично доступні ззовні?
  2. Чи відповідає реальна поверхня атаки (attack surface) заявленій?
  3. Які технології та сервіси використовуються?
  4. Де можуть знаходитися потенційні точки входу?
  5. Чи є очевидні помилки конфігурації?
  6. Які системи можуть становити найбільший інтерес для атакувальника?

Відповіді допомагають сформувати перші гіпотези та визначити, куди рухатися далі.

Конкретні дії залежать від типу пентесту — тестування вебзастосунку, API, зовнішньої чи внутрішньої інфраструктури, хмарного середовища.

Але загальний принцип однаковий:

спочатку зрозуміти середовище — потім атакувати.

1. Перевірка scope та правил тестування

Перше, що має перевірити професійний пентестер, — навіть не технічне.

Це межі дозволеного тестування.

Перед початком роботи фахівець уточнює, які активи входять до scope:

  • IP-адреси та діапазони мереж;
  • домени та субдомени;
  • вебзастосунки;
  • API;
  • хмарні середовища;
  • внутрішні сегменти мережі;
  • тестові облікові записи та ролі;
  • системи, які не можна тестувати.

Окремо визначаються обмеження.

Наприклад, DoS-тестування, соціальна інженерія, потенційно деструктивні техніки або певні дії в production-середовищі можуть бути заборонені.

Це принципова відмінність професійного пентесту від реальної кібератаки: тестувальник працює лише в узгоджених межах та контролює потенційний вплив своїх дій на бізнес.

2. Аналіз зовнішньої поверхні атаки

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

Пентестер починає формувати карту зовнішньої інфраструктури компанії.

Він може перевіряти:

  • публічні IP-адреси;
  • домени та субдомени;
  • доступні з Інтернету застосунки;
  • VPN-шлюзи;
  • поштову інфраструктуру;
  • віддалені сервіси;
  • адміністративні панелі;
  • хмарні ресурси;
  • тестові та staging-середовища.

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

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

Чому attack surface має таке значення?

Атакувальнику не обов'язково атакувати найважливішу систему напряму.

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

Саме тому під час пентесту важливо бачити не лише окремі активи, а й можливі зв'язки між ними.

3. Визначення технологій та доступних сервісів

Коли основні активи визначені, пентестер намагається зрозуміти, що саме працює за ними.

Цей процес часто називають technology fingerprinting та service enumeration.

Залежно від об'єкта тестування спеціаліст може визначати:

  • операційні системи;
  • вебсервери;
  • фреймворки;
  • CMS;
  • бази даних;
  • мережеві сервіси;
  • механізми автентифікації;
  • API-технології;
  • сторонні компоненти;
  • версії програмного забезпечення.

Ця інформація допомагає визначити, що потрібно перевірити детальніше.

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

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

4. Пошук відкритих сервісів і зайвого доступу

Відкритий порт або доступний сервіс не обов'язково є вразливістю.

Але кожен зайвий сервіс збільшує потенційну поверхню атаки.

Під час початкової перевірки пентестер може виявити:

  • SSH;
  • RDP;
  • FTP;
  • SMB;
  • доступні ззовні бази даних;
  • VPN;
  • адміністративні інтерфейси;
  • системи моніторингу;
  • інструменти розробки.

Головне питання тут не: «Чи повинен цей сервіс взагалі бути доступним звідси?»

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

Тому пентест перевіряє не лише відомі CVE, а й рішення щодо архітектури та конфігурації систем.

5. Аналіз точок автентифікації

Системи автентифікації — один із найбільш цікавих напрямків для потенційного атакувальника.

Компрометація облікового запису може одразу відкрити доступ до застосунку, інфраструктури або конфіденційної інформації.

На початковому етапі пентестер визначає:

  • сторінки входу;
  • адміністративні портали;
  • VPN-автентифікацію;
  • Single Sign-On (SSO);
  • API authentication;
  • механізми відновлення пароля;
  • MFA;
  • OAuth та інші federated identity механізми.

Завдання на цьому етапі — насамперед зрозуміти, як побудована система ідентифікації та доступу.

Потенційними сигналами для подальшого тестування можуть бути:

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

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

6. Пошук очевидних помилок конфігурації

Для виявлення деяких проблем не потрібна складна експлуатація.

Частину потенційних слабких місць можна помітити вже під час первинного аналізу.

Наприклад:

  • відкритий directory listing;
  • надмірно детальні повідомлення про помилки;
  • стандартні сторінки сервісів;
  • непотрібні відкриті сервіси;
  • публічно доступні адміністративні інтерфейси;
  • неправильні HTTP security headers;
  • слабкі TLS-конфігурації;
  • доступні backup- або configuration-файли;
  • відкриті тестові середовища;
  • некоректні права доступу до хмарних ресурсів.

Окремо така проблема може мати невисокий рівень ризику.

Але пентестер дивиться не лише на окремі вразливості, він шукає ланцюжки атак (attack chains).

Наприклад, витік технічної інформації допомагає визначити компонент та його версію. У компоненті знаходиться вразливість. Її експлуатація дає початковий доступ. А вже отриманий доступ дозволяє знайти credentials для іншої системи.

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

7. Розуміння логіки вебзастосунку

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

Пентестер аналізує:

  • основні функції;
  • ролі користувачів;
  • процес автентифікації;
  • API endpoints;
  • форми введення даних;
  • завантаження файлів;
  • керування акаунтом;
  • інтеграції;
  • адміністративні функції;
  • критичні бізнес-процеси.

Це важливо, оскільки серйозні вразливості не завжди пов'язані із застарілим програмним забезпеченням.

Проблема може знаходитися в бізнес-логіці застосунку.

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

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

8. Визначення найбільш цінних цілей

Не всі активи мають однакове значення.

Під час первинного аналізу пентестер намагається зрозуміти, які системи були б найбільш цінними для реального атакувальника.

Це можуть бути:

  • системи керування ідентифікацією;
  • адміністративні портали;
  • хмарні консолі;
  • бази даних клієнтів;
  • фінансові системи;
  • репозиторії коду;
  • CI/CD-середовища;
  • VPN;
  • системи з конфіденційними даними;
  • привілейовані облікові записи.

Це не означає, що тестувальник одразу намагатиметься атакувати найбільш критичний актив.

Натомість він починає шукати можливі шляхи до нього.

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

«Які вразливості у нас є?» а й «До чого реально може дістатися атакувальник, якщо скористається однією з них?»

9. Пошук витоків інформації

На перший погляд незначна технічна інформація може суттєво допомогти під час атаки.

Тому пентестери звертають увагу на:

  • внутрішні hostname;
  • версії програмного забезпечення;
  • формати корпоративних email-адрес;
  • документацію API;
  • debug-інформацію;
  • stack traces;
  • внутрішні IP-адреси;
  • ідентифікатори хмарних ресурсів;
  • шляхи застосунків;
  • метадані;
  • випадково опубліковану конфігураційну інформацію.

Окремий витік може не створювати серйозного ризику.

Але в поєднанні з іншою інформацією він може значно спростити подальшу атаку.

Саме тому розвідка та збір контексту (reconnaissance) є важливою частиною професійного тестування на проникнення.

10. Формування перших гіпотез атаки

До кінця початкового етапу досвідчений пентестер уже не просто має список активів.

Він починає формувати гіпотези.

Наприклад:

Основний застосунок використовує SSO, але старий адміністративний інтерфейс має окремий механізм входу. Чи можуть там діяти слабші security controls?

Або:

Staging-середовище доступне з Інтернету та використовує схожу з production архітектуру. Чи може воно розкрити конфігурацію, credentials або іншу інформацію про production?

Або:

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

Саме такі гіпотези визначають наступні кроки.

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

Сканер шукає потенційні слабкі місця.

Пентестер намагається зрозуміти:

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

Чого пентестер не повинен робити в перші 30 хвилин

Мета початкового етапу — не запустити максимальну кількість сканерів і не експлуатувати першу знайдену вразливість.

Активне тестування без достатнього розуміння середовища може не тільки витратити час, а й створити непотрібний ризик для production-систем.

Тому логіка професійного тестування виглядає приблизно так:

видимість → розуміння → гіпотеза → перевірка → контрольована експлуатація

а не:

сканування → експлуатація → звіт.

Такий підхід дозволяє знаходити не просто технічні недоліки, а реалістичні сценарії атак.

Пентест і сканування вразливостей — це одне й те саме?

Ні.

Автоматичні інструменти є важливою частиною penetration testing і допомагають швидко знаходити:

  • відомі вразливості;
  • відкриті сервіси;
  • застаріле ПЗ;
  • типові помилки конфігурації;
  • відсутні security controls.

Але автоматизація має обмеження.

Сканер може генерувати false positives, не розуміти бізнес-логіку, не бачити складні проблеми з авторизацією або не визначити, що кілька слабких місць разом створюють критичний attack path.

Ручне тестування додає те, чого бракує автоматичному скануванню, — логіку атакувальника та контекст.

Пентестер постійно ставить собі питання:

«Якби моєю метою було скомпрометувати цю компанію, що я перевірив би наступним?»

Детальніше про відмінності тестування на проникнення та сканування вразливсотей розглядаємо в нашій статті "Red Team, Penetration Testing чи Vulnerability Assessment — що обрати для безпеки бізнесу?".

Що відбувається після перших 30 хвилин?

Коли поверхня атаки стала зрозумілішою, а перші гіпотези сформовані, починається глибше тестування.

Залежно від scope воно може включати:

  • перевірку та підтвердження вразливостей;
  • тестування автентифікації та авторизації;
  • пошук можливостей підвищення привілеїв;
  • тестування безпеки вебзастосунків;
  • API penetration testing;
  • тестування мережевої інфраструктури;
  • перевірку хмарного середовища;
  • business logic testing;
  • контрольовану експлуатацію;
  • побудову attack chains.

Завдання пентесту — не експлуатувати все, що технічно можливо.

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

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

Цінність тестування на проникнення не варто вимірювати кількістю знайдених вразливостей.

Якісний результат має дати бізнесу відповіді на конкретні питання:

  1. Що реально можна скомпрометувати?
  2. Яким шляхом це може зробити атакувальник?
  3. Які системи, дані та бізнес-процеси опиняться під загрозою?
  4. Яким буде потенційний вплив на бізнес?
  5. Які проблеми потрібно виправити першими?
  6. Як саме знизити виявлені ризики?

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

Якісний пентест показує реалістичні сценарії атак та їхній потенційний вплив на бізнес.

Тестування на проникнення від ESKA 

ESKA проводить тестування на проникнення, поєднуючи автоматизовані інструменти, ручне тестування та експертний аналіз.

Ми проводимо:

Наше завдання — не просто сформувати список CVE.

Ми перевіряємо, як вразливості, помилки конфігурації, недоліки контролю доступу та бізнес-логіки можуть бути використані в реалістичному сценарії атаки, та визначаємо, які ризики потрібно усунути першочергово.

Пентест також може бути частиною підготовки до ISO 27001, SOC 2, PCI DSS, NIS2, DORA, вимог корпоративних клієнтів або незалежної перевірки рівня захищеності компанії.

FAQ: тестування на проникнення

Що пентестер перевіряє в першу чергу?

На початку тестування пентестер перевіряє scope, визначає доступну поверхню атаки, системи та сервіси, використовувані технології, точки автентифікації, можливі помилки конфігурації та витоки інформації. На основі цього формуються перші гіпотези для глибшого тестування.

Що таке пентест простими словами?

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

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

Сканування вразливостей переважно автоматично шукає потенційні технічні проблеми. Пентест доповнює автоматизовані перевірки ручним аналізом, підтвердженням вразливостей, перевіркою бізнес-логіки та побудовою реалістичних сценаріїв атак.

Чи може пентест знайти те, чого не бачить сканер?

Так. Ручне тестування може виявити помилки авторизації, проблеми бізнес-логіки, складні attack chains та інші контекстні вразливості, які автоматичний сканер може пропустити.

Скільки триває пентест?

Тривалість залежить від кількості та складності активів, типу тестування, scope і методології. Невеликий вебзастосунок може потребувати кількох днів тестування, тоді як складна корпоративна інфраструктура або Red Team assessment — значно більше часу.

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

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

Чи включає пентест експлуатацію вразливостей?

Так, якщо це дозволено узгодженими Rules of Engagement. Контрольована експлуатація допомагає підтвердити, що вразливість справді можна використати, та оцінити її потенційний вплив без створення невиправданого ризику для систем замовника.

Висновок

Перші 30 хвилин пентесту можуть багато розповісти про рівень захищеності компанії.

Не тому, що за цей час обов'язково буде знайдена критична вразливість.

А тому, що пентестер починає бачити інфраструктуру очима потенційного атакувальника.

Що доступно ззовні? Де можуть бути слабші точки? Які системи пов'язані між собою? Який актив може стати початковою точкою входу — і куди з нього можна просунутися далі?

Саме з відповідей на ці питання починається професійне тестування на проникнення.

Хочете зрозуміти, що потенційний атакувальник може побачити та використати у вашій інфраструктурі?

ESKA проводить пентести вебзастосунків, API, внутрішньої та зовнішньої інфраструктури, хмарних середовищ і комплексні Red Team assessments.

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