در قسمت اول و دوم از سری مقالات امنیتی Splunk به بررسی بدافزارها و عوامل موثر در نحوه مانیتورینگ عوامل ناشناخته پرداخته شد و در این قسمت به بیان جزئیات بیشتر در زمینه Hash مربوط به برنامه های مخرب و برنامه های نرمال خواهیم پرداخت.
با استفاده از Splunk میتوان فهرستی از برنامه های اجرایی منحصر به فرد را صرفنظر از نحوه مخفی شدن آنها ارائه نمود. اثر Hash به معنای اجرای یک فایل منحصر به فرد یا یک دستور اجرایی میباشد. ضمن اینکه مجموع این Hashها بیانگر آن است که کدام یک از موارد باید با دقت بیشتری مورد بررسی قرار گیرد.
در شکل زیر نمایی از جستجوی Syntax نشان داده شده است:
همپنین جستجو بر اساس نام برای تمام دستورات اجرایی برخوردار از Hashهای متفاوت در زیر نمایش داده شده است:
بر اساس نتایج جستجو، دستورات مشابه اجرایی svchost.exe با مسیرهای دقیقا مشابه یافت شدند که دارای Hashهای متفاوتی میباشند. این بدان معناست که دو نوع سیستمعامل ویندوز وجود دارد، زیرا این زیرساخت میتواند توازن مطلوبی را میان Hostهای ویندوز 7 و 8 ایجاد نماید. به نظر میرسد که این مساله طبیعی باشد زیرا با توجه به اندازه شبکه و وجود بیش از 200 Host، توزیع Hashها برای فرآیندهای مهم سیستم “svchosts.exe” در مقیاس هر یک از نسخههای ویندوز صورت میگیرد. با در نظر گرفتن مجموع موارد و آگاهی از واقعیتهای اساسی و مهم در مورد امکان اجرای دو نسخه از سیستمعامل در زیرساخت و بررسی دقیق نتایج حاصل از هر دو مورد، میتوان از عادی بودن شرایط مطمئن شد.
برای نمونه بعدی نیز میزان بازده جستجو، شبیه به نمونه قبلی در نظر گرفته میشود. نتایج جستجو بیانگر آن است که میزان توزیع برای دو دستور اجرایی اولِ Hash که بیشترین تعداد را به خود اختصاص دادهاند، یکسان است؛ اما در دستور سوم، تعداد Hostها کمتر بوده و یک SHA1 Hash جدید مشاهده میشود. بدین معنا که دستورات اجرایی مشابه با یک Hash متفاوت و تعداد بسیار کمتری از روندهای ایجاد پروسس به معنای اجرای یک دستور اجرایی جدید با همان نام، به عنوان باینریِ سیستم میباشد. مجموع مقادیر «1» بیانگر یک فرکانس بسیار اندک است و احتمال شناسایی آن به عنوان «دستور اجرایی سیستم» پایین است مگر آنکه نسخه دیگری از سیستمعامل با دستورات اجرایی سیستمیِ متفاوت بر روی شبکه اجرا شود. در غیر اینصورت به عنوان یک Hash مشکوک در نظر گرفته میشود که باید در جستجوی گوگل مورد بررسی قرار گیرد.
به علاوه، تابع (first(TIME در واقع بیانگر ایجاد دستور اجراییِ دارای اختلال برای اولین بار بوده و همچنین نشان میدهد که این دستور در مقایسه با دستورات نرمال اجراییِ svchost.exe که قبلا ایجاد شدهاند، قطعا یک پروسس جدید به شمار میرود. بنابراین تابع First Time به ارائه دیدگاهی نسبت به فرآیندهای قبلی و جدید پرداخته و مجموع مقادیر را برای تشخیص موارد غیرمعمول مورد بررسی قرار میدهد. به علاوه میتوان گفت که Hash سوم و دستور اجرایی جدید Timestamp که به دفعات کمی بروز مییابد، احتمالا یک بدافزار است که توسط برنامه آنتیویروس قابل شناسایی نمیباشد.
به علاوه اینکه باید این موضوع تایید شود که کدام یک از Hostها با Hashهای مربوط به دو دستور نرمال svchost.exe مرتبط میباشند؛ ضمن اینکه Hostهای درگیر در فعالیتهای بالقوه بدافزارها نیز بررسی و شناسایی شوند. بدین ترتیب میتوان با ارائه فهرستی از مقادیر منحصر به فرد از دادههای Sysmon در فیلد کامپیوتر با کمک کارکرد مقادیر (Computer)، این کار را انجام داد.
پس از آنالیز یک پروسس با Hashهای جدید میتوان به شرایط لازم برای تعریف روند شناسایی بدافزارها به عنوان یک پروسس سیستمی دست یافت:
- این امکان وجود دارد که پروسس با توجه به مسیر و نام فایل اجرایی، معمولی و طبیعی به نظر برسد اما Hash مربوط به برنامه اجرایی جدید در مقایسه با Hashهای قدیمی موجود در سیستم، متفاوت خواهد بود.
- فرکانس مربوط به ایجاد پروسس در مقایسه با Hash قابلاجرای موجود در سیستم، بسیار متفاوت میباشد.
با درک ماهیتِ تاکتیکهای Manipulation میتوان به تعریف یک Query پرداخت که عملیات فیلترینگ خودکار را با استفاده از مراحل محاسبه شده و با توجه به مقایسه کمّی تعداد ایجاد پروسس با Hashهای قابل اجرای جدید و قبلی، اجرا مینماید. همچنین این امکان وجود دارد که از «Event-stat»ها برای محاسبه مجموع رویدادها استفاده نمود و آن را برای محاسبه درصد وقوع هر یک از دستورات اجراییِ مجزا به کار گرفت. به این ترتیب میتوان یک Threshold نسبی را به راحتی تعریف کرد تا دستورات اجرایی غیرمعمول یا حتی موارد پنهان شده را شناسایی کرد.
حال این سوال مطرح میشود که چگونه میتوان یک قاعده جستجو را برای نرمافزار Splunk در مورد برنامههای اجرایی غیرمعمول تعریف نمود؟ با توسعهی محاسبات قبلی در مورد کمیتهای نسبی و به کارگیری درصدهای بالاتر از 5 میتوان گروههای نرمال را حذف نمود و با گروههای اجرایی دارای اختلال بر اساس Threshold نسبی روبرو شد.
به علاوه این نوع دستورالعمل را میتوان برای جستجوهای ذخیره شدهی در Splunk Enterprise یا قابلیت جستجوی مرتبط به هم در Enterprise Security به منظور اجرای فرآیند آنالیز و ارسال خودکار هشدار به تحلیلگران در صورت مشاهده پروسسهای غیرعادی به کار برد؛ ضمن اینکه این دستورالعمل دارای قابلیت راهاندازی در هریک از Workstationهای ویندوز اجرا شده بر روی شبکه میباشد.
تحلیلگران امنیتی با استفاده از Splunk Enterprise و Microsoft Sysmon میتوانند به اطلاعات دقیقی در زمینه فعالیتهای Endpoint دست یافته و فعالیت بدافزارهای ناشناخته و پیشرفته را شناسایی نمایند. تحلیل آماری برای ریسک دادههای Endpoint در مقادیر کمی به تحلیگران امکان میدهد تا رفتار Hostهای در معرض خطر را به سادگی و با تعریف قواعد بیشتر بر اساس این مقادیر تحت عنوان Threashold، پروفایلبندی نماید. این امر تحلیلگران امنیتی را قادر به استفاده از تکنیکهای مشابهی میسازد که برای حل مشکلات و موارد کاربردی مورد استفاده قرار گرفته و صرفا از طریق یک رویکرد تحلیلی ارائه میشود. لازم به ذکر است که این رویکردهای تحلیلی، به تشخیص تفاوتها و اختلالات پرداخته و عملیاتهای امنیتی برای شناسایی سریع تهدیداتِ پیشرفته را ارائه مینمایند تا در نهایت از قدرت تاثیرگذاری آنها بر کسبوکار کاسته شود.
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
کاربرد Splunk Security در شناسایی بدافزارها و باجافزارهای ناشناخته – قسمت اول
کاربرد Splunk Security در شناسایی بدافزارها و باجافزارهای ناشناخته – قسمت دوم
کاربرد Splunk Security در شناسایی بدافزارها و باجافزارهای ناشناخته – قسمت سوم (پایانی)