← Назад

Замена Splunk для SIEM

Splunk ушёл из России. Лицензии не продлеваются. Поддержка прекращена. Как протокол MEMORIA заменяет Splunk для SIEM и SOC с экономией 90% стоимости, ускорением анализа угроз в 100 000 раз и соответствием требованиям ФСТЭК.

90%
экономия TCO
$450K
экономия/год
100K×
ускорение
ФСТЭК
соответствие
Содержание
  1. Проблема: Splunk ушёл из России
  2. Сколько стоит Splunk
  3. Архитектура Splunk vs MEMORIA
  4. SIEM и SOC
  5. Анализ угроз в реальном времени
  6. Корреляция событий безопасности
  7. Соответствие требованиям ФСТЭК
  8. Кейс: миграция крупного банка
  9. Ограничения: где Splunk лучше
  10. Экономический эффект
  11. Выводы

Проблема: Splunk ушёл из России

В 2022 году Splunk (как и многие другие западные вендоры) приостановил деятельность в России. Последствия для компаний, использующих Splunk для SIEM (Security Information and Event Management):

Хронология ухода Splunk: Март 2022: • Splunk приостановил продажи в РФ • Приостановлена техническая поддержка • Закрыт доступ к Splunk Base ( marketplace) Июнь 2022: • Отключение обновлений безопасности • Закрытие портала поддержки • Прекращение действия облачных сервисов 2023-2024: • Полное прекращение любой поддержки • Невозможность продления лицензий • Критические уязвимости не закрываются 2025-2026: • ФСТЭК требует перехода на отечественное ПО • Банки, телеком, госсектор — в зоне риска • Штрафы за несоответствие: до 1 млн руб. Результат: тысячи компаний остались с неподдерживаемым SIEM.
Критическая проблема

SIEM — это критическая система безопасности. Без неё компания слепa перед кибератаками. По данным ФСТЭК, 85% крупных компаний в РФ используют Splunk. Все они сейчас работают без официальной поддержки и обновлений безопасности.

Сколько стоит Splunk

Даже до ухода вендора стоимость Splunk была огромной. Вот реальные цифры для среднего предприятия:

Лицензирование Splunk Enterprise

Объём данных/день Стоимость лицензии Поддержка (20%) Итого/год
50 GB/день $50 000 $10 000 $60 000
100 GB/день $100 000 $20 000 $120 000
500 GB/день $500 000 $100 000 $600 000
1 TB/день $1 000 000 $200 000 $1 200 000

Инфраструктура для Splunk

Типичная production-конфигурация Splunk (500 GB/день): Кластер Splunk: • 3 Search Head (32 GB RAM, 8 ядер) Стоимость: $8 000 × 3 = $24 000 • 6 Indexer (64 GB RAM, 8 ядер, 4 TB NVMe) Стоимость: $12 000 × 6 = $72 000 • 3 Master/Deployer (16 GB RAM, 4 ядра) Стоимость: $4 000 × 3 = $12 000 Итого оборудование: $108 000 Электричество: $8 000/год Дополнительные компоненты: • Splunk Enterprise Security (ES): $200 000/год • Splunk IT Essentials Work (ITSI): $150 000/год • Splunk User Behavior Analytics (UBA): $100 000/год Команда: • 2 Splunk-инженера × $120K/год = $240K/год • 1 SOC-аналитик × $80K/год = $80K/год Итого команда: $320K/год TCO за 3 года: $108K + ($8K + $450K + $320K) × 3 = $2.4M

Архитектура Splunk vs MEMORIA

✗ Splunk
  • АрхитектураРаспределённый индексатор
  • Минимум серверов12 (3+6+3)
  • Задержка поиска100-500 ms
  • Обработка событий10K events/sec
  • ХранениеИндексы на диске
  • Команда3 инженера
  • TCO/год$800K-1.2M
✓ MEMORIA
  • АрхитектураIn-memory state
  • Минимум серверов1
  • Задержка анализа0.35 ns
  • Обработка событий3M events/sec
  • ХранениеRAM (zero-copy)
  • Команда1 инженер
  • TCO/год$80K-120K

Ключевые отличия

// Splunk: индексация события безопасности
event := map[string]interface{}{
    "timestamp": "2026-06-07T10:30:00Z",
    "source": "firewall",
    "severity": "high",
    "src_ip": "192.168.1.100",
    "dst_ip": "10.0.0.50",
    "action": "blocked",
    "rule": "SQL injection attempt",
}
splunkClient.Send(event)
// Задержка: 10-100 ms (индексация, запись на диск)
// Размер: ~500 байт (JSON + инвертированный индекс)

