آموزش رایگان دوره CEH همگام با سرفصل‌های بین‌المللی – 30
آموزش CEH (هکر کلاه سفید): تحلیل پویا و ایستا راهکاری برای رمزگشایی بدافزارها
برای آن‌که از یک سیستم در برابر ویروس‌ها محافظت کنید، بهتر است یک لایه اساسی حفاظتی را پیرامون سیستم به‌گسترانید. برای انجام این‌کار لازم است ضدویروسی روی سیستم نصب کنید.

برای مطالعه قسمت قبل آموزش رایگان  دوره CEH اینجا کلیک کنید.

همان‌گونه که اشاره شد ابزارهای مختلفی برای بررسی وجود بدافزارها روی یک سیستم در اختیار کارشناسان امنیتی قرار دارد، با این حال اگر شک دارید سیستم توسط یک تروجان در معرض تهدید قرار گرفته، بهتر است از ابزار Wireshark استفاده کنید. Wireshark می‌تواند به پیدا کردن بسته‌های حاوی داده‌های رمزگذاری شده کمک کند. از آن‌جایی که ممکن است با یک تروجان سر و کار داشته باشید و به دلیل اینکه آن‌ها معمولاً اطلاعات را سرقت می‌کنند، ابتدا باید روی ترافیک برون مرزی متمرکز شوید. اگر تروجان از HTTP یا ICMP استفاده می‌کند، ممکن است داده‌ها را با کد POST یا کد ICMP مشاهده کنید. پس از پیدا کردن یک بسته بالقوه، می‌توانید محتوای رمزگذاری شده را از بقیه بسته‌های ضبط شده جدا کنید و آن‌را تحلیل کنید.

نکته: هیچ‌گاه به ابزارهایی که قبلا روی یک سیستم نصب کرده‌اید و معتقد هستید سیستم به بدافزارهایی آلوده است اعتماد نکنید. نصب ابزارهای خوب شناخته شده یا حتا ابزارهایی که خودتان طراحی کرده‌اید برای شناسایی تهدیدات ناشناخته باید در اولویت باشند.

نکته مهم دیگری که باید به آن دقت کنید این است که قبل از انجام هر کاری همه چیز باید بررسی شود. هر برنامه‌ای که نصب شود یا مورد استفاده قرار گیرد باید ابتدا امضا مربوط به فایل‌های آن بررسی شود. بسیاری از سایت‌ها همراه با ارائه برنامه کاربردی خود یک MD5Sum یا SHA را ارائه می‌کنند تا کاربران مطمئن شوند هیچ تغییری در فایل رخ نداده است. پیوست‌های ایمیل نیز همیشه باید بررسی شود. در یک محیط با امنیت بالا و کنترل شده، حتا می‌توان از سیستم sheep dip استفاده کرد تا اطمینان حاصل کرد محیط تمیز و عاری از آلودگی است. در سازمان‌های بزرگ کارشناسان امنیتی از یک سیستم کامپیوتری sheep dip برای مشاهده برنامه‌های مشکوک و اتصال به اینترنت در شرایط کنترل شده استفاده می‌کنند. این سیستم همچنین برای بررسی فایل‌های مشکوک‌، پیام‌های دریافتی و پیوست‌ها نیز به کار گرفته می‌شود. به‌طور کلی، بهترین راه برای پیشگیری از آلودگی به ویروس‌ها در پنج مرحله زیر خلاصه می‌شود:

مرحله 1: ضدویروسی نصب کنید.

مرحله 2: ضدویروس را به‌روزر نگه دارید. ضدویروس‌های قدیمی کارایی لازم برای مقابله با ویروس‌های جدید را ندارند.

مرحله 3. هنگام دریافت پیوست‌ها با درایت با آن‌ها برخورد کنید. اگر نمی‌دانید پیوست از جانب چه فردی ارسال شده و شما ضمیمه ایمیل را دریافت نکرده‌اید یا به نظر می‌رسد مشکوک است، آن‌را باز نکنید!

مرحله 4 : وصله‌های ارائه شده برای سیستم و برنامه‌های کاربردی را نصب کنید. بسیاری از ویروس‌ها از آسیب‌پذیری‌هایی که قبلاً شناسایی شده‌اند سوء استفاده می‌کنند.

