# Wazuh и TSC (SOC 2) - маппинг критериев доверия

> Соответствие TSC/SOC 2 с помощью Wazuh 4.14 - маппинг критериев безопасности, доступности, целостности обработки, конфиденциальности и приватности

Source: https://opennix.org/docs/wazuh/compliance/wazuh-tsc/


Wazuh обеспечивает поддержку критериев доверенных сервисов (Trust Services Criteria, TSC) для аудитов SOC 2 через анализ логов, мониторинг целостности файлов, оценку конфигурации, обнаружение уязвимостей и автоматическое реагирование. Стандартный набор правил содержит теги `tsc_` для маппинга событий на критерии TSC.

## Обзор TSC и SOC 2

Trust Services Criteria (TSC) 2017 определяет набор критериев для оценки контролей организации в рамках аудита SOC 2 (Service Organization Control 2). TSC разработан AICPA (American Institute of Certified Public Accountants) и включает пять категорий:

- **Security (CC)** - Common Criteria - защита информации и систем
- **Availability (A)** - доступность систем и данных
- **Processing Integrity (PI)** - целостность обработки данных
- **Confidentiality (C)** - конфиденциальность информации
- **Privacy (P)** - приватность персональных данных

Категория Security (Common Criteria) является обязательной для всех аудитов SOC 2. Остальные категории выбираются в зависимости от характера предоставляемых сервисов.

## Маппинг критериев TSC на модули Wazuh

### Common Criteria (CC) - безопасность

| Критерий | Описание | Модули Wazuh |
|---|---|---|
| CC1 | Контрольная среда | [SCA](/docs/wazuh/capabilities/wazuh-sca/), документирование политик |
| CC2 | Коммуникация и информация | [Анализ логов](/docs/wazuh/capabilities/wazuh-log-data-collection/), алерты |
| CC3 | Управление рисками | [Vulnerability Detector](/docs/wazuh/capabilities/wazuh-vulnerability-detection/), анализ алертов |
| CC4 | Мониторинг контролей | Дашборд, отчетность |
| CC5 | Действия по контролю | SCA, правила обнаружения |
| CC6 | Логический и физический контроль доступа | Анализ логов аутентификации, [FIM](/docs/wazuh/capabilities/wazuh-file-integrity-monitoring/) |
| CC7 | Операции системы | Мониторинг системных событий, [активное реагирование](/docs/wazuh/capabilities/wazuh-active-response/) |
| CC8 | Управление изменениями | [FIM](/docs/wazuh/capabilities/wazuh-file-integrity-monitoring/), SCA |
| CC9 | Снижение рисков | Активное реагирование, анализ рисков |

### Дополнительные критерии

| Критерий | Описание | Модули Wazuh |
|---|---|---|
| A1.1 | Доступность систем | Мониторинг событий, анализ логов |
| PI1.4 | Целостность обработки | FIM, анализ логов |
| C1.1 | Конфиденциальность | FIM, контроль доступа |
| P1-P8 | Приватность | FIM, анализ логов, SCA |

## CC6 - логический и физический контроль доступа

CC6 является одним из наиболее полно покрываемых критериев в Wazuh. Критерий охватывает:

### CC6.1 - ограничение логического доступа

Wazuh мониторит все события аутентификации и авторизации:

```xml
<localfile>
  <log_format>syslog</log_format>
  <location>/var/log/auth.log</location>
</localfile>
```

Правила с тегом `tsc_CC6.1` срабатывают при обнаружении аномалий доступа:

```xml
<rule id="5710" level="5">
  <if_sid>5700</if_sid>
  <match>illegal user|invalid user</match>
  <description>sshd: Attempt to login using a non-existent user</description>
  <group>authentication_failed,tsc_CC6.1,tsc_CC6.8,</group>
</rule>
```

### CC6.2 - создание и управление учетными записями

Мониторинг жизненного цикла учетных записей:

```xml
<rule id="100400" level="8">
  <if_sid>5901</if_sid>
  <description>New user account created - SOC 2 audit event</description>
  <group>tsc_CC6.2,tsc_CC6.3,account_changed,</group>
</rule>
```

### CC6.6 - защита от внешних угроз

Wazuh обнаруживает внешние угрозы через правила анализа логов и корреляцию событий, включая обнаружение brute-force атак, сканирования портов и известных эксплойтов.

### CC6.8 - предотвращение несанкционированного доступа

Мониторинг множественных неудачных попыток аутентификации:

```xml
<rule id="5712" level="10" frequency="6" timeframe="120">
  <if_matched_sid>5710</if_matched_sid>
  <description>sshd: brute force detected</description>
  <group>tsc_CC6.8,tsc_CC7.2,authentication_failures,</group>
</rule>
```

## CC7 - операции системы

### CC7.1 - мониторинг для обнаружения аномалий

Wazuh обеспечивает непрерывный мониторинг через:

- Анализ логов в реальном времени
- [FIM](/docs/wazuh/capabilities/wazuh-file-integrity-monitoring/) для обнаружения изменений
- Обнаружение аномалий в системных событиях
- Маппинг на тактики MITRE ATT&CK

### CC7.2 - мониторинг компонентов системы

```xml
<syscheck>
  <directories check_all="yes" realtime="yes">/usr/bin</directories>
  <directories check_all="yes" realtime="yes">/etc</directories>
  <directories check_all="yes" whodata="yes">/var/data</directories>
</syscheck>
```

