2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00
2025-11-17 09:38:16 +03:00

Security Monitor - Система мониторинга безопасности

Система мониторинга событий в контейнеризованных средах для обнаружения бесфайловых атак на уровне ядра операционной системы с интеграцией MITRE ATT&CK.

🚀 Возможности

  • eBPF мониторинг - сбор событий в реальном времени на уровне ядра
  • MITRE ATT&CK интеграция - полная база данных тактик и техник (835+ техник)
  • Автоматическая классификация - сопоставление событий с MITRE техниками
  • Wazuh интеграция - отправка событий в SIEM систему
  • Обработка событий - структурирование, обогащение и детекция аномалий

📁 Структура проекта

├── app/                    # MITRE ATT&CK модули
│   ├── core/              # База данных SQLAlchemy
│   ├── models/            # Модели данных MITRE
│   └── services/          # Парсеры STIX данных
├── config/                # Конфигурационные файлы
├── data/                  # База данных и STIX файлы
├── docs/                  # Документация
├── ebpf/                  # eBPF программы
├── logs/                  # Логи системы
├── reports/               # Отчеты и документация
├── scripts/               # Скрипты управления
├── src/                   # Основной код системы
└── tests/                 # Тесты

🛠️ Установка

Требования

  • Python 3.12+
  • Linux с поддержкой eBPF
  • BCC (Berkeley Packet Capture) для eBPF

Быстрая установка

# Клонирование репозитория
git clone <repository-url>
cd security-monitor

# Установка зависимостей
sudo apt update
sudo apt install python3-pip python3-venv python3.12-venv

# Создание виртуального окружения
python3 -m venv venv
source venv/bin/activate

# Установка Python пакетов
pip install -r requirements.txt

# Установка BCC (для eBPF)
sudo apt install python3-bpfcc

🚀 Запуск

1. Инициализация данных MITRE ATT&CK

# Загрузка полной базы данных MITRE ATT&CK
python scripts/load_mitre_attack_data.py --domain enterprise

# Проверка загруженных данных
python scripts/load_mitre_attack_data.py --verify-only

2. Запуск системы мониторинга

# Тестовый режим (без eBPF)
python src/main.py --test

# Продакшн режим (требует root)
sudo python src/main.py

📊 Статистика MITRE ATT&CK

  • 14 тактик - полное покрытие enterprise домена
  • 835 техник - детальная классификация атак
  • 479 подтехник - специфичные методы атак
  • 268 мер противодействия - рекомендации по защите
  • 187 групп - известные APT группы
  • 787 программного обеспечения - вредоносные инструменты
  • 52 кампании - реальные атаки

🔧 Конфигурация

Основные настройки в config/config.yaml:

# eBPF настройки
ebpf:
  enabled: true
  program_path: "ebpf/syscall_monitor.c"

# MITRE ATT&CK настройки
mitre:
  enabled: true
  database_path: "data/mitre_attack.db"
  mapping_file: "config/mitre_mapping.json"

# Wazuh интеграция
wazuh:
  enabled: true
  syslog_host: "localhost"
  syslog_port: 514

🧪 Тестирование

# Запуск всех тестов
pytest tests/

# Запуск конкретного теста
pytest tests/test_ebpf_monitor.py -v

# Покрытие кода
pytest --cov=src tests/

📈 Мониторинг

Система создает следующие логи:

  • logs/security_monitor.log - основные события системы
  • logs/mitre_attack_loader.log - загрузка MITRE данных
  • logs/wazuh_test.log - тестирование Wazuh интеграции

🔍 Классификация событий

Система автоматически сопоставляет события с MITRE техниками:

  • T1059 - Command and Scripting Interpreter
  • T1071 - Application Layer Protocol
  • T1055 - Process Injection
  • T1083 - File and Directory Discovery
  • И многие другие...

📚 Документация

🤝 Вклад в проект

  1. Форкните репозиторий
  2. Создайте ветку для новой функции
  3. Внесите изменения
  4. Добавьте тесты
  5. Создайте Pull Request

📄 Лицензия

MIT License - см. файл LICENSE для деталей.

🆘 Поддержка

При возникновении проблем:

  1. Проверьте логи в папке logs/
  2. Убедитесь, что BCC установлен корректно
  3. Проверьте права доступа для eBPF
  4. Создайте Issue в репозитории

🎯 Roadmap

  • Поддержка mobile и ICS доменов MITRE ATT&CK
  • Машинное обучение для детекции аномалий
  • Веб-интерфейс для мониторинга
  • Интеграция с другими SIEM системами
  • Поддержка Windows eBPF

Разработано для дипломной работы по теме:
"Разработка подсистемы мониторинга событий в контейнеризованных средах для обнаружения бесфайловых атак на уровне ядра операционной системы"

Description
No description provided
Readme 73 MiB
Languages
Python 98%
C 0.9%
C++ 0.6%
Cython 0.3%