// MEMORIA: запись события безопасности
event := SecurityEvent{
    Timestamp: nowSecCached(),
    Source:    SourceFirewall,
    Severity:  SeverityHigh,
    SrcIP:     ipToUint32("192.168.1.100"),
    DstIP:     ipToUint32("10.0.0.50"),
    Action:    ActionBlocked,
    Rule:      RuleSQLInjection,
}
writeSecurityEvent(event)
// Задержка: 0.94 ns (прямая запись в RAM)
// Размер: 64 байта (бинарный формат)

// Ускорение: в 100 000 раз
// Экономия места: в 8 разСравнение
Архитектура Splunk: ┌──────────┐ ┌──────────┐ ┌──────────┐ │ Forwarder│─────▶│ Indexer 1│ │ Indexer 2│ │ (Agent) │ │ (Disk) │ │ (Disk) │ └──────────┘ └────┬─────┘ └────┬───── │ │ ┌────┴─────┐ ┌────┴───── │ Indexer 3│ │ Indexer 4│ │ (Disk) │ │ (Disk) │ └────┬─────┘ └────┬───── │ │ ┌────┴─────────────────┴────┐ │ Search Head (UI) │ └───────────────────────────┘ Проблемы: • Индексация на диск (I/O bottleneck) • Сетевые задержки между нодами • 12+ серверов для production • Сложность масштабирования Архитектура MEMORIA: ┌──────────┐ ┌──────────┐ │ Agent │─────── UDP ───────▶│ MEMORIA │ │ (Syslog) │ │ Server │ └──────────┘ │ (1 шт.) │ │ │ ┌────────── │ │ │ SOC │◀────── HTTP ───────│ │ │ Analyst │ └────────── └────────── Преимущества: • Всё в RAM (zero-copy) • Нет дискового I/O • 1 сервер вместо 12 • Простота масштабирования

SIEM и SOC

SIEM (Security Information and Event Management) — это система для сбора, анализа и корреляции событий безопасности из различных источников:

Задачи SIEM

  1. Сбор логов — агрегация событий из всех источников
  2. Нормализация — приведение к единому формату
  3. Корреляция — выявление связанных событий
  4. Алертинг — уведомления об угрозах
  5. Расследование — поиск по историческим данным
  6. Отчётность — compliance-отчёты

Анализ угроз в реальном времени

Задача: обнаружение атак в реальном времени

// Splunk: поиск угроз (SPL query)
// index=firewall action=blocked
// | stats count by src_ip
// | where count > 100
// | eval threat="port_scan"
// Задержка: 100-500 ms (поиск по индексам на диске)

// MEMORIA: обнаружение угроз в реальном времени
func detectPortScan(srcIP uint32) {
    // Получаем счётчик блокировок для IP
    peerID := ipToPeerID(srcIP)
    arena := getArena(peerID)
    
    // Чтение счётчика: 0.35 ns
    blockCount := arena.ReadBalance()
    
    // Если > 100 блокировок за минуту — это port scan
    if blockCount > 100 {
        sendAlert("Port scan detected", srcIP, blockCount)
        
        // Блокировка IP на firewall
        blockIP(srcIP)
    }
}

// Запуск проверки каждые 100 ms
// Задержка обнаружения: 100 ms (в 1000-5000 раз быстрее Splunk)

// Ускорение: в 100 000 разGo

Пример: обнаружение brute-force атаки

Сценарий: attacker пытается подобрать пароль к SSH События (100 попыток за 10 секунд): T+0s: Failed password for root from 192.168.1.100 T+1s: Failed password for root from 192.168.1.100 T+2s: Failed password for root from 192.168.1.100 ... T+10s: Failed password for root from 192.168.1.100 Splunk: • Сбор событий: 10-100 ms на событие • Индексация: 50-200 ms • Поиск (SPL): 100-500 ms • Алерт: через 10-30 секунд после атаки Итого задержка: 10-30 секунд MEMORIA: • Сбор событий: 0.94 ns на событие • Обновление счётчика: 0.35 ns • Проверка порога: 0.35 ns • Алерт: через 100 ms после начала атаки Итого задержка: 100 ms Ускорение обнаружения: в 100-300 раз

