فناوریها نسبت به گذشته پیشرفتهای قابل ملاحظهای داشتهاند و نرمافزارهای امنیتی میتوانند با خطای کمتر و دقت بیشتری بدافزارها را شناسایی کنند، با این حال، شرکتهای امنیتی و متخصصان فضای سایبری هنوز هم در شناسایی و تشخیص زودهنگام بدافزارها با مشکل جدی روبرو هستند، زیرا هکرها از راههای جدید و پیشرفتهای برای گذر از مکانیزمهای امنیتی استفاده میکنند، به همین دلیل در برخی موارد کدها یا فعالیتهای مشکوک باید به شکل دستی و خودکار ارزیابی شوند. فرآیند تجزیه و تحلیل بدافزارها با هدف درک عملکرد آنها و اقدامات لازم برای پاکسازی و پیشگیری از سرایت آلودگی به سایر سامانهها و شبکهها انجام میشود. در دنیای امنیت، تجزیه و تحلیل بدافزارها و شکار تهدیدات دو مفهوم عجین شده با یکدیگر هستند که عمدتا حول محور درک سرعت انتشار، قدرت آلودهسازی سامانهها، شناسایی تاثیرات مخرب، پیدا کردن ردپاها و تعیین ویژگیهای منحصر به فرد بدافزارها انجام میشود. در حالت کلی دو روش
Static Malware Analysis و Dynamic Malware Analysis برای ردیابی و تجزیه و تحلیل بدافزارها استفاده میشود. تجزیه و تحلیل ایستا شامل بررسی نمونه بدافزارها بدون اجرای واقعی آنها است، در حالی که تجزیه و تحلیل پویا به شکل سیستماتیک و در محیط کنترل شده انجام میشود.
تجزیه و تحلیل ایستا
تجزیه و تحلیل ایستا به فرآیند واکاوی دودویی بدافزارها بدون اجرای کد واقعی اشاره دارد. تجزیه و تحلیل ایستا بیشتر با هدف مشخص هش رمزنگاری فایل، شناسایی مولفههای بدافزار و تعیین امضای بدافزار اجرا میشود. کارشناسان امنیتی برای انجام اینکار فایل اجرایی را درون ابزارهای تحلیلگری مانند IDA وارد میکنند و در ادامه از فرآیند مهندسی معکوس برای بررسی رفتارهای مخرب بدافزار استفاده میکنند. در این حالت کد فایل اجرایی به زبان اسمبلی تبدیل میشود تا خواندن و درک آن توسط کارشناسان امکانپذیر شود. در ادامه تحلیلگران با بررسی دستورات سطح پایین متوجه خواهند شد که بدافزار قادر به انجام چه کارهایی است. روش فوق این مزیت را دارد که اجازه میدهد هرگونه تغییر لحظهای در ثباتهای پردازنده مرکزی و دستورات اجرا شده توسط نرمافزار را شناسایی کرد. بد نیست بدانید شرکتهای بزرگ نرمافزاری از روش فوق برای شناسایی اصالت کدهای استفاده شده در یک برنامه استفاده میکنند تا مطمئن شوند حق کپیرایت کدهای محصولاتشان توسط شرکتهای دیگر نقض نشده باشد.
تجزیه و تحلیل پویا
تجزیه و تحلیل پویا به اجرای نمونه بدافزارها و مشاهده رفتار آنها روی سامانهها با هدف پاک کردن آلودگیها و پیشگیری از انتشار و سرایت بدافزار به سامانههای دیگر اشاره دارد. در این روش یک محیط مجازی شبیهسازی و ایزوله شده آماده میشود تا نمونه مخرب بدون آلودهسازی سیستم واقعی به فعالیت خود ادامه دهد. در تجزیه و تحلیل پویای پیشرفته از یک ابزار دیباگر برای تعیین عملکرد بدافزار استفاده میشود. البته روش فوق در ارتباط با همه بدافزارها صادق نیست، زیرا برخی از بدافزارها میتوانند تفاوت میان محیطهای مجازی و واقعی را تشخیص دهند و زمانیکه متوجه شوند در یک محیط مجازی در حال اجرا هستند هیچگونه فعالیت مخربی از خود نشان ندهند.
شاخصگذاری فعالیتهای مخرب
تجزیه و تحلیل بدافزارها به تحلیلگران امکان میدهد اقدامات انجام شده توسط بدافزارها را مشاهده کنند و بر مبنای فعالیتهای انجام شده پروفایلی ایجاد کنند که به شناسایی و مسدود کردن فعالیتهای مخرب کمک میکند. بهطور معمول، کارشناسان امنیتی بدافزارها را در محیط آزمایشگاهی اجرا میکنند تا نحوه عملکرد آنها را مشخص کنند. تحلیلگران امنیتی با تجزیه و تحلیل بدافزارها میتوانند اقدامات دفاعی را برای مقابله با تهدیدات مخرب تدوین کنند. این اقدامات میتوانند در قالب دستورالعملهای هشداردهنده و حفاظتی در اختیار کاربران قرار گیرد یا در قالب دستورات برنامهنویسی و اضافه کردن امضا بدافزارها به بانکهای اطلاعاتی و بهروزرسانی نرمافزارهای امنیتی به کاربران در شناسایی و حذف بدافزارها کمک کنند. (شکل زیر)
کارشناسان امنیتی با اجرای بدافزارها در محیطهای آزمایشگاهی (شبیهسازی شده) و تخصیص ورودیهای مختلف به بدافزارها سعی میکنند نحوه عملکرد آنها را ارزیابی و به واکاوی این موضوع بپردازند که در صورت وجود تغییرات تازه، بدافزار چه رفتاری از خود نشان میدهد. برخی از بدافزارها در برابر فرآیند تجزیه و تحلیل یا حتا ابزارهای امنیتی، مکانیسمهای دفاعی خاص خود را دارند، بنابراین کارشناسان امنیتی بدافزارها را از طریق دیباگرها اجرا میکنند تا امکان ارزیابی دقیق آنها فراهم شود. چارلز همفری کارشناس امنیت و متخصص ارزیابی بدافزارها میگوید: «در بیشتر موارد بدافزارها از طریق نرمافزارها دیباگر اجرا میشوند تا تکبهتک دستوراتی که روی پردازنده مرکزی اجرا میکنند مشخص شود. حتا در برخی موارد از سامانهها یا شبکههای ایزوله شده برای درک دست روش آلودهسازی استفاده میشود. با استفاده از چنین تکنیکهایی، فهرستی از شاخصها ایجاد میشود که برای شناسایی و مسدودسازی رفتارهای بدافزارها از آنها استفاده میشود. در موارد خاصتر که بدافزاری شبکه یک سازمان بزرگ یا دولتی را هدف قرار داده از تکنیکهای پیشرفتهتری استفاده میشود تا اطلاعاتی در ارتباط با فردی که شبکه سازمانی را هدف قرار داده و دادههایی که موفق به جمعآوری آنها شده به دست آید.»
تجزیه و تحلیل رفتاری
تجزیه و تحلیل رفتاری و مراحلی که برای اجرای بدافزارهای مخرب دنبال میشود باید تحت شرایط کنترل شده انجام شوند. در این حالت اقدامات بدافزارهای مخرب قابل رویت است. اجرای بدافزارهای مخرب در محیطی ایزوله مزیت مهم دیگری نیز دارد و مانع از آن میشود تا بدافزار با شبکه یا سامانه دیگری ارتباط برقرار کند، در این حالت برخی بدافزارها رفتار کاملا تهاجمی از خود نشان میدهند و برخی دیگر به فعالیت عادی ادامه میدهد. آیا بدافزار سعی میکند از طریق پورتهای شناخته شده یا پورتهای غیرعادی با شبکه ارتباط برقرار کند؟ نتیجه مشاهدات باید ثبت شود. پس از آنکه فعالیت بدافزار در حالت ایزوله بررسی شد، در مرحله بعد ارتباط بدافزار با شبکه فعال میشود تا مشخص شود آیا شروع به اسکن شبکه میکند؟ اگر پاسخ مثبت است باید صبر کنید تا ببینید چه اتفاقی میافتد. آیا شروع به جستوجوی کلاینتهای متصل به شبکه میکند؟ اگر پاسخ مثبت است باید اجازه انجام اینکار را بدهید. هدف اصلی از این نوع تجزیه و تحلیل بررسی مرحله به مرحله اقدامات انجام شده توسط بدافزار است. بهطور مثال، میتوان از ظرف عسل
(honey pot) یا مزارع عسل (honey farm) برای انجام اینکار استفاده کرد. زمانیکه بدافزار به شبکه وارد میشود چه مدت زمانی طول میکشد تا فرآیند پویش را آغاز کند؟ تجزیه و تحلیل رفتاری امکان مشاهده گام به گام عملکرد بدافزار و بهدست آوردن تصویری کلی از بدافزار را میدهد.
آمادهسازی محیط آزمایشگاهی پایه برای تجزیه و تحلیل بدافزار
تجزیه و تحلیل بدافزارها در محیط کنترل شده و آزمایشگاهی انجام میشود. شرکتهای بزرگ محیطها و سامانههای مشخصی برای انجام این آزمایشها در اختیار دارند، اما کاربران خانگی نیز میتوانند با توان پردازشی محدودتر یک محیط آزمایشگاهی اولیه برای انجام تحلیلها آماده کنند. این محیط آزمایشگاهی از مولفههای زیر ساخته میشود:
1. ابتدا باید نرمافزار VMware یا VirtualBox را روی سامانه نصب کنید.
2. در مرحله بعد باید نرمافزارهای ProcDOT، Process Monitor و Wireshark را نصب کنید.
3. در مرحله بعد باید REMnux را نصب کنید. REMnux مجموعه کاملی از ابزارهای موردنیاز برای تحلیل بدافزارها و مهندسی معکوس آنها را ارائه میکند. REMunx یک بسته کاملی تحلیلکننده رایگان لینوکسی است. سادهترین راه بهکارگیری بسته فوق دانلود ماشین مجازی REMnux در فرمت OVA و وارد کردن آن به هایپرویزوری است که از آن استفاده میکنید. در مرحله بعد باید فرمان بهروزرسانی را اجرا کنید تا مطمئن شوید نسخه بهروز شدهای در اختیار دارید. برای دانلود بسته فوق به آدرس https://docs.remnux.org/install-distro/get-virtual-appliance
مراجعه کنید. برای بهرهمندی از ابزار فوق به حداقل 54 گیگابایت حافظه آزاد نیاز دارید (شکل زیر).
4. مطمئن شوید که ماشین مجازی قابلیت اتصال به شبکه را داشته باشد و ویندوز با تنظیم آدرس آیپی ایستا به REMnux اجازه دسترسی به شبکه را بدهد.
ابزارهای موردنیاز برای تجزیه و تحلیل بدافزارها
در کنار ملزومات اولیه به ابزارهای دیگری برای جمعآوری حداکثری اطلاعات نیاز داریم که برخی از آنها به شرح زیر هستند:
- Wireshark: ابزاری پیشرفته و قدرتمند برای تجزیه و تحلیل ترافیک شبکه است. ابزار فوق این قابلیت را دارد تا ترافیک رابطهای شبکه را به دقت رصد کند. قابلیت بازدید از صفحات و ترافیک شبکه، رهگیری و ضبط بستههای مبادله شده و نظارت بر بستههای دادههای که در حال انتقال در شبکه هستند از جمله قابلیتهای ابزار فوق هستند. (https://www.wireshark.org/)
- Process Monitor: ابزار پیشرفته نظارت بر پردازههای سیستمی است. ابزار فوق تمامی فعالیتهای در حال اجرا در سیستمعامل را زیر نظر گرفته و اجازه میدهد کوچکترین تغییر در روند انجام پردازهها را بررسی کرد و هرگونه پردازهای که به حافظه اصلی وارد میشود را زیر نظر گرفت. (https://docs.microsoft.com/en-us/sysinternals/downloads/procmon)
- ProcDOT: ابزار فوق فایلهای گزارش ساخته شده توسط Process Monitor را پردازش میکند. ابزار فوق برای سهولت در خواندن گزارشها استفاده میشود. (http://procdot.com/)
- FakeDNS: ابزاری ایدهآل برای شبیهسازی و پاسخ به درخواستهای ارسال شده توسط بدافزارها است. این ابزار حاوی اسکریپت REMnux است و میتواند خروجیهای دامنههای درخواستی را به ترمینال ارسال کند. روش فوق مشخص میکند چه دامنههایی درخواستی را برای کامپیوترهای متصل به شبکه ارسال کردهاند.
- Accept-all-ips: ابزار فوق شامل اسکریپت REMunx است که تمامی ترافیک آیپی را به سمت میزبان REMnux هدایت میکند. دقت کنید اگر اسکریپت فوق در یک محیط واقعی اجرا شود، خطرناک است، اما برای هدایت ترافیک با هدف تحلیل عملکرد یک ماشین کاملا کاربردی است.
- INETsim: یک بسته نرمافزاری است که بیشتر خدمات معمول و پروتکلهای وب را شبیهسازی میکند. بسته فوق میتواند مجموعهای از نمونههای بدافزاری را به درخواست کاربر اجرا کند. (https://www.inetsim.org/)
- پیادهسازی سامانه پدافند غیرعامل (Passive Defense Systems): سامانههای پدافند غیرعامل شامل پیشگیری از نفوذ و سایر مکانیزمهای دفاعی خودکار هستند. این سامانهها متفاوت از سامانههای دفاعی فعال هستند و به کارشناسان اجازه میدهند به سادهترین شکل فرآیند تجزیهوتحلیل را انجام داده و کنترل کاملی روی فعالیتهای انجام شده داشته باشند.
- ابزارهای شکار تهدیدات تحلیلمحور: این ابزارها بر مبنای الگوهای رفتاری و بهکارگیری یادگیری ماشین به شناسایی و شکار تهدید میپردازند. از جمله این ابزارها میتوان به Maltego CE، Sandbox Cuckoo و Automater اشاره کرد. Maltego CE یک ابزار دادهکاوی است. ابزار فوق قادر به پردازش نمودارهای تعاملی و مرتبط کردن تحلیلها است و اغلب برای تحقیقات آنلاین استفاده میشود. ابزار فوق از منابع مختلف همچون اینترنت برای پیدا کردن روابط حاکم بر بخشهایی از دادهها استفاده میکند. اگر مورد مشکوکی دال بر یک تهدید را پیدا کند، گزارشی در اختیار کاربر قرار میدهد. ابزار فوق از آدرس https://www.maltego.com/downloads/ قابل دریافت است. Cuckoo Sandbox یک سیستم تجزیه و تحلیل بدافزاری منبع باز است که شما را در جریان دقیق جزییات مربوط به فایلهای مشکوک قرار میدهد. Cuckoo Sandbox اطلاعاتی درباره فایلهای مخرب و نحوه عملکرد آنها ارائه میکند. ابزار فوق از آدرس https://cuckoosandbox.org/ قابل دریافت است. Automater روی دادههای نفوذ تمرکز دارد. به عبارت سادهتر، یک هدف را انتخاب میکنید و Automater نتایج را از منابع معتبر بهدست آورده و ارائه میکند. ابزار فوق از آدرس http://www.tekdefense.com/automater/ قابل دریافت است.
- ابزارهای هوشمحور: شکار تهدیدات بر پایه اطلاعات بهدست آمده انجام میشود. در این روش تمام دادهها و گزارشهای جمعآوری شده برای شناسایی و شکار تهدیدات استفاده میشوند. از ابزارهای هوشمحور استفاده شده در این زمینه میتوان به YARA ، CrowdFMS و BotScout اشاره کرد.
اجرای بدافزار با هدف تجزیه و تحلیل رفتاری
- برخی افراد تمایل دارند فرآیند تحلیل عملکرد بدافزارها را بدون نیاز به ماشین مجازی و روی یک ماشین واقعی آزمایش کنند. زمانیکه قصد اجرای بدافزارهای مخرب را دارید، مطمئن شوید که ابزارهای Wireshark و Procomon روی کامپیوتر فعال هستند. در این حالت هرگونه فعالیت مشکوک یا غیرمشکوک را میتوان پیگیری کرد. راهکار فوق اجازه میدهد تمامی نتایج بهدست آمده توسط Procomon را جمعآوری و توسط برنامه ProcDot پردازش کرد. فعال بودن ابزارهای فوق روی میزبان اصلی مزیت دیگری نیز دارد، اگر بدافزاری موفق شد به هر دلیل از ماشین مجازی بگریزد با رصدپردازهها و رخدادهای میزبان اصلی قادر به مشاهده رفتارهای مشکوک هستید. نرمافزار Wireshark نیز باید به شکلی تنظیم شود تا بتواند هرگونه ترافیک شناخته و ناشناختهای را ردیابی کند. پس از اجرای بدافزار و مشاهده تمامی فعالیتهای انجام شده توسط بدافزار در صورت لزوم تغییراتی در سیستمعامل اعمال کنید و سامانه را راهاندازی مجدد کنید. راهاندازی مجدد سیستم ضمن آنکه باعث میشود تا واکنش بدافزار به تغییرات اعمال شده را مشاهده کنید، هرگونه اطلاعات ذخیره شده در حافظه اصلی سیستم را پاک میکند و اجازه میدهد در یک محیط پاکسازی شده فرآیند تحلیل را ادامه دهید. پس از آنکه مشخص کردید بدافزار به دنبال چه چیزی است باید سیستم REMnux را تنظیم کرده یا محیط سیستم را پاکسازی کنید تا بتوانید به بدافزار اجازه دهید فعالیتهای مخرب خود را ادامه دهد. مادامی که متوجه نشدهاید بدافزار به دنبال انجام چه فعالیتهای مخربی است این فرآیند را باید تکرار کنید. این پروسه تکرار اجازه میدهد فهرست مناسبی از آدرسهای آیپی، دامنهها و فایلهایی که آلوده میشوند بهدست آورید. اطلاعات فوق نشان میدهد بدافزار به دنبال چه چیزی است و نیازمند چه سطح دسترسی به سیستم یا شبکه است و چگونه راه را برای هکرها هموار میکند تا سطح دسترسی خود در یک شبکه را افزایش دهند. زمانی که متوجه شدید بدافزار به دنبال چه چیزی است، در مرحله بعد باید مکانهای دیگری در شبکه را مشخص کنید تا سایر تهدیدات احتمالی را پیدا کنید. در بیشتر موارد نرمافزارهای مخرب حالت پوششی دارند و سعی میکنند فعالیتهای مخرب اصلی را پنهان کنند. این وظیفه کارشناسان امنیتی است که سایر تهدیدات پنهان را شناسایی کنند. در این مرحله باید گزارشهای سیستمی بررسی شوند. با جستجو و بررسی مستقیم گزارشها یا دریافت گزارشها از SIEM (یک سیستم مدیریت اطلاعات و امنیت متمرکز است و میتواند تمام سامانهها را به یکدیگر متصل کند و به شما یک دیدگاه جامع از امنیت اطلاعات ارائه دهد. SIEM مسئولیت مدیریت و تشخیص ورودیهای امنیتی انواع دستگاهها را برعهده دارد.)، امکان شناسایی تهدیدات وجود دارد. اگر متوجه شدید بدافزار از یک عامل کاربری غیراستاندارد (Non-Standard User Agent)
- برای اتصال به شبکه استفاده میکند باید پورتها، دامنهها و پروتکلهایی که هرگونه ترافیکی از طریق آنها انجام شده را بررسی کنید. بهطور مثال، اگر از وردپرس استفاده میکنید، نباید تصور کنید در حال استفاده از امنترین سامانه مدیریت محتوا هستید. زمانیکه یک حمله هکری انجام میشود، فایلی درون یکی از پوشهها ذخیرهسازی میشود و بدافزار به شکل مستقیم درون آن فایل قرار میگیرد. به همین دلیل باید هرگونه تغییری در سطح فایلهای سیستمی بررسی شود. اگر ترافیک از طریق دیوارآتش یا پروکسی عبور میکند باید گزارشهای ثبت شده به دقت بررسی شوند. در بیشتر موارد رویکرد فوق انواع مختلف تهدیدات پیرامون محیط را آشکار میکند. دقت کنید فعالسازی سامانههای هشداردهنده و نصب بستههای امنیتی به معنای امنیت کامل نیست و همواره باید گزارشهای ثبت شده توسط نرمافزارهای امنیتی به دقت بررسی شوند. تجزیه و تحلیل بدافزاری و شکار تهدیدات دو راهکار کارآمد برای حفظ امنیت شبکهها هستند. ترکیب این دو راهکار همراه با بهکارگیری بستههای امنیتی به میزان قابل توجهی دامنه تهدیدات را محدودتر میکنند
ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را میتوانید از کتابخانههای عمومی سراسر کشور و نیز از دکههای روزنامهفروشی تهیه نمائید.
ثبت اشتراک نسخه کاغذی ماهنامه شبکه
ثبت اشتراک نسخه آنلاین
کتاب الکترونیک +Network راهنمای شبکهها
- برای دانلود تنها کتاب کامل ترجمه فارسی +Network اینجا کلیک کنید.
کتاب الکترونیک دوره مقدماتی آموزش پایتون
- اگر قصد یادگیری برنامهنویسی را دارید ولی هیچ پیشزمینهای ندارید اینجا کلیک کنید.
نظر شما چیست؟