Files
obsidian/cybersec/Pentest/Основы пентеста.md
2026-07-30 11:35:10 +05:00

152 lines
16 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
**Целевая система** - исследуемый объект или комплекс объектов информационной системы, в результате воздействия злоумышленника на который может непосредственно произойти недопустимое для компании событие.
**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>
**Описание:** <Детальное описание недопустимого события>
**Реализация: <Описать шаги, приводящие к реализации недопустимого события>
**Рекомендации по устранению:** <Перечень действий для устранения возможности реализации недопустимого события>