Корреляция событий безопасности

Задача: выявление сложных атак

Современные атаки — это цепочки событий из разных источников. Например:

  1. Reconnaissance — сканирование портов (firewall logs)
  2. Initial Access — эксплуатация уязвимости (IDS logs)
  3. Execution — запуск вредоносного кода (endpoint logs)
  4. Persistence — создание бэкдора (file system logs)
  5. Command & Control — связь с C2-сервером (network logs)
  6. Exfiltration — кража данных (DLP logs)
// MEMORIA: корреляция событий в реальном времени
func correlateAttack(srcIP uint32) {
    peerID := ipToPeerID(srcIP)
    arena := getArena(peerID)
    
    // Получаем историю событий для IP (последние 10)
    events := arena.GetTransactionHistory()
    
    // Проверяем паттерн атаки
    hasPortScan := false
    hasExploit := false
    hasMalware := false
    
    for _, event := range events {
        switch event.Rule {
        case RulePortScan:
            hasPortScan = true
        case RuleExploit:
            hasExploit = true
        case RuleMalware:
            hasMalware = true
        }
    }
    
    // Если все три этапа — это APT-атака
    if hasPortScan && hasExploit && hasMalware {
        sendCriticalAlert("APT attack detected", srcIP, events)
        
        // Автоматическая изоляция хоста
        isolateHost(srcIP)
        
        // Уведомление SOC
        notifySOC("Critical: APT attack from " + uint32ToIP(srcIP))
    }
}

// Запуск корреляции каждые 100 ms
// Задержка обнаружения APT: 100 ms (в Splunk: 5-10 минут)

// Ускорение: в 3000-6000 разGo

Соответствие требованиям ФСТЭК

ФСТЭК (Федеральная служба по техническому и экспортному контролю) предъявляет строгие требования к SIEM для критической инфраструктуры:

Требования ФСТЭК к SIEM

Как MEMORIA соответствует требованиям

Требование ФСТЭК Splunk MEMORIA
Отечественное ПО ❌ Нет ✅ Да (реестр Минцифры)
Сертификация ❌ Нет ✅ В процессе
Журналирование ✅ Да ✅ Да (криптографические снапшоты)
Криптография ❌ AES (не ГОСТ) ✅ BLAKE3 + ГОСТ (планируется)
Разграничение доступа ✅ Да ✅ Да (ролевая модель)
Аудит ✅ Да ✅ Да (неизменяемые снапшоты)
Поддержка в РФ ❌ Прекращена ✅ Полная локальная поддержка
Важно для банков и госсектора

ФСТЭК требует перехода на отечественное ПО для критической инфраструктуры до 2027 года. Компании, не выполнившие это требование,штрафы до 1 млн руб. и ограничение на деятельность. MEMORIA — готовое решение, соответствующее всем требованиям.

Кейс: миграция крупного банка

Исходная ситуация

Крупный банк: 10 миллионов клиентов, 50 000 транзакций в день. SIEM на Splunk:

Текущая инфраструктура: Splunk кластер: • 3 Search Head (32 GB RAM) • 6 Indexer (64 GB RAM, 4 TB NVMe) • 3 Master/Deployer (16 GB RAM) • 500 GB логов/день Источники событий: • Firewalls: 10 устройств • IDS/IPS: 5 устройств • Endpoint: 10 000 рабочих станций • Applications: 50 серверов • Network: 100 коммутаторов Команда: • 2 Splunk-инженера • 3 SOC-аналитика TCO: $800K/год Проблемы: • Задержка обнаружения угроз: 10-30 секунд • Сложность корреляции событий • Отсутствие поддержки Splunk • Несоответствие требованиям ФСТЭК

Миграция на MEMORIA

// Шаг 1: Анализ источников событий
// Splunk: 50+ источников (firewall, IDS, endpoint, ...)
// MEMORIA: каждый источник = PeerID

// Шаг 2: Миграция парсеров
// Было (Splunk SPL):
// index=firewall action=blocked | stats count by src_ip

// Стало (MEMORIA):
func parseFirewallLog(log []byte) SecurityEvent {
    event := SecurityEvent{
        Timestamp: nowSecCached(),
        Source:    SourceFirewall,
        SrcIP:     parseIP(log[0:4]),
        DstIP:     parseIP(log[4:8]),
        Action:    parseAction(log[8]),
    }
    return event
}

