مقایسه دو راهکار SIEM مطرح: ELK و Splunk

مقاله حاضر در بخش اول به بررسی قابلیت‌های مختلف Splunk (اسپلانک) و ELK و در بخش دوم مقایسه‌ای بین این دو راهکار صورت خواهد گرفت.

Splunk

اسپلانک (Splunk) یک نرم‌افزار جهت ذخیره‌سازی، جست‌و‌جو، بررسی و تجزیه و تحلیل داده‌ها است. با استفاده از Splunk می‌توانیم با بررسی و تجزیه و تحلیل داده‌ها، الگوها و ارتباطات منطقی بین داده‌ها را پیدا کرده و با ارائه اطلاعات مفید و پیش‌بینی خطرات و ریسک‌ها، مشکلات موجود را برطرف کنیم و با کاهش هزینه‌ها، بهره وری را افزایش دهیم. Splunk این قابلیت را فراهم کرده است تا برای درک بهتر از اتفاقات مختلف امنیتی، از داده‌ها گزارش بگیریم، هشدار بسازیم و داده‌ها را به صورت گرافیکی، روی یک Table، چارت، نقشه و یا داشبورد نشان دهیم.

از جمله ویژگی‌های Splunk می‌توان به موارد زیر اشاره کرد.

  • معماری پیاده‌سازی با محوریت تحلیل Big Data
  • تحلیل رخدادهای امنیتی با ماژول‌های مختلف
  • تحلیل داده‌ها بر اساس الگوی رفتاری اجزا و کاربران
  • پیگیری خودکار رفتارهای مشکوک به منظور کشف اقدامات بعدی
  • پیاده‌سازی طرح‌های مقابله با حوادث به صورت پیش‌فرض
  • هماهنگ سازی، خودکارسازی و پاسخگویی به رخدادهای امنیتی

ELK

یکی از نزدیک‌ترین راهکارها در دنیای امنیت به Splunk را شاید بتوان محصول ELK Stack دانست. بر اساس مشاهدات و شنیده‌‌ها، در کشور ما، میزان استفاده از این راهکار، برخلاف اسپلانک خیلی رایج و فراگیر نیست، اما بنابر دلایلی در برخی از سازمان‌های کشور استفاده شده است.

در کنار این دو راهکار، محصولات بومی مختلفی نیز در کشور وجود دارد که اغلب آن‌ها بر پایه محصولات متن‌باز مانند ELK Stack توسعه پیدا کرده است و معایب و مزیت‌های مختلفی را دارند که در ادامه به بررسی و مقایسه آنها پرداخته می‌شود.

جدول 2- جدول مقایسه Splunk و ELK

ردیف موارد Splunk ELK
عمومی
1 روش‌های مدیریت سامانه وب کنسول وب کنسول
2 زبان پیاده سازی زبان پیاده ­سازی: C++ زبان پیاده­ سازی: Java
3 مستندات آموزشی راهنمای جامع و کاربردی آنلاین راهنمای موردی آنلاین
4 پلتفرم All OS All OS
مدیریت داده
5 جمع ­آوری داده ­ها syslog

Splunk Forwarder

syslog

Beats که خود دسته‌بندی‌های زیادی را شامل می‌شود:

Filebeat, Metricbeat, Packetbeat, Winlogbeat, Auditbeat, Heartbeat, Functionbeat

6 فرمت داده ­ها تمامی فرمت‌های شناخته‌شده و رایج فرمت‌های محدود بسته به معماری
نرمال‌سازی داده‌ها نرمال‌سازی انواع داده و دیتاسرس‌ها با توجه به وجود Technology Addonهای رایگان موجود در سایت اسپلانک با توجه به فرمت و نوع داده، نیاز به توسعه دارد.
7 پایگاه­ داده NoSQL NoSQL
8 جمع ­آوری و هم ­بسته ­سازی داده Aggregation

Real Time Correlation

Historical Correlation

Aggregate filter

Elast Alerts (Historical Correlation)

 

جستجو
زبان جستجو زبان جستجوی قدرتمند SPL زبان جستجوی محدود KQL
10 قابلیت­‌‌های جستجو قابلیت استفاده از External Lookup

قابلیت استفاده از ماکروها

قابلیت استفاده از Data Model

قابلیت استفاده از Tag

قابلیت استفاده از Event Type

