Каталог инструментов
Категории
Инструменты / GitHub / paolokappa / sharepointsecuritymonitor
paolokappa/sharepointsecuritymonitor
SharePointSecurityMonitor Комплексное решение для мониторинга безопасности SharePoint на основе PowerShell с защитой от CVE-2025-53770, расширенным анализом DLL, обнаружением угроз и возможностями автоматического оповещения.
1 1 4 1 год назадОткройте для себя самые используемые инструменты нашего сообщества.
7 дней 30 дней
🛡️ Монитор безопасности SharePoint v5.0
🚀 Комплексное решение для мониторинга безопасности SharePoint на базе PowerShell с защитой от CVE-2023-29357 и CVE-2023-33157, интеллектуальным управлением DLL, расширенным обнаружением угроз и автоматическими оповещениями.
📋 Содержание
🌟 Обзор проекта Исходный PowerShell-скрипт объёмом 5 519 строк был усовершенствован до высокопроизводительного решения для мониторинга безопасности, оставаясь в экосистеме PowerShell. Несмотря на то, что это по-прежнему единый скрипт, в него внесены значительные улучшения модульности и функциональности.
✨ Ключевые возможности
🛡️ Функции безопасности
🔍 Защита от конкретных CVE : специализированное обнаружение CVE-2023-29357 и CVE-2023-33157
🧬 Интеллектуальное управление DLL : система автоматического одобрения с очередью на проверку
🎯 Обнаружение угроз в реальном времени : расширенная идентификация и отслеживание угроз
📊 Комплексное отслеживание атак : единая хронология атак с 20+ типами атак
🔐 Защита памяти LSASS : обнаружение попыток кражи учётных данных
🛡️ Обнаружение вмешательства в Defender : мониторинг отключения средств безопасности
📋 Мониторинг GPO : обнаружение подозрительных изменений групповых политик
🔄 Обнаружение отражающей инъекции DLL : расширенное обнаружение инъекций в память
🚨 Обнаружение программ-вымогателей : идентификация множества семейств вымогателей
🌐 Обнаружение C2-коммуникаций : мониторинг известных C2-доменов и IP-адресов
🏗️ Архитектурные особенности
📦 Улучшенная архитектура : единый оптимизированный скрипт с модульными функциями
⚡ Оптимизированная производительность : инкрементальное чтение журналов с умными закладками
🔄 Кэширование событий : эффективная фильтрация дублирующихся событий
💾 Умное кэширование : ежедневные файлы кэша с автоматической очисткой
📊 Управление эталонами : системы базовых эталонов DLL и целостности файлов
🔒 Многоуровневая безопасность : совместимость с ESET и Microsoft Defender
📢 Мониторинг и оповещения
📧 Умные email-оповещения : настраиваемые оповещения с параметром -NoAlertOnWarnings
📈 Улучшенные HTML-отчёты : полная хронология атак и статистика
⚙️ Управление запланированными задачами : автоматические сканирования ежечасно, ежедневно и при запуске
🔐 Детальный анализ атак : идентификация угроз по IP-адресам
📊 Показатели производительности : отслеживание времени выполнения и частоты попаданий в кэш
🎯 Управление ожидающими DLL : рабочий процесс проверки и одобрения DLL
🏗️ Архитектура решения
🔧 Основные компоненты
1️⃣ SharePoint-Security-Monitor.ps1 (основной скрипт)
🎯 Модульная точка входа с полной поддержкой параметров
🛡️ Механизмы обработки ошибок и восстановления
📊 Отчёт о ходе выполнения и отслеживание времени выполнения
⚡ Поддержка быстрого сканирования, создания эталонов и управления задачами
2️⃣ Основная функциональность (встроенные функции)
📝 Расширенное ведение журнала : отслеживание производительности с помощью функций-таймеров
🔬 Анализ DLL : интеллектуальный Test-SuspiciousDLL с автоматическим одобрением
🎯 Обнаружение угроз : сопоставление шаблонов и корреляция в реальном времени
⚙️ Конфигурация : конфигурация на основе JSON с безопасной обработкой
📊 Генерация отчётов : комплексные HTML-отчёты с хронологией атак
3️⃣ Система конфигурации
📋 SharePointSecurityConfig.json : готовая к продакшену конфигурация
🌍 Переопределения под конкретные среды (разработка, тестирование, продакшен)
🔐 Безопасная обработка учётных данных с поддержкой шифрования
4️⃣ Демонстрация и настройка
🎮 Demo-EnhancedScript.ps1 : интерактивный демонстрационный скрипт
📊 Создание структуры с образцами данных
✅ Возможности проверки и тестирования модулей
🚀 Краткое руководство
📌 Базовое использование # Standard security scan with email on alerts/warnings
.\SharePoint-Security-Monitor.ps1
# Standard scan with custom max days
.\SharePoint-Security-Monitor.ps1 -MaxDaysToScan 7
🎯 Типовые операции # ⚡ Quick scan (last 12 hours)
.\SharePoint-Security-Monitor.ps1 -QuickScan
# 📐 Create DLL baseline
.\SharePoint-Security-Monitor.ps1 -CreateBaseline
# 👁️ Review and approve pending DLLs
.\SharePoint-Security-Monitor.ps1 -ReviewPendingDLLs
# 🤖 Auto-approve legitimate DLLs
.\SharePoint-Security-Monitor.ps1 -AutoApproveDLLs
# 🔍 Check SharePoint file integrity
.\SharePoint-Security-Monitor.ps1 -CheckIntegrity
# 📧 Force email alert
.\SharePoint-Security-Monitor.ps1 -ForceAlert
# 📊 Always send report regardless of findings
.\SharePoint-Security-Monitor.ps1 -AlwaysSendReport
# 🔕 Only alert on critical issues (not warnings)
.\SharePoint-Security-Monitor.ps1 -NoAlertOnWarnings
# 🗓️ Full historical scan (30 days)
.\SharePoint-Security-Monitor.ps1 -FullHistoricalScan
# 🔄 Reset log reading bookmarks
.\SharePoint-Security-Monitor.ps1 -ResetBookmarks
# 🗑️ Clear event cache
.\SharePoint-Security-Monitor.ps1 -ClearCache
# ⚙️ Manage scheduled tasks
.\SharePoint-Security-Monitor.ps1 -ManageTasks -TaskAction Install
.\SharePoint-Security-Monitor.ps1 -ManageTasks -TaskAction Status
.\SharePoint-Security-Monitor.ps1 -ManageTasks -TaskAction Remove
# 🚫 Disable event caching for debugging
.\SharePoint-Security-Monitor.ps1 -DisableEventCache
# 📏 Process larger log files (default 250MB)
.\SharePoint-Security-Monitor.ps1 -MaxLogSizeMB 500
# ✅ Auto-approve legitimate DLLs
.\SharePoint-Security-Monitor.ps1 -AutoApproveDLLs
📅 Управление задачами # 📥 Install scheduled tasks
.\SharePoint-Security-Monitor.ps1 -ManageTasks -TaskAction Install
# 📊 Check task status
.\SharePoint-Security-Monitor.ps1 -ManageTasks -TaskAction Status
# 🗑️ Remove scheduled tasks
.\SharePoint-Security-Monitor.ps1 -ManageTasks -TaskAction Remove
🔬 Расширенные возможности # 🔍 Verbose DLL analysis with auto-approval
.\SharePoint-Security-Monitor.ps1 -VerboseDLL -AutoApproveDLLs
# 🧹 Clear caches and reset bookmarks
.\SharePoint-Security-Monitor.ps1 -ClearCache -ResetBookmarks
📁 Структура файлов 📂 SharePoint Security Monitor/
├── 📄 SharePoint-Security-Monitor.ps1 # Main monitoring script
├── 🎮 Demo-EnhancedScript.ps1 # Demonstration script
├── ⚙️ SharePointSecurityConfig.json # Configuration file
├── 📋 README.md # Documentation
├── 📄 changelog-file.md # Version history
└── 📋 contributing-guide.md # Contribution guidelines
📂 Runtime Directories (auto-created)
├── Logs/ # Security logs
│ └── SecurityMonitor_YYYYMMDD.log # Daily log files
├── Reports/ # HTML reports
│ └── SecurityReport_YYYYMMDD_HHMMSS.html # Timestamped reports
├── Baselines/ # Baseline data
│ ├── DLL_Baseline.json # DLL inventory baseline
│ ├── SharePoint_Integrity.json # File integrity baseline
│ ├── PendingDLLApproval.json # DLLs awaiting approval
│ └── ApprovedDLLs.json # Whitelisted DLLs
├── Bookmarks/ # Log reading positions
│ └── LogReadingBookmarks.json # Incremental read tracking
└── Cache/ # Event processing cache
└── ProcessedEvents_YYYYMMDD.json # Daily event cache
🆕 Что нового в версии 5.0
🛡️ Расширенное обнаружение угроз
🔍 Реальная защита от CVE : обновлено для обнаружения CVE-2023-29357 и CVE-2023-33157 (реальные уязвимости)
🎯 Продвинутое отслеживание угроз : идентифицирует известные APT-группы и операторов программ-вымогателей
🔐 Обнаружение кражи учётных данных : мониторинг доступа к памяти LSASS с интеллектуальной фильтрацией процессов
🛡️ Мониторинг средств безопасности : обнаруживает вмешательство в Microsoft Defender и GPO
💉 Обнаружение отражающей инъекции DLL : отслеживает события CreateRemoteThread
🏷️ Комплексное отслеживание атак : единая хронология всех событий безопасности
🧬 Интеллектуальное управление DLL
🤖 Система автоматического одобрения : автоматически одобряет легитимные DLL, подписанные Microsoft
📋 Очередь на проверку : DLL, требующие ручной проверки, помещаются в очередь на одобрение
✅ Распознавание компонентов SharePoint : интеллектуальное обнаружение легитимных компонентов SharePoint ASP.NET
🔍 Улучшенная фильтрация : снижение ложных срабатываний за счёт интеллектуального сопоставления шаблонов
📊 Процедура одобрения : интерактивный процесс проверки с отслеживанием на основе хэшей
⚡ Оптимизация производительности
📚 Инкрементальное чтение журналов : система закладок отслеживает последнюю прочитанную позицию в журналах
💾 Кэширование событий : ежедневные файлы кэша предотвращают повторную обработку событий
🧠 Умная логика пропуска : неизменённые журналы пропускаются автоматически
📊 Отслеживание попаданий в кэш : показатели производительности отражают эффективность кэша
🧹 Автоматическая очистка : старые файлы кэша и журналов удаляются автоматически
📊 Улучшенные отчёты
📈 Хронология атак : полное хронологическое представление всех атак
🎯 Анализ типов атак : статистическая разбивка по категориям атак
🌐 Анализ на основе IP : детальное отслеживание и корреляция IP-адресов атакующих
📊 Сводная панель для руководства : метрики безопасности с первого взгляда
🔍 Детальная детализация : полные сведения об атаках с атрибуцией угроз
🔧 Эксплуатационные возможности
📅 Автоматическое управление задачами : встроенная установка и управление запланированными задачами
🔄 Гибкие режимы сканирования : быстрое (12 ч), стандартное (настраиваемое), полное историческое (30 дн.)
📧 Умные email-оповещения : настраиваемые оповещения с параметром -NoAlertOnWarnings
🧪 Совместимость с ESET : интеллектуальное распознавание ESET и Microsoft Defender
🔒 Системы эталонов : проверка эталона DLL и целостности файлов SharePoint
🆕 Ключевые улучшения по сравнению с оригинальной v3.9
⚡ Улучшения производительности
📦 Оптимизированная архитектура : улучшенный скрипт объёмом 4 823 строки с модульными функциями
💾 Система кэширования : кэширование событий и закладки журналов для инкрементальной обработки
🔄 Параллельная обработка : многопоточный анализ больших наборов данных
🧠 Оптимизация памяти : настраиваемые лимиты памяти и кэширование со сжатием
📊 Отчёт о ходе выполнения : обратная связь в реальном времени для длительных операций
🔬 Расширенная система анализа DLL
✍️ Проверка подписи : проверка цифровых сертификатов и анализ доверия
🧬 Поведенческий анализ : анализ импортируемых API и вычисление энтропии
🤖 Машинное обучение : алгоритм оценки угроз с уровнями уверенности
📐 Управление эталонами : автоматическое создание и сравнение эталонов
✅ Процедура одобрения : интерактивный процесс проверки подозрительных DLL
🎯 Распознавание шаблонов : идентификация легитимных и вредоносных DLL
🛡️ Расширенное обнаружение угроз
🔍 Шаблоны под конкретные CVE : обнаружение CVE-2025-53770 и уязвимостей обхода защиты
👤 Инструменты угроз : распознавание известных инструментов и методов атак
🔗 Корреляционный анализ : обнаружение многовекторных атак в пределах временных окон
⚡ Обработка в реальном времени : инкрементальное чтение журналов с закладками
🎨 Пользовательские шаблоны : расширяемые определения шаблонов угроз
⏰ Анализ хронологии : корреляция событий в настраиваемых временных окнах
⚙️ Управление конфигурацией
🌍 Поддержка сред : конфигурации для разработки, тестирования и продакшена
✅ Система валидации : комплексная проверка конфигурации
🔐 Безопасное хранение : обработка конфиденциальных данных с шифрованием
💾 Резервное копирование/восстановление : автоматическое версионирование конфигурации
📋 Генерация шаблонов : создание шаблонов конфигурации
📊 Комплексные отчёты
🌐 HTML-отчёты : интерактивные отчёты со стилями CSS и адаптивным дизайном
📄 Несколько форматов : экспорт в JSON, CSV и в будущем PDF
👔 Сводка для руководства : оценка рисков и ключевые выводы для руководства
🔧 Технические детали : детальный анализ для команд безопасности
📈 Диаграммы и графики : визуальные тренды угроз и аналитические диаграммы
⚡ Показатели производительности : время выполнения и использование системных ресурсов
⚙️ Технические характеристики
📦 Сводка функций модулей
📝 SecurityLogger.psm1
Initialize-SecurityLogger: настройка системы ведения журнала
Write-SecurityLog: запись структурированных записей журнала
Get-SecurityLogs: получение отфильтрованных журналов
Export-SecurityLogs: экспорт журналов в нескольких форматах
Close-SecurityLogger: очистка ресурсов журналирования
🔬 DLLAnalyzer.psm1
Start-DLLAnalysis: комплексный анализ DLL
Analyze-DLLFile: анализ отдельного файла
Create-DLLBaseline: создание эталона
Review-PendingDLLs: интерактивный процесс одобрения
🎯 ThreatDetector.psm1
Start-ThreatDetection: анализ угроз по нескольким шаблонам
Analyze-LogPath: обработка каталогов журналов
Analyze-LogFile: обработка отдельного файла журнала
Invoke-ThreatCorrelation: корреляция шаблонов атак
Reset-LogBookmarks: очистка закладок обработки
Clear-EventCache: сброс кэша событий
⚙️ ConfigManager.psm1
Initialize-SecurityConfig: загрузка и проверка конфигурации
Import-SecurityConfig: импорт из JSON-файлов
Export-SecurityConfig: сохранение конфигурации с шифрованием
Test-SecurityConfig: проверка целостности конфигурации
Get-ConfigValue: получение значений конфигурации
Set-ConfigValue: обновление значений конфигурации
New-ConfigTemplate: генерация шаблонов конфигурации
Backup-SecurityConfig: создание резервных копий конфигурации
📊 ReportGenerator.psm1
New-SecurityReport: генерация комплексных отчётов
Prepare-ReportData: обработка и анализ результатов
New-HTMLReport: создание интерактивных HTML-отчётов
⚙️ Категории конфигурации
📧 EmailSettings : SMTP-конфигурация и настройки оповещений
🔍 ScanSettings : параметры сканирования и настройка производительности
🔬 DLLAnalysisSettings : поведение анализа DLL и пороговые значения
🎯 ThreatDetectionSettings : настройки шаблонов угроз и корреляции
📝 LoggingSettings : уровень журналирования, формат и политики хранения
⚡ PerformanceSettings : лимиты памяти и оптимизация обработки
🔐 SecuritySettings : требования к шифрованию и привилегиям
📅 ScheduledTaskSettings : конфигурация автоматического выполнения
🚨 AlertingSettings : оповещения в реальном времени и правила эскалации
📊 ReportingSettings : параметры генерации и форматирования отчётов
🔧 Развёртывание и установка
📋 Предварительные требования
✅ Windows PowerShell 5.1 или PowerShell Core 6.0+
✅ Среда SharePoint 2019 или SharePoint Online
✅ Права администратора для полной функциональности
✅ Доступ к SMTP-серверу для email-оповещений (необязательно)
📥 Шаги установки
📂 Извлеките все файлы в защищённый каталог
⚙️ Просмотрите и настройте SharePointSecurityConfig.json
🎮 Запустите демонстрацию: .\Demo-EnhancedScript.ps1 -CreateSampleData
📐 Создайте эталон DLL: .\SharePoint-Security-Monitor.ps1 -CreateBaseline
📅 Установите запланированные задачи: .\SharePoint-Security-Monitor.ps1 -ManageTasks -TaskAction Install
🔍 Выполните первоначальное сканирование: .\SharePoint-Security-Monitor.ps1
🔐 Рекомендации по безопасности
👤 Запускайте с соответствующими правами администратора
🔒 Храните файлы конфигурации в защищённых местах
🔐 Используйте зашифрованное хранение конфиденциальных учётных данных
🛡️ Обеспечьте надлежащий контроль доступа к файлам журналов
💾 Регулярно создавайте резервные копии конфигурации и эталонных данных
⚙️ Конфигурация Отредактируйте SharePointSecurityConfig.json, чтобы настроить:
📧 Настройки электронной почты (SMTP-сервер, получатели)
🔍 Параметры сканирования (временные диапазоны, лимиты размера файлов)
🎯 Пороговые значения безопасности и уровни оповещений
⚡ Настройки оптимизации производительности
🛡️ Шаблоны обнаружения угроз и правила корреляции
📧 Настройка электронной почты Скрипт предварительно настроен на отправку оповещений:
🚪 Коды выхода
✅ 0 : Проблемы безопасности не обнаружены
⚠️ 1 : Обнаружены предупреждения
🚨 2 : Обнаружены критические проблемы безопасности
❌ 99 : Ошибка выполнения скрипта
🎯 Достигнутые преимущества
👥 Для команд безопасности
⚡ Более быстрый анализ : модульная архитектура обеспечивает точечный анализ конкретных угроз
👁️ Лучшая наблюдаемость : комплексные отчёты с визуальными диаграммами и трендами
🎯 Снижение ложных срабатываний : скоринг на основе ML и поведенческий анализ
🔄 Оптимизированный рабочий процесс : автоматизированные процессы одобрения и управление задачами
🔧 Для системных администраторов
🛠️ Проще обслуживание : модульная архитектура упрощает обновления и настройку
⚡ Лучшая производительность : оптимизированные алгоритмы и кэширование снижают использование ресурсов
⚙️ Гибкая конфигурация : настройки под конкретные среды и валидация
🤖 Автоматизированные операции : запланированные задачи и автоматическое управление эталонами
👔 Для руководства
📊 Отчётность для руководства : понятная оценка рисков и сводка ключевых выводов
✅ Поддержка соответствия требованиям : детальные журналы аудита и полная документация
💰 Экономическая эффективность : меньше ручного труда и более быстрое реагирование на инциденты
📈 Прозрачность рисков : оценка уровня угроз в реальном времени и анализ трендов
📅 История версий
🆕 v4.0 : модульная архитектура со специализированными модулями, скоринг угроз на основе ML и улучшенные отчёты
📦 v3.9 : улучшенная валидация DLL и анализ шаблонов (оригинальный комплексный однофайловый скрипт)
🔄 v3.8 : рабочие процессы автоматического одобрения и детальные отчёты об атаках
🔮 Возможности будущих улучшений
🤖 Интеграция машинного обучения : продвинутые ML-модели для прогнозирования угроз
☁️ Облачная интеграция : интеграция с центром безопасности Azure/Office 365
🔌 Разработка API : REST API для интеграции с внешними системами
📱 Мобильная панель : интерфейс отчётов, адаптированный для мобильных устройств
🌐 Каналы threat intelligence : интеграция с коммерческими источниками данных об угрозах
🤖 Автоматическое реагирование : автоматические действия по сдерживанию и устранению угроз
📄 Лицензия Этот проект предназначен для мониторинга безопасности SharePoint и обнаружения угроз.
💬 Поддержка По вопросам технической поддержки и инцидентам безопасности обращайтесь: [email protected]
🛡️ Защищаем среды SharePoint с 2024 года 🛡️
Сделано с ❤️ командой Security Operations Center