### CC7.3 - оценка событий безопасности

Дашборд Wazuh предоставляет инструменты для оценки событий:

- Классификация по уровням (0-15)
- Группировка по правилам и категориям
- Временной анализ тенденций

### CC7.4 - реагирование на инциденты

[Активное реагирование](/docs/wazuh/capabilities/wazuh-active-response/) обеспечивает автоматическую обработку инцидентов:

```xml
<active-response>
  <command>firewall-drop</command>
  <location>local</location>
  <level>10</level>
  <timeout>3600</timeout>
</active-response>
```

## CC8 - управление изменениями

### CC8.1 - контроль изменений

[FIM](/docs/wazuh/capabilities/wazuh-file-integrity-monitoring/) отслеживает все изменения в критических файлах и конфигурациях:

```xml
<syscheck>
  <directories check_all="yes" whodata="yes" report_changes="yes">/etc</directories>
  <directories check_all="yes" whodata="yes" report_changes="yes">/opt/app/config</directories>
</syscheck>
```

Параметр `whodata` фиксирует пользователя и процесс, ответственные за каждое изменение, что критически важно для аудита SOC 2.

## A1 - доступность

### A1.1 - поддержание доступности

Wazuh мониторит события, влияющие на доступность:

- Сбои сервисов и перезагрузки систем
- Исчерпание ресурсов (диск, память, CPU)
- Сетевые проблемы и отключения

```xml
<localfile>
  <log_format>syslog</log_format>
  <location>/var/log/syslog</location>
</localfile>
```

## PI1 - целостность обработки

### PI1.4 - обнаружение ошибок обработки

Wazuh обнаруживает ошибки обработки через анализ логов приложений:

```xml
<localfile>
  <log_format>json</log_format>
  <location>/var/log/app/processing.log</location>
</localfile>
```

[FIM](/docs/wazuh/capabilities/wazuh-file-integrity-monitoring/) контролирует целостность данных в процессе обработки.

## Группы правил TSC

Wazuh использует префикс `tsc_` для тегирования правил. Получить список доступных тегов:

```bash
docker exec wazuh-manager grep -r "tsc_" /var/ossec/ruleset/rules/ | \
  grep -oP 'tsc_[A-Z]+[\d.]+' | sort -u
```

Основные группы:

| Группа | Критерий |
|---|---|
| `tsc_CC6.1` | Ограничение логического доступа |
| `tsc_CC6.2` | Управление учетными записями |
| `tsc_CC6.3` | Управление правами доступа |
| `tsc_CC6.6` | Защита от внешних угроз |
| `tsc_CC6.8` | Предотвращение несанкционированного доступа |
| `tsc_CC7.1` | Мониторинг аномалий |
| `tsc_CC7.2` | Мониторинг компонентов |
| `tsc_CC7.3` | Оценка событий безопасности |
| `tsc_CC7.4` | Реагирование на инциденты |
| `tsc_CC8.1` | Контроль изменений |
| `tsc_A1.1` | Доступность |
| `tsc_PI1.4` | Целостность обработки |

## Поддержка аудита SOC 2

Wazuh помогает организациям подготовиться к аудиту SOC 2 через:

### Сбор доказательств

- Централизованные журналы событий с временными метками
- Записи о контроле доступа и аутентификации
- Отчеты SCA о соответствии конфигурации
- Записи о контроле изменений через FIM

### Демонстрация контролей

- Автоматическое обнаружение угроз и реагирование
- Непрерывный мониторинг безопасности
- Регулярная оценка уязвимостей
- Визуализация состояния безопасности через дашборд

### Формирование отчетов

Для запроса алертов TSC через API:

```bash
curl -sk -u admin:$WAZUH_ADMIN_PASS \
  "https://localhost:9200/wazuh-alerts-*/_search" \
  -H "Content-Type: application/json" \
  -d '{
    "size": 0,
    "query": {
      "bool": {
        "must": [
          { "range": { "timestamp": { "gte": "now-30d" } } },
          { "exists": { "field": "rule.tsc" } }
        ]
      }
    },
    "aggs": {
      "tsc_criteria": {
        "terms": { "field": "rule.tsc", "size": 50 }
      }
    }
  }' | jq '.aggregations.tsc_criteria.buckets'
```

## Модуль TSC в дашборде

Wazuh Dashboard содержит модуль TSC в разделе **Modules > Regulatory compliance > TSC**. Модуль предоставляет:

- Обзор алертов по категориям TSC
- Группировку по критериям Common Criteria
- Временную шкалу событий соответствия
- Детализацию по агентам

## Устранение неполадок

### Алерты TSC не отображаются

1. Проверьте наличие тегов `tsc_` в правилах
2. Убедитесь, что модуль TSC активирован в дашборде
3. Проверьте корректность временного диапазона

### Отсутствуют данные контроля доступа для CC6

1. Проверьте конфигурацию сбора логов аутентификации
2. Убедитесь, что источники логов указаны в `ossec.conf`
3. Проверьте, что агенты активны и отправляют данные

### FIM не генерирует алерты для CC8

1. Убедитесь, что контролируемые каталоги указаны в `<syscheck>`
2. Проверьте, что мониторинг включен
3. При использовании `whodata` убедитесь, что auditd установлен

