آشنایی با Splunk User Behavior Analytics(UBA)
UBA مخفف عبارت User behavior analytics یا آنالیز رفتار کاربر، یکی از راهکارهای شناسایی تهدیدات مبتنی بر پایش و تحلیل رفتار کاربران است که از مدلسازی رفتاری و روش تجزیه و تحلیل گروههای کاری همسان و مکانیزم Machine Learning برای آشکارسازی تهدیدات پنهان محیط عملیاتی شما استفاده می کند، UBA بطور خودکار رفتارهای مشکوک را از بین کاربران، تجهیزات و برنامه های کاربردی شناسایی کرده و با ترکیب الگوهای بدست آمده، رفتار های مشکوک را گزارش می کند.
در این ابزار، بررسی و پاسخ به تهدیدات شناسایی شده با بررسی سناریوی ساده شده تهدیدات صورت می گیرد و در نتیجه قادر خواهد بود دید شفافی نسبت به فعالیت مشکوک و شواهد آن ارائه دهد.
UBA با ارائه اطلاعات دقیق و شفاف به تحلیل گران امنیت سازمان کمک می کند تا بر روی تهدیدات و رفتارهای غیر متعارف در طول مراحل شکل گیری حمله (kill Chain) متمرکز شده و باعث افزایش اثربخشی و کارایی کارشناسان امنیت می گردد.
نحوه عملکرد UBA
UBA داده ها را از پلتفرم Splunk دریافت کرده و عملیات مختلفی را بر روی داده های دریافتی انجام می دهد تا با تحلیل و بررسی دقیق آنها درک بهتری از رفتار کاربران در محیط کسب و کار ارائه دهد.
اولین مرحله، نرمال سازی داده های دریافتی است. UBA پارامترهایی مانند نام تجهیزات، دامین ها و کلیه حساب های کاربری که در داده های سیستم های احراز هویت وجود دارند را تجمیع کرده و در قالب یک شناسه واحد ارائه می کند، با در نظر گرفتن این شناسه واحد، کلیه رویدادهای متاثر از این شناسه را مورد تحلیل و بررسی قرار میدهد بگونه ای که وابستگی بین آدرس IP، نام host و کاربر مشخص شود.
در مرحله بعد UBA برای ایجاد خط مشی رفتاری پارامترهایی نظیر رفتار کاربران، تجهیزات، برنامه های کاربردی، تعاملات بخشهای مختلف سازمان و گروههای کاری همسان را مبنای کار خود قرار می دهد و در این راستا با استفاده از الگوریتمهای نظارت نشده machine learning، میزان انحراف داده های رفتاری از رفتار نرمال را مشخص می کند.
بدین ترتیب UBA با در نظر گرفتن میزان انحراف رفتاری از خط مشی رفتار نرمال کاربر و با بکارگیری مدلها، الگوها و قوانینِ تهدید، رفتار های غیر متعارف را شناسایی کرده و آنها را بعنوان یک تهدید گزارش می کند، چنانکه می دانید یک رفتار نامتعارف یا anomaly ممکن است لزوما نشان دهنده وجود تهدید سایبری در محیط عملیاتی شما نباشد بلکه در یک بازه زمانی مجموعه ای از رفتارهای نامتعارف می توانند بیانگر تهدیدی باشند که باید مورد بررسی و رسیدگی قرار گیرند. درواقع مدلهای تشخیص تهدیدات میتواند رفتارهای نامتعارف را بهم پیوند زده و یک روایت نقطه به نقطه درباره تهدید سایبری واقعی ارائه کنند.
ارتباط UBA با سایر اجزای راهکار Splunk
UBA داده های مورد نیاز خود را از پلتفرم Splunk دریافت می کند، بر خلاف سایر محصولات امنیتیِ اسپلانک که بصورت برنامه های کاربردی داخل نرم افزار اسپلانک پیاده سازی میشوند، UBA به صورت یک سرویس مجزا و بر روی منابع اختصاصی مجزا مانند سرورهای فیزیکی یا سرورهایی که درون سازمان شما در زیرساخت ابری پیاده سازی شده باشند نصب و پیاده سازی می شود.
مزیت های یکپارچه سازی UBA با Splunk
ادغام UBA و پلتفرم splunk و استفاده یکپارچه از آنها مزایای زیر را به همراه خواهد داشت:
- در صورت تشخیص رفتار نامتعارف، UBA این تهدید را در قالب یک رویداد به سرویس Slunk شما ارسال خواهد کرد، بدین ترتیب رخدادهای خامی که در وقوع این رفتار مشارکت داشته باشند به صورت اطلاعات تکمیلی قابل مشاهده و بررسی خواهند بود.
- امکان تبادل اطلاعات بین ماژول های مختلف splunk، بطور ویژه قابلیت ارسال رخدادهای قابل تامل از ماژول امنیتی Splunk ES به UBA و متقابلا ارسال تهدیدات و رفتارهای غیرمتعارف از UBA به ES وجود خواهد داشت و با همگام شدن این دو دسته از اطلاعات، بررسیهای امنیتی مجموعه شما از ثبات و تداوم بیشتری برخوردار خواهد بود.
معماری پیاده سازی Splunk UBA
برای مقیاس بندی مناسب UBA Splunk در یک محیط عملیاتی توزیع شده، task های مشخصی به هر سرور فیزیکی یا هر گره (Node) موجود در cluster اختصاص داده میشود، بدین ترتیب روی هر گره سرویس های ویژه ای برای پشتیبانی از task ها نصب خواهد شد. سرویس های نصب شده بر اساس سایز و اندازه cluster می توانند متنوع باشند، بطور مثال در یک پیاده سازی با هفت گره، سرویسهای Spark فقط روی گره هفتم نصب میشوند در حالیکه سرویسهای Hadoop روی تمام گره ها غیر از گره شماره ۳ نصب خواهند شد.
در پیاده سازی تک گره ای تمام سرویسها روی یک گره پیاده سازی خواهند شد.
تمام گره های موجود در پیکربندی Splunk UBA باید پیش نیازهای لازم برای پیاده سازی UBA را داشته باشند.
Management Server
این سرور میزبان رابط کاری تحت وب UBA Splunk است، شما فقط به یک سرور مدیریتی نیاز خواهید داشت. سروریسهایی که باید روی این سرور نصب شوند عبارتند از:
- UI server
- job manager master
- InfluxDB server
- PostgreSQL
- Impala
- Zookeeper Quorum
Streaming server
سرورهای streaming، سرورهای منطقی ای هستند که وظیفه پردازش داده ها را در مدلهای گوناگون stream در UBA برعهده دارند، برخی از این مدل ها عبارتند از:
- Web Beaconing Detection Model
- Network Transport Model
- Land Speed Violation Model
- Unusual Windows Events Sequences Model
سرورهای streaming داده های بدست آمده را بصورت بلادرنگ مورد بررسی قرار میدهند و شدت رخدادهای سایبری را در بازه زمانی کوتاهی (حدود یک ساعت) در یک پنجره جداگانه نمایش میدهند، بر اساس این تجزیه و تحلیل، سرورهای streaming می توانند انبوهی از موارد مانند رفتارهای غیر متعارف، IoC* ها و داده های تحلیلی را در splunk UBA ایجاد کنند.