مرحله 5. از باز کردن ضمایم مشکوک خودداری کنید، زیرا آن‌ها همچنان یکی از ابزارهای اصلی گسترش تهدیدات بدافزاری همچون ویروس‌ها و کرم‌ها هستند.

اگرچه پیشگیری از آلودگی به ویروس‌ها ایده خوبی است، اما هنوز هم این احتمال وجود دارد که سیستمی به یک ویروس آلوده شود. به‌طور کلی، تنها راه محافظت از داده‌ها در برابر ویروس‌ها، آماده‌سازی یک کپی از داده‌ها است. بهتر است به‌طور منظم از سیستم نسخه پشتیبان تهیه کنید. ابزارهای متنوعی برای انجام این‌کار در دسترس قرار دارند. بسته به محیطی که در آن کار می‌کنید سه روش پشتیبان‌گیری کامل، افزایشی و متغیر در اختیارتان قرار دارد.

ضدویروس‌ها

برای آن‌که از یک سیستم در برابر ویروس‌ها محافظت کنید، بهتر است یک لایه اساسی حفاظتی را پیرامون سیستم به‌گسترانید. برای انجام این‌کار لازم است ضدویروسی روی سیستم نصب کنید. ضدویروس‌های مختلفی در بازار وجود دارند که از آن جمله به موارد زیر می‌توان اشاره کرد:

■ Norton AntiVirus

■ McAfee VirusScan

■ Sophos Antivirus

■ AVG AntiVirus

‌ضدویروس‌ها می‌توانند یک یا چند تکنیک را برای بررسی فایل‌ها و برنامه‌ها استفاده کنند. این تکنیک‌ها به شرح زیر هستند:

بررسی امضاء‌ها

بررسی اکتشافی

بررسی یکپارچگی

مسدودسازی فعالیت

برنامه‌های ضدویروس عملکردی شبیه به سامانه‌های تشخیص نفوذی دارند که بر مبنای تطابق الگوها کار می‌کنند. نرم‌افزار ضدویروس مبتنی بر اسکن-امضاء به ابتدا و انتهای فایل‌های اجرایی نگاه می‌کند تا امضا شناخته شده ویروس‌ها را پیدا کند. امضا چیزی نیست جز یک سری بایت که اشاره به کدهای ویروسی دارند. مثالی از امضای ویروس به شرح زیر است:

X5O!P%@AP[4\ PZX54(P^)7CC)7$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*

اگر خط بالا را درون یک فایل متنی کپی کرده و فرمت فایلی آن‌را به یک فایل اجرایی تغییر دهید، ضدویروسی که روی سیستم نصب کرده‌اید آن‌را به عنوان یک ویروس تشخیص می‌دهد. البته کد فوق ویروس نیست و یک کد بی ضرر است. این فقط ابزاری است که توسط انستیتوی اروپایی تحقیقات ضدویروس رایانه‌ای (EICAR) تهیه شده تا عملکرد نرم‌افزارهای ضدویروس را آزمایش کند. سازندگان ویروس پیوسته در تلاش هستند تا فرآیند تشخیص امضاء ضدویروس‌ها را با استفاده از تکنیک‌هایی همچون ویروس‌های چند ریختی گمراه کرده و از کار بیاندازند.

اسکن اکتشافی روش دیگری است که برنامه‌های ضدویروس از آن استفاده می‌کنند. ضدویروسی که بر مبنای این تکنیک کار می‌کند، فایل‌های رایانه‌ای را برای دستورالعمل‌های غیر معمول بررسی می‌کند. به عنوان مثال، به برنامه واژه‌پرداز خود فکر کنید. شما از این برنامه در شرایط عادی برای ساخت، ویرایش یا باز کردن فایل‌های متنی استفاده می‌کنید. اگر واژه‌پرداز سعی در فرمت درایو سی داشته باشد، ضدویروس‌های مبتنی بر تکنیک پویش اکتشافی به سرعت این موضوع را شناسایی می‌کنند، زیرا این کار نیست که یک برنامه واژه‌پرداز انجام دهد. تولیدکنندگان ضدویروس باید از تکنیک اسکن اکتشافی به شکل دقیقی استفاده کنند، زیرا در صورت عدم توجه به این موضوع ضدویروس بیش از حد هشدارهای مثبت یا منفی کاذب تولید می‌کند. بسیاری از فروشندگان ضدویروس از یک روش امتیازدهی استفاده می‌کنند که رفتارهای مشکوک را بررسی می‌کند. ضدویروس تنها زمانی که امتیاز از حد آستانه بالاتر رود هشداری به کاربر می‌دهد.