گزارش گیری و مصورسازی
11 تاریخچه مدیریت داده گزارش­ گیری از جستجو­های ذخیره ­شده، داشبوردها و غیره

تنظیم گزار­ش­ دهی زمان­بندی شده، اولویت بندی گزارش­ زمان­بندی شده

شخصی­ سازی گزارش

قابلیت Drill down منعطف

خروجی PDF، CSV و Json

گزارش­گیری از داشبورد، Kibana visualization و داده خام

شخصی ­سازی گزارش

قابلیت Drill down محدود

خروجی PDF، CSV و Json

12 هشدار­های امنیتی سیستم هشدار اختصاصی

امکان ایجاد هشدار لحظه ای و یا زمان­بندی ­شده

وجود رول‌های آماده در ماژول ES

امکان پاسخ به هشدار به طرق مختلف بدون نیاز به نصب ماژول جداگانه (در صورت استفاده از Appها و ماژول‌های مختلف، این قابلیت‌ها بیشتر می‌شود. )

سیستم هشدار اختصاصی ندارد ( نیاز به راه‌اندازی Elast Alert)

رول آماده ندارد.

امکان پاسخ به هشدار به صورت محدود و پس از نصب Elast Alert وجود دارد.

مانیتورینگ
13 مانیتورینگ Log سرور­ها و تجهیزات با استفاده از Appها و TAهای مختلف استفاده از Metricbeat, Filebeats به منظور جمع­آوری Log­های مربوطه
14 مانیتورینگ Log شبکه استفاده از Splunk Add-Ons به منظور جمع آوری Log­های شبکه استفاده از Packetbeat به منظور جمع­آوری Log­های شبکه، ترافیک و Netflow
15 مانیتورینگ Cloud Logs استفاده از Splunk Add-Ons برای Cloud­های متفاوت با استفاده از Logstash, Filebeat, Modules
16 مانیتورینگ Containers Log ذخیره­ سازی Log­های درایور برای Docker استفاده ازLogstash, File Beat & Metric Beat, Logstash processors  برای جمع ­آوری Docker Logs
17 مانیتورینگ Log پایگاه­داده از طریق Splunk add-ons برای پایگاه ­داده ­های مختلف و همچنین Splunk DB connect به صورت محدود از طریق Filebeat Modules, Logstash
18 مانیتورینگ Log کاربران و نرم­افزار­ها از طریق Splunk Appهای مختلف از طریق APM، Beat­های مختلف،

Logstash Correlation, X-Pack Components

19 آنالیز پشتیبانی از Machine learning با MLTK نیاز به خرید و راه‌اندازی ماژول xpack
دیگر ویژگی ها
20 سفارشی سازی / توسعه پذیری قابلیت انعطاف­پذیری به منظور اضافه ­کردن یا ویراش کامپوننت­‌‌ها و View­ها بر روی داشبورد­ها

قابلیت توسعه­ پذیری و یکپارچه­سازی با دیگر ابزار و پلاگین­ها

دسترسی­‌‌های برنامه ­نویسی از طریق REST HTTP/JSON API

مدیریت کاربران

امکان ایجاد داشبورد­های سفارشی

مجموعه متریک ­های سفارشی و پلاگین‌‌ها

قابل توسعه و یکپارچه ­سازی با دیگر ابزار با Webhooks و پلاگین­ها

دسترسی ­های برنامه­ نویسی از طریق REST HTTP/JSON API

مدیریت کاربران از طریق X-Pack

21 مقیاس پذیری با حداقل سربار ممکن، امکان پیاده­ سازی ساختار توزیع‌شده با قابلیت‌های مختلف را فراهم می‌آورد. امکان پیاده ­سازی ساختار Clustering را دارد. اما این موضوع نیازمند تحقیق و توسعه داشته و سربار زیادی را متحمل سازمان می‌کند.
22 پشتیبان­ گیری/ بازیابی پشتیبان­گیری از پیکربندی، Index­ها و سایر موارد پشتیبان‌گیری از داشبوردها، Indexها و

سایر موارد

ویژگی‌‌های پشتیبانی و مالی
23 قابلیت بروز رسانی دارد دارد
26 لایسنسینگ تجاری

( اما لایسنس Share و Crack نیز وجود دارد)

متن باز

( اما قابلیت‌های مختلف دیگری که موردنیاز است، از طریق ماژول xpack انجام می‌شود که تجاری است)