در دنیای فناوری اطلاعات، Ransomware به نوع خاصی از بدافزارها اطلاق میشود که دادهها را در اختیار گرفته و به واسطه ماهیت مخرب خود میتواند آسیبهای زیادی رابه سازمانها وارد نماید. با این وجود نیازی به صرف زمان طولانی برای مقابله با تهدیدات باجافزاری نیست. شناسایی باجافزار را میتوان فرآیندی کلیدی به شمار آورد که با حذف تجهیزاتِ در معرض تهدید از شبکهی آلوده، امکان محافظت از آنها را فراهم مینماید. اما باید در نظر داشت که فرآیند محافظت از سازمانها در برابر حملات بدافزاری، مستلزم رویکردی جامع و مبتنی بر اصل “پیشگیری” است تا امنیت شبکه تامین گردد.
در این مقاله، شناسایی فعالیت بدافزارهای ناشناخته و اولین نشانههای تهدید در محیط ویندوز به صورت گام به گام ارائه میگردد. این تکنیکها با بهرهگیری از رویدادهای Windows Sysinternal به شناسایی بدافزار و باجافزارها کمک میکند.
چالشهای شناسایی بدافزارها
در شیوههای سنتی، بر استفاده از آنتیویروس یا ضدبدافزارهای مبتنی بر Signature جهت شناسایی بدافزارهای پیشرفته یا سایر تهدیدات آسیبزا در محیط ویندوز تاکید میشود، اما ممکن است این روش با دشواریهایی برای بسیاری از افراد همراه باشد. لازم به ذکر است اکثر راهکارهای مقابله با بدافزار که مبتنی بر Signature میباشند، بر فهرستی از Signatureهای شناختهشده متکی بوده و بدین ترتیب با چالشهایی روبرو میگردد زیرا در فرآیند شناسایی مبتنی بر Signature نمیتوان همه موارد را در نظر گرفت زیرا تکنولوژیهای مربوط به محافظت از Endpoint ، فاقد فهرست کامل و بینقصی از تهدیدات برای شناسایی تمامی Signatureهای موجود میباشد و همچنین برای انواع جدیدی از تهدیدات ایجاد شده تحت عنوان تهدیدات قابلاجرا در Endpointها، قابلاستفاده نمیباشد که به دلیل نبود Signature شناختهشده برای مقایسه میباشد.
با این رویکرد، سازمانها به اجبار با نقضهای امنیتی از جمله باجافزار، نقل و انتقال غیرمجاز دادهها و بُروز قطعی در سرویسها مواجه میشوند که همه این موارد موجب ناتوانی در محافظت و شناسایی فعالیتها در Endpoint میشود.
اساسا این مشکلات مربوط به سازمانهایی است که قادر نیستند از Eventهای مربوط به فعالیتهای Windows System که از زیرساخت ویندوز جمعآوری میشوند، استفاده کنند، به علاوه استفاده از فرآیندهای تحلیلی برروی این دادهها جهت تعیین موارد نرمال و غیرنرمال از طریق بازبینی تمامی فرآیندها و Sessionها در Windows Endpoint ایجاد میشود.
چالش مربوط به جمعآوری دادههای Sysinternal از سراسر Endpoint این است که نصب یک Agent در Windows Endpoint مستلزم تلاش زیاد و به کارگیری تکنولوژی مناسبِ خارجی است تا رویدادهای Sysinternal بصورت جزئی و دقیق را از چندین سیستم ویندوز به صورت Real Time جمعآوری نماید. پس از جمعآوری اطلاعات دقیق مربوط به فعالیت ویندوز درEvent Log از Endpoint، باید این اطلاعات در پلتفرم داده ذخیره شوند تا علاوه بر کنترل حجم پیامها، قادر به جستجو و آنالیز مطلوب فعالیتهای سیستم برای شناسایی اختلالات باشد.
کاربردهای Splunk Forwarder
Splunk Forwarder این امکان را برای کاربران فراهم میکند تا دادههای Sysmon در زیرساخت ویندوز را به صورت Real Time از Endpoint جمعآوری نمایند. نرمافزار Splunk به منظور بررسی و تحلیل اختلالات، اقدام به انتقال Eventهای مرتبط با Endpoint به صورت خودکار میکند.
پلتفرم Splunk به ارائه دو کارکرد کلیدی برای حل چالشهای مربوط به استفادهی مناسب از Eventهای Sysinternal برای شناسایی نشانههای اولیه از آلودگیهای بدافزاری پیشرفته و شناختهشده میپردازد:
1- گردآوری مجموعهای از فعالیتهای ویندوز: Splunk Forwarder مبتنی بر سیستمعامل ویندوز بوده و کلیه دادههای Sysinternal را به سادگی و از طریق Event Log جمعآوری میکند.
- یک Agent ساده برای جمعآوری تمام دادههای ویندوز شامل Event Log، Sysinternal، Perf mon و فایلها ارائه مینماید.
- ابزارهای انتقال ایمن و مورد اطمینانی را برای متمرکز نمودن دادهها در یک پلتفرم آنالیز ارائه مینماید.
- قابلیتهای ویژهای را برای پردازش و فرمت نمودن Sysmon جهت استفاده سریع از فرآیند آنالیز ارائه مینماید.
2- دارای اصول مبتنی بر آنالیز برای جستجو و آنالیز اختلالات میباشد؛ این اصول شامل استفاده از قابلیت جستجوی ساده، جمعآوری و محاسبهی اطلاعات آماری برای تشخیص موارد جزئی در اطلاعات مربوط به ایجاد فرآیند پردازش میشود.
- برای دستیابی به نتایج به صورت دینامیک، معیارهای متفاوتی از Endpoint را مد نظر قرار میدهد.
- پلتفرم Splunk با استفاده از یک رویکرد تحلیلی برای دادهها، به کاربران اجازه میدهد تا با حذف یک الگوی نرمال در محاسبات آماری به شناسایی اختلالات در Endpointهای فعالیت بپردازند. لازم به ذکر است که میتوان از تکنیک فوق در سطح گسترده برای موارد مانند زیرساختهای سرور مبتنی بر ویندوز و جمعآوری Sysinternal از تمامی Clientهای ویندوز، استفاده نمود.
ذکر این نکته مهم است که این مورد کاربردی برای اکثر عملیاتهای امنیتی قابل اجرا خواهد بود. اهمیتِ ارزیابی امنیت در Endpoint با توجه به ارزش اطلاعات جمعآوریشده، صرفنظر از در اختیار داشتن یا نداشتن یک راهکار امنیتی Endpoint در سازمان، افزایش مییابد. Sysinternal علاوه بر این موارد فوق دارای کاربردهای دیگری است که به عنوان نمونه میتوان از ارائه ویژگیهای ساختاری بیشتر برای عملیاتهای IT و آنالیز سرویس نام برد.
منابع دادهی موردنیاز برای شناسایی فعالیتهای بالقوه بدافزارها در Windows Endpoint به صورت Sysinternal بوده و از طریق Event Logهای ویندوز و با استفاده از Sysmon جمعآوری میشود. سازمانها میتوانند با نصب Sysmon شرکت مایکروسافت و سپس نصب Splunk Forwarder به اطلاعات دقیقی دست یافته و از آن برای تعریف بخشهای ضروری برای جمعآوری و فیلتر استفاده کنند. دادههای Sysinternal در موقعیتهایی هستند که نشانهای از شروع فعالیتی غیرمعمول دیده شود؛ اما همبستگی بیشتری برای بررسی نحوه بروز آلودگی، افزایش Ingesting Proxy و IDS/IPS، DNS/ Stream دادهها توصیه میشود تا مسیر آلودگی بالقوه Root شود و علاوه بر تعیین چارچوب، از میزان رویدادها کاسته شود. با آنالیز Sysinternal از طریق نرمافزار Splunk، این امکان فراهم میگردد تا نشانههای مشخصی از تهدیدات در شناسایی پتانسیل هر یک از بدافزارهای شناختهشده یا ناشناخته، ارائه گردد.
- Windows Sysinternals از Sysmon از طریق Even Log استفاده میکند
- Proxy، IDS/IPS، DNS، Stream
در ادامه اطلاعات جمعآوری شده در نرمافزار Splunk توسط Event Log با Sysmon ارائه میگردد:
- ایجاد فرآیندهای پردازشی شامل مجموعه کاملی از دستورات همراه با مسیرهایی برای پردازشهای فعلی و آتی
- Hash کردن Process Image با استفاده از MD5، SHA1 و یا SHA256
- Process GUID که IDهای استاتیک را برای همبستگی بیشتر در مقابل PIDها که مجددا توسط OS مورد استفاده قرار میگیرند، ارائه مینماید.
- رکوردهای اتصال شبکه از یک Host به Host دیگر که شامل پردازش منبع، IP، شماره پورت، Hostname و Name Port برای TCP/UDP میشود.
- تغییر در زمان ایجاد فایل
- Eventهای مرتبط با پردازش Boot که ممکن است شامل بدافزار Kernel-Mode باشد.
گردآوری بخشهای مختلف اطلاعات Collecting Windows Activities Events از زیرساخت ویندوز با Splunk Forwarder به سادگی صورت میگیرد.
در اینجا چند گام ساده برای جمعآوری و یکپارچهسازی دادههای Sysmon در پلتفرم Splunk ارائه میشود:
1- نصب Sysmon برروی Endpoint مبتنی بر ویندوز
2- نصب Splunk Forwarder برروی Endpoint برای ارسال پیامهای Sysinternal به یک Splunk Instance به صورت Real Time
3- نصب Add-Onهای Splunk برای Microsoft Sysmon و پیکربندی ساده Splunk جهت استخراج و ارتباطدهی به CIM
پس از نصب Sysmon، میتوان از دادههای ورودی Splunk برای انتخاب آیتمهای مورد نظر استفاده نمود، برای این کار کافی است که نوع Logها را برای انتقال به Splunk Indexer انتخاب نمود.
در این مرحله، با در اختیار داشتن چندین Event در پلتفرم Splunk میتوان حجم زیادی از اطلاعات را در دسترس کاربر قرار داد.
در ادامه نمونهای از دادههای جمعآوریشده در نرمافزار Splunk ارائه میگردد. فرمت Event Log ویندوزی به XML تبدیل شده و فیلدهای مختلف را در قالب یک Event واحد ترکیب مینماید.
کلیه دادههای جمعآوری شده با Event Sysinternal در فرمت XML، با کمک Splunk Add-On برای Sysmon در قالب فیلدهای پلتفرم Splunk تقسیمبندی میشوند. به این ترتیب جستجو در Eventهای پیچیدهی Sysinternal تنها با کلیک برروی فیلدهای تقسیمبندیشده به سادگی امکانپذیر میگردد.
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
کاربرد Splunk Security در شناسایی بدافزارها و باجافزارهای ناشناخته – قسمت اول
کاربرد Splunk Security در شناسایی بدافزارها و باجافزارهای ناشناخته – قسمت دوم