**Целевая система** - исследуемый объект или комплекс объектов информационной системы, в результате воздействия злоумышленника на который может непосредственно произойти недопустимое для компании событие. **Pentest (Тестирование на проникновение)** - анализ защищенности целевой системы в результате которой реализуются уязвимости или недопустимые события путем моделирования атак злоумышленников. **Уязвимость** - недостаток целевой системы, который может быть использован для реализации недопустимого события (угроз безопасности). **Недопустимое событие** - событие, приводящее к значительному нарушению деятельности компании. ### Классификации пентеста **По отношению к инфраструктуре компании:** 1. Внешний - эксперт по тестированию на проникновение ведет свою деятельность вне контролируемой зоны компании. 2. Внутренний - эксперт по тестированию на проникновение ведет свою деятельности внутри контролируемой зоны компании. **По методу работ:** - **Black Box** - информация об инфраструктуре и целевой системе отсутствует, тестировщик добывает информацию применяя OSINT. - **Gray Box** - у эксперта частично присутствует информация о целевой системе (учетки, пароли, ящики, адреса админок) - **White Box** - у эксперта есть вся информация о целевой системе (документация, учетки админов и пользователей с паролями, исходный код при наличии, перечень ПО и т.д.) **По типу целевой системы:** - Тестирование веб приложений - Тестирование инфраструктуры - Тестирование приложений - Тестирование беспроводных сетей. ## Методики и стандарты _Международные_ 1. _OWASP Top Ten_ - это стандартный документ, посвященный безопасной разработке веб-приложений. Он представляет собой широкий консенсус относительно наиболее важных рисков безопасности веб-приложений. 2. _OWASP Web Security Testing Guide (WSTG)_ - исчерпывающая методика по тестированию кибербезопасности для разработчиков веб-приложений и специалистов по безопасности. 3. _OWASP Mobile Application Security_ - представляет собой стандарт безопасности для мобильных приложений (OWASP MASVS) и подробное руководство по тестированию. 4. _OWASP Application Security Verification Standard_ - описывает основу для тестирования средств контроля технической безопасности веб-приложений, а также предоставляет разработчикам список требований для безопасной разработки. 5. _ISO/IEC 27001_ - стандарт Международной организации по стандартизации (ISO) и Международной электротехнической комиссии (IEC) для систем управления информационной безопасностью. Описывает требования по проведению тестирования на проникновение как часть процесса управления рисками. 6. _NIST SP 800-115_ - стандарт Национального института стандартов и технологий США (National Institute of Standards and Technology), описывающий методику тестирования на проникновение. 7. _OSSTMM_ - методика, разработанная Open Information Security Foundation (OISF), описывает широкий набор методов и подходов для тестирования на проникновение. 8. _WASC_ - в данной методике собраны недостатки и классы атак, которые представляют угрозу для веб-приложений и пользователей. 9. _PTES_ - открытое руководство, охватывающее все этапы выполнения тестирования на проникновение, начиная от сбора информации и заканчивая подготовкой отчета. 10. _PCI DSS (Payment Card Industry Data Security Standard)_ **-** включает в себя требования по проведению пентестов для систем, обрабатывающих платежные данные. 11. _CREST (Council of Registered Ethical Security Testers)_ **-** организация CREST разрабатывает и поддерживает стандарты для профессиональных пентестеров. Их рекомендации охватывают различные аспекты тестирования, включая мобильные устройства и физическую безопасность. _Отечественные_ 1. _Министерство цифрового развития, связи и массовых коммуникаций Российской Федерации "Типовое техническое задание на выполнение работ по оценке уровня защищенности информационной инфраструктуры"_ - данный документ описывает объем и состав работ, а также требуемые отчетные документы в рамках работ по тестированию на проникновение в компании. ## Инфраструктура **Инфраструктура** - совокупность множества ПО, оборудования, сетей и сервисов, образующих информационную систему компании. ![[Pasted image 20250317210934.png]] Рисунок 1 -Схема тестирования компании на проникновение. ## Разведка Разведка представляет из себя анализ внешнего периметра системы компании (внешние сервисы и веб-приложения), либо анализ внутерннего периметра компании. На этапе разветки собирается вся доступная информация о компании в Интернете\Даркнете (учетки, пароли, корп. почта, перечень активов и другие источники). Собирается следующая информация: 1. Перечень активов и данные об их назначении через сканирование доступной сети 2. Перечень открытых портов и сервисов (с указанием версий) работающих на данных портах. 3. Перечень используемых технологий и ПО 4. Определение ОС, их версий и возможной сборки. 5. Учетки 6. Файлы конфигурации и ошибки в них. ## Первоначальный доступ **Первоначальный доступ** - на данном этапе атакующий получает доступ с возможностью выполнения команд на скомпроментированном активе или возможность управления им с целью доставки необходимых инструментариев и реализации дальнейших этапов тестирования на проникновение. На данном этапе реализуется: 1. **Рассылка фишинговых писем** 2. Проверка возможности получения доступа с применением выявленных учетных данных к различным сервисам, например `FTP` или `SMB, SSH, RDP` 3. Попытка эксплуатации ранее выявленных уязвимостей в сервисах и компонентах целевой системы на этапе разведки. ## Закрепление **Закрепление** - в рамках данного этапа реализуется комплекс мер для организации отказоустойчивого канала (возможность повторного запуска процесса с бэкконнектом при его прирывании). Для закрепления могут использоваться следующшие подходы: 1. `Создание задачи` на запуск исполняемого файла 2. `Добавление в автозапуск` исполняемого файла 3. `Создание службы` запуска исполняемого файла 4. `Изменение скриптов` 5. `Создание учётки` ## Повышение привелегий **Повышение привелегий** - реализация мер для получения привелегилированных прав в ОС. Можно реализовать через: 1. `Работающие скрипты`, которые запускаются из-под рута. 2. `Работающие службы`, которые запускаются из-под рута. 3. `Задачи`, зпускаемые в ОС. 4. `Привелегии` текущей учетки 5. `Обход локальных ограничений` в двоичных файлах ## Внутреняя разведка **Внутренняя разведка** - этап, целью которого является изучение информации хранящейся на активе (учетки, иформация об активах, тех. документация и иная) или в сети для дальнейшего использования в цепочке атак. **Разведка актива**: 1. `Учётки записи и пароли` 2. `Техническая документация` 3. Информация об используемом `ПО` 4. Запущенные `процессы` и активные `сессии` 5. `ARP`-записи 6. `Информация о хосте` **Разведка сети**: - Результаты сканирования сетевых сканеров - Сбор информации в AD ## ОФОРМЛЕНИЕ ОТЧЕТА **Отчет содержит в себе следующие разделы:** 1. Информацию о системе и используемых технологиях 2. Краткую информацию о выявленных уязвимостях и недопустимых событиях 3. Выявленные следы компрометации (найденные утечки, информация о готовящихся атаках, наличие подозрительных объектов или логов в рамках тестирования) 4. перечень первоочередных и долгосрочных мер для устранения уязвимостей и контролю их отсутствия # **Технический отчет** Этот отчет необходим в первую очередь подразделениям информационной безопасности и ИТ-службам. В данном документе более детально описывается реализация уязвимостей и недопустимых событий, а также рекомендации по их устранению. _Содержание отчета:_ 1. период проведения работ; 2. информация о целевой системе; 3. применяемые методики и инструментарии; 4. этапы проведения тестирования (берутся из разработанной методики из пункта 3); 5. информация о найденных уязвимостях и недопустимых событиях; 6. расчет защищенности целевой системы; 7. приложения с подробным описанием выявленных уязвимостей и недопустимых событий с рекомендациями по устранению. На каждую выявленную уязвимость в приложении необходимо оформлять карточку выявленного недостатка, _пример карточки указан ниже:_ **Название:**  <Название выявленной уязвимости> **Критичность:** Информационная/Низкая/Средняя/Высокая **CVSS:** x.x - где х.х числовой показатель, например, 6.3 **CVSS-вектор:** CVSS:3.0/XX:X/XX:X/XX:X/XX:X/X:X/X:X/X:X/X:X, ссылка на калькулятор [https://www.first.org/cvss/calculator/3.0](https://www.first.org/cvss/calculator/3.0) **Требуемая квалификация атакующего:** Низкая/Средняя/Высокая  **Описание:** <Детальное представление уязвимости> **Реализация:** <Описать шаги, приводящие к реализации уязвимости> **Рекомендации по устранению:** <Перечень действий для устранения возможности реализации данной уязвимости> Для оформления карточки реализации недопустимого события _используется следующий формат карточки:_ **Название:** <Название реализованного недопустимого события> **Цепочка связанных уязвимостей:** <уязвимость 1>,<уязвимость 2>,...,<уязвимость N> **Описание:** <Детальное описание недопустимого события> **Реализация: <Описать шаги, приводящие к реализации недопустимого события> **Рекомендации по устранению:** <Перечень действий для устранения возможности реализации недопустимого события>