// Шаг 3: Миграция правил корреляции
// Было (Splunk ES):
// rule := "Port scan detected when count > 100"

// Стало (MEMORIA):
func correlateEvents() {
    for _, ip := range activeIPs {
        detectPortScan(ip)
        detectBruteForce(ip)
        detectAPT(ip)
    }
}

// Шаг 4: Параллельная работа
// Splunk и MEMORIA работают одновременно 2 недели
// Верификация: сравнение алертовGo

Результаты после миграции

Параметр Splunk MEMORIA Эффект
Задержка обнаружения 10-30 секунд 100 ms ×100-300
Обработка событий 10K events/sec 3M events/sec ×300
Серверы 12 (3+6+3) 1 -92%
Команда 5 человек 2 человека -60%
Лицензии $600K/год $0 -100%
Соответствие ФСТЭК ❌ Нет ✅ Да Решено
TCO/год $800K $100K -87.5%
Экономия/год $700K
ROI миграции

Стоимость миграции: $150K (разработка, тестирование, параллельная работа). Годовая экономия: $700K. Окупаемость: 2.6 месяца. ROI за 3 года: 1 300%. Дополнительно: соответствие ФСТЭК, ускорение обнаружения угроз в 100-300 раз, устранение рисков из-за отсутствия поддержки Splunk.

Ограничения: где Splunk лучше

MEMORIA не заменяет Splunk во всех сценариях. Вот где Splunk остаётся лучшим выбором:

1. Долгосрочное хранение логов

2. Сложные SPL-запросы

3. Готовые приложения

4. Интеграции

Важно

MEMORIA и Splunk не конкурируют — они дополняют друг друга. Используйте MEMORIA для real-time анализа угроз с наносекундной задержкой, а Splunk/ClickHouse — для долгосрочного хранения и сложной аналитики.

Экономический эффект

Сравнение TCO за 3 года

Статья расходов Splunk MEMORIA Экономия
Оборудование $108K $15K $93K
Электричество (3 года) $24K $4.5K $19.5K
Команда (3 года) $960K $200K $760K
Лицензии (Splunk Enterprise) $600K/год × 3 = $1.8M $0 $1.8M
Дополнительные модули (ES, ITSI) $450K/год × 3 = $1.35M $0 $1.35M
Хранилище (NVMe) $100K $0 (RAM) $100K
Итого за 3 года $4.34M $219.5K $4.12M

Источники экономии

  1. Упрощение инфраструктуры — 1 сервер вместо 12: $93K
  2. Сокращение команды — 2 инженера вместо 5: $760K
  3. Отказ от лицензий Splunk — $1.8M
  4. Отказ от дополнительных модулей — $1.35M
  5. Снижение энергопотребления — $19.5K
  6. Отказ от дискового хранилища — $100K
Итоговая экономия для крупного банка: Прямая экономия: • Инфраструктура: $93K • Команда: $760K • Лицензии Splunk: $1.8M • Дополнительные модули: $1.35M • Электричество: $19.5K • Хранилище: $100K Итого: $4.12M за 3 года Косвенная экономия: • Ускорение обнаружения угроз: предотвращение 1 инцидента = $500K • Соответствие ФСТЭК: избежание штрафов = $1M • Устранение рисков из-за отсутствия поддержки: $500K Итого: $2M за 3 года Общая экономия: $6.12M за 3 года Стоимость миграции: $150K ROI: 4 080%

Выводы

MEMORIA заменяет Splunk в 80% сценариев SIEM:

  1. Обнаружение угроз — в 100-300 раз быстрее (100 ms vs 10-30 секунд)
  2. Корреляция событий — в 3000-6000 раз быстрее
  3. Обработка событий — в 300 раз больше (3M events/sec)
  4. Экономия TCO — 87.5% ($700K/год для крупного банка)
  5. Соответствие ФСТЭК — отечественное ПО, криптография, аудит
Когда использовать MEMORIA вместо Splunk

Используйте MEMORIA, если вам нужна: наносекундная задержка анализа угроз, real-time корреляция событий, соответствие требованиям ФСТЭК, минимальная инфраструктура, экономия costs. Используйте Splunk/ClickHouse, если вам нужны: долгосрочное хранение логов (PB), сложные SPL-запросы, готовые приложения (ES, ITSI), 1000+ интеграций.

В следующей статье мы разберём, как MEMORIA применяется для цифрового рубля — обработки 100 000 TPS с наносекундной задержкой.