بررسی یکپارچگی روش دیگری است که برای اسکن ویروس‌ها از آن استفاده می‌شود. در تکنیک فوق یک بانک اطلاعاتی از مقادیر هش‌شده یا چک‌سام (checksum) ایجاد شده و درون یک فایل ذخیره می‌شوند. به‌طور دوره‌ای، هر زمان اسکن جدیدی انجام می‌شود، نتایج با نمونه‌های ذخیره شده مقایسه می‌شوند. اگرچه برای فایل‌های داده‌ای روش فوق مؤثر نیست، اما این روش برای برنامه‌ها و نرم‌افزارهای کاربردی عملکرد خوبی دارد، زیرا محتوای فایل‌های اجرایی به ندرت تغییر می‌کنند. به عنوان مثال، MD5Sum متعلق به نرم‌افزار Nmap نگارش 5.1 به صورت d6579d0d904034d51b4985fa2764060e است. هرگونه تغییر در برنامه Nmap باعث می‌شود تا این مقدار هش شده تغییر کند و اصل یکپارچگی مخدوش شود، در نتیجه ضدویروس به راحتی قادر به تشخیص این موضوع است.

مسدود کردن فعالیت‌ها روش دیگری است که برنامه‌های ضد ویروس از آن استفاده می‌کنند. در تکنیک مسدودکردن فعالیت، زمانی که یک ویروس شروع به اجرا می‌کند ضدویروس فعالیت آن را مسدود کرده و مانع از آلوده شدن برنامه‌ها یا داده‌های دیگر می‌شود. این تکنیک زمانی که سیستمی راه‌اندازی شده و مادامی که خاموش شود به فعالیت خود ادامه می‌دهد. یکی از روش‌‌هایی که برای آزمایش ویروس‌ها، کرم‌ها و بدافزارها از آن استفاده می‌شود به‌کارگیری یک جست‌جوگر آنلاین ویروس‌ها است. یکی از این سرویس‌های محبوب Jotti است. سرویس‌ فوق فایل‌های مشکوک را برای پیدا کردن ویروس‌ها یا بدافزارها آزمایش می‌کند. شکل زیر نمونه رابط کاربری سرویس فوق را نشان می‌دهد:

سایت‌های اسکن آنلاین مشابه دیگری نیز وجود دارد که برخی از آن‌ها به شرح زیر هستند:

Jotti                      https://virusscan.jotti.org/

VirusTotal            https://www.virustotal.com

ESET                   https://www.eset.com/us/online-scanner

Metadefender      https://www.metadefender.com/#!/scan-file Checks

VirSCAN              http://www.virscan.org

بزرگ‌ترین مشکل ضدویروس‌ها این است که روزانه تعداد زیادی بدافزار نوشته می‌شوند تا به اشکال مختلف ضدویروس‌ها را گمراه کنند.

تجزیه و تحلیل بدافزار

تجزیه و تحلیل بدافزار می‌تواند پیچیده باشد. در حالی که نگاهی عمیق به این حوزه از امنیت سایبری فراتر از حوصله این مجموعه است، اما یک کارشناس CEH باید درک اساسی از نحوه انجام تحلیل‌ها داشته باشد. دو روش اساسی برای تجزیه و تحلیل ویروس‌ها و سایر بدافزارها به شرح زیر است:

تحلیل ایستا

تجزیه و تحلیل پویا

تحلیل ایستا

تجزیه و تحلیل ایستا به مهندسی معکوس، تجزیه و تحلیل نرم‌افزارهای مخرب و در صورت امکان دیکامپایل (decompiling) اشاره دارد. رویکرد فوق به تحقیق در مورد ویروس‌ها و بدافزارها اشاره دارد. تحلیل عمیق نمونه‌هایی همچون Conficker ، Stuxnet ، Aurora و کیت Exploit Black Hole شروع خوبی برای این کار است. تجزیه و تحلیل ایستا به بازترجمه کدها و داده‌ها به شکلی اشاره دارد که برای انسان‌ها قابل فهم باشد. ابزارهای مختلفی برای این منظور وجود دارد که چند مورد از آن‌ها به شرح زیر است:

