Що таке тестування на проникнення? Повний огляд процедури

Що таке тестування на проникнення? Повний огляд процедури

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

Що таке тест на проникнення?

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

Цілі пентесту

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

Переваги тестування на проникнення

  1. виявлення недоліків в архітектурі самої системи та методах забезпечення її безпеки;
  2. виявлення недоліків і вразливостей в системі безпеки, в тому числі невеликих, які самі по собі не сильно впливають на безпеку, але разом або в сукупності можуть становити реальну загрозу безпеці;
  3. гнучкість, яка дозволяє моделювати практично будь-яку можливу хакерську атаку максимально реалістично.

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

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

Тест на проникнення в мережу

Здійснюється для виявлення будь-якої можливості доступу до мережі чи системи. Є зовнішнє і внутрішнє тестування. Зовнішній пентест — це виявлення вразливостей, якими можна скористатися через Інтернет. Внутрішній, відповідно, включає умову, якщо хакерам вдалося закріпитися в системі.

Бездротові мережі

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

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

Цей тест виявляє прогалини в безпеці веб-сайтів і програм. У процесі можна виявити міжсайтовий сценарій (XSS), порушення автентифікації та інші проблеми безпеки. Ці тести досить складні, оскільки для них існує багато браузерів і розширень.

Тест на проникнення мобільних додатків

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

Тестування хмарного середовища

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

Фізичний пентест

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

Соціальна інженерія

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

Інструменти пентесту

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

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

Стратегії тестування на проникнення

Зовнішнє тестування

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

Внутрішнє тестування

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

Сліпе тестування

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

Подвійне сліпе тестування

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

Цільове тестування

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

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

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

  1. Розвідка та пошук цілей;
  2. Пошук вразливостей;
  3. Отримання доступу;
  4. Розширення привілеїв;
  5. Аналіз конфігурації;
  6. Експлуатація;
  7. Аналіз результатів та підготовка звіту.

Розвідка та пошук цілей

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

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

Зазвичай досліджують:

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

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

Пошук вразливостей

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

Отримання доступу

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

Розширення привілеїв

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

Аналіз конфігурації

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

Експлуатація

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

Тому пентестери здійснюють:

  • запуск експлойтів;
  • перехоплення трафіку;
  • підбір паролів і розбір хешів паролів;
  • спроби ввести код SQL або реалізувати міжсайтовий сценарій (XSS);
  • інші дії, відповідно до специфіки конкретної інфраструктури підприємства.

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

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

Аналіз результатів та підготовка звіту

Це завершальний етап тесту на проникнення. Експерти аналізують результати тестування та об’єднують їх у звіт, який описує:

- уразливості, які були використані для моделювання шкоди;

- перелік доступної інформації;

- час, витрачений на роботу, і проміжок часу, протягом якого пентестери залишалися непоміченими в системі;

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

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

Методології пентесту

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

Пентест методологія OSSTMM

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

Методологія ISSAF

Information System Security Assessment Framework (ISAAF) — ця методологія розроблена як стандарт для внутрішнього аудиту організацій. Чітко прописує рекомендації щодо проведення пентесту, містить детальний опис утиліт, а також варіанти їх використання. Це один з найбільш складних і детальних методів, як в теоретичному, так і в практичному сенсі, але в той же час один з найпопулярніших. Використовується для перевірки інформаційної безпеки різноманітних компаній.

OWASP

Open Web Application Security Project (OWASP) — ця методологія зосереджена на тестуванні веб-додатків і детально описує сам процес пентесту. По суті, це єдина детальна методологія, яка вузько орієнтована саме на веб-додатки. OWASP можна використовувати як на етапі попередньої оцінки безпеки веб-додатків, так і на етапі розробки веб-додатків для тестування окремих можливостей і функцій інформаційної безпеки.

Методика PTES

Penetration Testing Execution Standard (PTES) — зареєстрований як стандарт лише в США. Містить рекомендації щодо проведення базового тесту на проникнення для компаній, які мають високі вимоги до інформаційної безпеки. Головною перевагою є можливість чіткого та детального визначення цілей, завдань та очікувань від пентесту.

NIST SP800-115

Technical Guide to Information Security Testing and Assessment — це стандарт, розроблений одним із підрозділів Національного інституту стандартів і технологій (NIST). Цей метод можна використовувати як на етапі попередньої оцінки безпеки, так і на етапі тестування окремих можливостей і функцій захисту інформації.

Частота та серйозність порушень безпеки зростає з кожним роком, тому важливість тестів на проникнення важко переоцінити. Це один із стовпів, на якому тримається інформаційна безпека підприємств. Тому так важливо відповідально підійти до вибору підрядника для цієї роботи.

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