Elasticsearch به دلیل محبوبیتی که بین سازمانها دارد، مورد سوءاستفاده مهاجمین سایبری قرار میگیرد. در اوایل سال میلادی 2019 حملات رشد زیادی هم سطح با سرورهای Elasticsearch داشت. این حملات همانند سال گذشته اکثرا بدافزارهای Mine کنندهی پولهای مجازی را بصورت پنهان اجرا مینمایند.
آخرین حملاتی که مشاهده شده به دنبال منافع سود جویانه نبود ولی به عنوان Payloadش Backdoorی ایجاد میکرد. اینگونه تهدیدها میتوانند هدفهای آسیبپذیر را به Botnet برای حملات DDOS تبدیل کند.
چرخه حمله شامل جستجو برای سرورها یا دیتابیسهای فاش شده یا در معرض عموم قرار گرفته Elasticsearch میشود. این بدافزار یک Shell همراه با دستور جستجوی دستورات جاوا رمزگذاری شده توسط مهاجم را اجرا میکند. زمانی که این امر با موفقیت انجام شد، اولین کد مخرب از یک دامنه دانلود میشود. در تجزیهوتحلیل تیم امنیتی مشخص گردید که این دامنه یک بار مصرف بوده و به سادگی قابل تعویض میباشد. کد اولین مرحله سعی میکند فایروال و فعالیتهای Mine کردن پول مجازی رقیب و دیگر پردازشها را غیرفعال سازد. سپس کد مرحله دوم که معمولا از یک وبسایت آلوده شده به دست میآید، دانلود میشود.
روشهایی دانلود کدها قابل توجه میباشند، برای مثال استفاده از دامنه یک بار مصرف به مهاجم اجازه میدهد به محض شناسایی URLها، آنها را تغییر دهد. سوءاستفاده از وبسایتهای آلوده شده مانع شناسایی وبسایتهای طراحی شده توسط مهاجم میشود.
چرخه حمله بدافزار BillGate و Setag
در حملهی که مورد بررسی قرار گرفت، URL به گونهای طراحی شده بود که ازآسیبپذیری CVE-2015- 1427 سوءاستفاده نماید. این Exploit آسیبپذیری قدیمی و بهروزرسانی شده، موتور کد نویسی Groovy از Elasticsearch است. نسخههای 1.3.0 تا 1.3.7 و 1.4.0 تا 1.4.2 شامل این آسیبپذیری میشوند.
این حمله دو مرحله دارد: نخست Dropper کد s67.sh را همانطور که در شکل 2 آمده، اجرا میکند. این کد مشخص میسازد از چه Shellی استفاده و آن را کجا پیدا کند و بعد سعی بر متوقف ساختن فایروال میکند. سپس کد مرحله دوم (s66.sh) را توسط دستور curl اجرا مینماید و درصورت ناموفق بودن wget را دانلود میکند.
کد مرحله دوم عملکردهایی مشابه کد مرحله اول دارد. این کد نیز مشخص میکند از چه اسکریپت Shellی استفاده شود و فایروال را متوقف میسازد. سپس این کد اقدام به پاک کردن فایلهایی مشخص، ازجمله فایلهای مرتبط با Mine کنندههای پول مجازی رقیب و همچنین فایلهای پیکربندی از شاخه tmp/ میکند. در مرحله بعد این کد برای اجرا کردن عملیات خود پردازشهای ناخواسته و Mine کنندههای حاضر برروی سیستم را از بین میبرد. این کد سپس رد آلوده سازی اولیه و پردازشهایی که برروی پورتهای به خصوص TCP اجرا میشوند را همانطور که در شکل 4 آمده، پاک سازی میکند. مرحله دوم حمله همچنین شامل دانلود کردن فایل باینری میشود ( شکل 5 ) که به احتمال زیاد برروی یک وبسایت آلوده قرار دارد.
شکل 2 نمونه کدی که در مرحله اول اجرا میشود.
شکل 3 نمونه کد مرحله دوم که پردازشاتی که از بین میبرد را نشان میدهد.
شکل 4 نمونه کد نشان دهنده پورتهای TCP که از کار میافتند.
شکل 5 نمونه کد که نشان دهنده عملکرد فایل باینری یا Payload میباشد.
Payloadهای Billgate و Setag: با نگاهی دقیق در سطح باینری، نوعی Bakdoor به اسم ELF_SETAG.SM توسط شرکت Trend Micro شناسایی گردید که اطلاعات سیستم را به سرقت برده و قابلیت اجرای حملات DDOS را دارد. همین Backdoor در هنگام استفاده از یک Exploit برای CVE-2017-5638 که آسیبپذیری اجرای کد از راه دور در Apache Struts 2 میباشد، دیده شده است.
این نمونهها مشخصههای بدافزار Billgate، که در سال 2014 شناسایی گردید، را دارد و برای بهدست آوردن سیستم و اجرای حملات DDOS شناخته شده است. اخیرا انواع دیگری از بدافزار Billgate در فعالیتهای مرتبط با باتنت دیده شده است.
شکل 6 نمونه کدهای Payload این بدافزار، حاوی کدهایی برای مقابله با دیباگکردن و دستکاری آن میباشد، نشان میدهد. این بدافزار همچنین systoolsهای سیستم که شامل اطلاعات دستگاه هستند، را نیز با نسخهی دستکاریشدهی خودش جایگزین مینماید و آنها را به شاخه /usr/bin/dpkgd منتقل میکند. این بدافزار برای ماندگارشدن در سیستم کدی را اجرا میکند تا یک کپی از خودش در مسیرهای ذیل ایجاد نماید:
- /etc/rc{1-5}.d/S97DbSecuritySpt
- /etc/rc{1-5}.d/S99selinux
- /etc/init.d/selinux
- /etc/init.d/DbSecuritySpt
شکل 6 نمونه کدهایی که عملکردهای مختلف بدافزار BillGate را نشان میدهد: مقابله با دیباگ شدن (بالا سمت چپ)، اجرا شدن چند مرحلهای ( بالا وسط صفحه)، انواع حملات DDOSی که میتواند اجرا کند (بالا سمت راست) و لیست systoolsهایی که جابهجا میسازد (پایین).
پایه گذاری این حملات
بسیاری از ترافیکها و حملات مخربی که Elasticsearch را مورد حمله قرار میدهند، نسبتا ابتدایی و برای سودجویی ساخته میشوند. مهاجم به دنبال سرورهای ناامن یا درست پیکربندی نشده میگردد یا از آسیبپذیری قدیمی سوء استفاده میکند. به دنبال آن Payload نهایی را اجرا میکند که معمولا حاوی بدافزار Mine کنندهی پول مجازی و حتی باجافزار میباشد.
بنابراین حملهای که برای شناسایی نشدن تدارک دیده و از تکنیکهای اجرای چند مرحلهای استفاده میکند، یک زنگ هشدار میباشد. به این دلیل مهاجمین از رمزگذاری URL استفاده مینمایند که در صورتی که کدهای اسکریپت بازیابی شدند برای حمله به سایتهای قانونی میتواند به این معنی باشد که آنها در حال آزمایش ابزار هک خود یا آماده ساختن زیرساختشان برای اجرای حمله واقعی میباشند.
این حمله اهمیت ایمن سازی صحیح داراییهای دیجیتال را نشان میدهد چراکه یک سرور Elasticsearch ناامن میتواند پیامدهای بسیار بدی به همراه داشته باشد. توجه داشته باشید که Elastic برای این آسیبپذیری Patch عرضه کرده و راهنمایهایی برای نحوه ایمن سازی، پیکربندی صحیح و فعال کردن ویژگیهای امنیتی آن ارائه داده است. مکانیزمهای امنیتی مضاعف مانند دسته بندی اطلاعات، مجزا سازی شبکه و سیستم جلوگیری از نفوذ، در کاهش احتمال حمله و نفوذ کمک میکنند.
راهکارهای Trend Micro
سازمانها همچنین میتوانند از راهکارهای امنیتی استفاده کنند که در مقابل چنین حملاتی دفاع میکنند Trend Micro XGen Security ارائه دهنده Machine Learning با دقت بالا برای ایمن سازی Gateway و Endpointها است و از ساختارهای فیزیکی، مجازی و cloud محافظت مینماید. XGen Security با استفاده از تکنولوژیهایی که ازجمله فیلترینگ URL، بررسی رفتار و Sandboxing شخصی، محافظت در برابر تهدیدهایی که به صورت مداوم در حال تغییر میباشند و از تجهیزات امنیتی مرسوم عبور و از آسیبپذیریها شناخته شده و ناشناخته سوء استفاده میکنند، را تضمین مینماید. XGen Security همچنین در بسته راهکارهای امنیتی Trend Micro که در ذیل آمده وجود دارد.
Hybrid Cloud Security، User Protection و Network Defense
نشانههای نفوذ Indicators of Compromise یا به اختصار IoCها در ذیل آورده شده است:
هشهای SHA-256 شناسایی شده برای ELF_SETAG.SM
- 8ebd963f86ba62f45b936f6d6687ccb1e349a0f8a6cc19286457895c885695c8 (.pprt)
- cfe3dccf9ba5a17e410e8e7cf8d0ff5c1b8688f99881b53933006250b6421468 (.ppol)