■ IDA Pro: یک disassembler تعاملی است که می‌توانید برای decompile کدها از آن استفاده کنید. این ابزار به ویژه زمانی که دسترسی به کدهای منبع مربوط به بدافزارها در دسترس نیست مفید است. IDA Pro به کاربر اجازه می‌دهد تا کد منبع را ببیند و دستورالعمل‌های اجرا شده توسط پردازنده را مرور کند. IDA Pro از تکنیک‌های پیشرفته‌ای برای خواندن کدها استفاده می‌کند.

■ BinText: ابزار دیگری است که برای تحلیل بدافزارها استفاده می‌شود. BinText یک استخراج کننده متن است که برنامه‌نویسان به آن علاقه دارند. ابزار فوق می‌تواند متن درون هر فایلی را استخراج کند که این موضوع شامل متن کدهای اسکی، یونی‌کد و رشته‌ها می‌شود. با تحلیل اطلاعات نرم‌افزار قادر است اطلاعات مفیدی را به شکل پیشرفته در اختیارتان قرار دهد.

■ UPX: ابزاری برای بسته‌بندی‌، فشرده‌سازی و از حالت فشرده خارج کردن است.

■ OllyDbg: یک ابزار اشکال‌زدایی است که امکان تجزیه و تحلیل هایکد باینری را زمانی که کدهای منبع در دسترس نیست فراهم می‌کند.

در کنار ابزارهای فوق سایت‌هایی نیز در دسترس قرار دارند که می‌توانند در  تجزیه و تحلیل فایل‌های مشکوک به بدافزارها کمک کنند. این ابزارهای آنلاین در صورت امکان‌پذیر نبودن مهندسی معکوس و دی‌کامپایل کردن کدها در تحلیل سریع و ساده کدها قابل استفاده هستند. بسیاری از این سایت‌ها به راحتی قابل استفاده هستند و یک رابط کاربری ساده تک کلیکی دارند. این سایت‌ها معمولاً عملکردی شبیه به جعبه شن دارند. جعبه شن یک محیط مستقل است که امکان می‌دهد ضمن نگه داشتن برنامه با خیال راحت برنامه را مشاهده یا اجرا کنید. یک مثال خوب از سرویس‌های جعبه شن Joe Sandbox و ThreatExpert است. ThreatExpert فایل‌هایی را در یک محیط مجازی درست مانند VMware و Virtual PC اجرا می‌کند. یک ابزار عالی است که تغییرات ایجاد شده در سیستم فایلی، رجیستری، حافظه و شبکه را ردیابی می‌کند. ThreatExpert قادر است برهمکنش‌های بدافزاری را در زمان واقعی رهگیری کند. شکل زیر نمونه‌ای عملکرد این سایت را نشان می‌دهد.

در مدت زمان ارزیابی امنیت شبکه، ممکن است بدافزار یا کد مشکوک دیگری کشف کنید. دقت کنید که شما همواره باید یک برنامه پاسخ به حوادث داشته باشید که نحوه رسیدگی به شرایط خاص و بحرانی را بررسی کند. اگر فقط از یک محصول ضد ویروسی برای اسکن بدافزارها استفاده می‌کنید ممکن است مقدار زیادی از دست برود. یک راه سریع برای درک بهتر وضعیتی که با آن روبرو هستید به‌کارگیری چند اسکنر ضدویروسی عمومی است. اسکنرهای ضدویروس عمومی به شما امکان می‌دهند بدافزارهای مشکوک را برای سرویس‌های دضویروس مختلفی ارسال کنید تا تحلیل‌های دقیق‌تری انجام شوند. VirusTotal.com یکی از سرویس‌های مشهور در این زمینه است. وب‌سایت VirusTotal به شما اجازه می‌دهد فایل‌ها را به روش‌های مختلفی بارگذاری کنید. در ادامه فایل‌های ارسالی توسط 40 محصول مختلف ضد ویروسی اسکن می‌شوند. شکل زیر رابط کاربری سایت فوق را نشان می‌دهد:

این ابزارها و تکنیک‌های ذکر شده دانشی در مورد نحوه انجام تحلیل بدافزارها  ارائه می‌دهند، اما فراموش نکنید که هکرها نیز شبیه به شما از ابزارهای فوق برای تحلیل بدافزارهایی که نوشته‌اند استفاده می‌کنند. تکنیک‌های مختلفی وجود دارد که مانع از آن می‌شوند تا فرآیند disassembly با موفقیت به سرانجام برسد. از جمله این تکنیک‌ها به موارد زیر می‌توان اشاره کرد:

■ رمزگذاری (Encryption)

■ مبهم سازی (Obfuscation)

■ کدگذاری (Encoding)

■ ماشین ضد مجازی (Anti-virtual machine)

■ ضد دیباگر (Antidebugger)

تحلیل پویا

تجزیه و تحلیل پویای بدافزارها و ویروس‌ها دومین روشی است که ممکن است مورد استفاده قرار گیرد. تجزیه و تحلیل پویا به نظارت و تحلیل فعالیت‌های انجام شده در کامپیوترها و ترافیک شبکه اشاره دارد. این تکنیک به توانایی در پیکربندی دستگاه‌های تحت شبکه برای نظارت، جست‌وجوی فعالیت‌های غیرمعمول یا مشکوک و عدم هشدار دهی به هکرها اشاره دارد. برای به‌کارگیری چنین راهکاری باید بستر مناسب برای آزمایش‌ها آماده شود. قبل از شروع به کار آزمایشگاه تحلیل پویا، دقت کنید که هدف اصلی نگه داشتن بدافزارها است. اگر در روش فوق عاملی باعث شد که سیستم میزبان به خطر بیفتد، تمامی تلاش‌ها بیهوده خواهد بود. سیستم‌های مجازی منابع بسیاری را با سیستم میزبان به اشتراک می‌گذارند و در صورت عدم استفاده صحیح از پیکربندی می‌توانند باعث به خطر افتادن میزبان شوند. در اینجا چند نکته برای جلوگیری از فرار بدافزارها از محیط ایزوله شده وجود دارد که توجه به آن‌ها اجازه می‌دهد بدافزار در یک محیط قرنطینه قرار بگیرد.

1. یک ماشین مجازی (VM) نصب کنید.

2. یک سیستم‌عامل مهمان روی VM نصب کنید.

3. سیستم را از مهمان VM جدا کنید.

4- تأیید کنید که کلیه اشتراک‌گذاری و انتقال داده‌ها بین ماشین مجازی و سیستم‌عامل میزبان مسدود شده باشد.

5- بدافزارها را روی سیستم‌عامل مهمان کپی کرده و برای تجزیه و تحلیل آماده کنید.

بعد از اتمام مراحل یاد شده، می‌توانید ابزارهای تحلیلی را برای کاوش دقیق‌تر موارد مشکوک نصب و پیکربندی کنید. از جمله ابزارهای کاربردی در این زمینه به موارد زیر می‌توان اشاره کرد:

■ Process Explorer: همان‌گونه که اعلام شد، برای رهگیری وضعیت پردازه‌ها استفاده می‌شود.

■ TCPView: سرویس‌ها و برنامه‌های فعال را مشخص می‌کند

■ NetResident: ترافیک شبکه را به شکل عمیق تحلیل می‌کند.

■ Wireshark: یک تحلیل‌گر دقیق بسته‌های تحت شبکه است.

■ Capsa Network Analyzer: یک ابزار تجاری تجزیه و تحلیل شبکه است.

■ TCPdump:  یک ابزار خط فرمان برای تجزیه و تحلیل شبکه است.

■ Tripwire: یک ابزار شناخته شده است که برای بررسی یکپارچگی استفاده می‌شود.

در شماره آینده مبحث فوق را ادامه می‌دهیم.

برای مطالعه رایگان تمام بخش‌های دوره CEH  روی لینک زیر کلیک کنید:

آموزش رایگان دوره CEH

ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را می‌توانید از کتابخانه‌های عمومی سراسر کشور و نیز از دکه‌های روزنامه‌فروشی تهیه نمائید.

ثبت اشتراک نسخه کاغذی ماهنامه شبکه     
ثبت اشتراک نسخه آنلاین

 

کتاب الکترونیک +Network راهنمای شبکه‌ها

  • برای دانلود تنها کتاب کامل ترجمه فارسی +Network  اینجا  کلیک کنید.

کتاب الکترونیک دوره مقدماتی آموزش پایتون

  • اگر قصد یادگیری برنامه‌نویسی را دارید ولی هیچ پیش‌زمینه‌ای ندارید اینجا کلیک کنید.

ایسوس

نظر شما چیست؟