دوره آموزشی GREM: مهندسی معکوس بدافزارها (GIAC Reverse Engineering Malware) برای متخصصان امنیت سایبری طراحی شده است و به افراد مهارتهایی در تحلیل بدافزارها، شناسایی رفتار آنها و مهندسی معکوس کدهای مخرب میدهد. این دوره بر اساس نیاز به شناسایی تهدیدات پیشرفته، تحلیل و مهندسی معکوس بدافزارها برای جلوگیری از حملات سایبری است. در اینجا، سر فصلهای این دوره آورده شده است:
بخش 1. مقدمهای بر مهندسی معکوس بدافزارها
فصل 1. تعریف و اهمیت مهندسی معکوس در امنیت سایبری
-
مهندسی معکوس چیست و چرا در امنیت کاربرد دارد؟
-
تفاوت بین مهندسی معکوس سختافزار، نرمافزار و بدافزار
-
جایگاه تحلیلگر بدافزار در تیمهای امنیتی (SOC, CERT, Threat Intel)
-
نقش مهندسی معکوس در کشف APT، تحلیل حملات Zero-day و مقابله با تهدیدات
فصل 2. کاربردهای اصلی مهندسی معکوس بدافزارها
-
شناسایی عملکرد و هدف بدافزار
-
کشف IoCها (Indicators of Compromise)
-
تحلیل اثرات مخرب بر سیستمعامل، شبکه و داده
-
کمک به ساخت Ruleهای YARA، Signatureهای IDS/IPS و قوانین SIEM
-
تحلیل کدهای ناشناخته یا مشکوک در حملات هدفدار
فصل 3. چرخه عمر بدافزار (Malware Lifecycle)
-
فازهای ایجاد و طراحی بدافزار
-
انتشار (Propagation) و نفوذ (Infiltration)
-
ماندگاری (Persistence) و اجرای پنهانی (Stealth)
-
تعامل با C2 Server و انجام مأموریت (Exfiltration/Destruction)
فصل 4. دستهبندی انواع بدافزارها
-
ویروسها (File Infectors)
-
کرمها (Worms)
-
تروجانها (Trojans)
-
باجافزارها (Ransomware)
-
جاسوسافزار (Spyware) و ثبتکننده کلید (Keylogger)
-
Rootkits و Bootkits
-
Remote Access Trojan (RAT)
-
Backdoors، Downloaders و Droppers
فصل 5. تکنولوژیها و تکنیکهای متداول در بدافزارها
-
استفاده از APIهای ویندوز برای نفوذ و دستکاری
-
روشهای رمزگذاری و Obfuscation
-
تکنیکهای ضد تحلیل (Anti-VM، Anti-Debug، Anti-Sandbox)
-
روشهای ارتباط با C2 Server (HTTP, HTTPS, DNS, P2P)
فصل 6. آشنایی اولیه با ابزارهای مهندسی معکوس
-
ابزارهای تحلیل استاتیک:
-
PEStudio، BinText، Detect It Easy
-
-
ابزارهای تحلیل دینامیک:
-
Procmon، Process Explorer، TCPView
-
-
معرفی کوتاه از IDA Pro، Ghidra، OllyDbg
-
محیطهای آزمایش بدافزار (VMware, VirtualBox، Cuckoo Sandbox)
فصل 7. طراحی محیط ایمن برای تحلیل بدافزار
-
اصول ایمنسازی آزمایشگاه تحلیل
-
جداسازی کامل محیط از شبکه واقعی
-
ساخت ماشینهای مجازی Snapshot شده
-
ابزارهای کنترل ترافیک، لاگ و بازگردانی سریع
فصل 8. مروری بر ساختار کلی دوره و مسیر یادگیری
-
چه مهارتهایی باید در این دوره آموخته شود
-
پیشنیازهای فنی: Assembly، شبکه، سیستمعامل، ساختار فایلها
-
مسیر پیشنهادی یادگیری ابزارها، تمرینها و آمادهسازی برای آزمون GREM
بخش 2. مفاهیم پایهای مهندسی معکوس
فصل 1. ساختار فایلهای اجرایی (Executable File Formats)
-
معرفی فرمتهای رایج فایل اجرایی:
-
Windows PE (Portable Executable)
-
Linux ELF (Executable and Linkable Format)
-
macOS Mach-O
-
-
بررسی ساختار PE فایل:
-
DOS Header (MZ Signature)
-
NT Header (PE Signature)
-
Section Table (CODE, DATA, .rsrc, .reloc)
-
Import Address Table (IAT) و Export Table
-
مفاهیم Relocation، Entry Point و Base Address
-
فصل 2. آشنایی با حافظه و مفاهیم آدرسدهی
-
مفاهیم Virtual Memory و Memory Mapping
-
بخشهای حافظه: Stack، Heap، Data، Code
-
نحوه بارگذاری فایل اجرایی در حافظه
-
Memory Offsets و Pointer Arithmetic
-
Address Space Layout Randomization (ASLR)
فصل 3. معماری پردازنده و ساختار اسمبلی
-
معرفی معماری x86 و x64
-
Registers در x86/x64 (EAX، EBX، ECX، RAX، RSP و…)
-
مفاهیم Stack، Frame Pointer و Stack-based Parameters
-
دستورهای متداول اسمبلی:
-
انتقال دادهها:
MOV,PUSH,POP -
محاسبات:
ADD,SUB,INC,DEC -
پرشها:
JMP,JE,JNE,CALL,RET -
عملیات منطقی:
AND,OR,XOR,NOT
-
-
Calling Conventions: cdecl، stdcall، fastcall
فصل 4. بررسی فرآیند اجرا و توابع
-
نحوه فراخوانی توابع در سطح پایین
-
بررسی Stack Frame یک تابع
-
تحلیل کدهای دیساسمبل شده برای درک عملکرد
-
فراخوانی توابع سیستمعامل (WinAPI / Syscalls)
-
مفاهیم Prologue و Epilogue در توابع اسمبلی
فصل 5. آشنایی با ساختار دادههای باینری و Hexadecimal
-
مفاهیم عددی در مبنای 16 و تبدیل آنها
-
بررسی رشتهها، ساختارهای ساده و پیچیده در باینری
-
تحلیل حافظه با ابزار Hex Editors
-
استخراج دادهها و Signatureها از فایل باینری
فصل 6. درک کلی عملکرد برنامه از روی کد سطح پایین
-
خواندن و تفسیر توابع بدون Source Code
-
شناسایی الگوهای رایج مانند حلقهها، شرطها و مقایسهها
-
بررسی متغیرها، آرایهها، و اشارهگرها در اسمبلی
-
بازسازی منطق کلی برنامه (Reconstruction of High-level Logic)
فصل 7. پیادهسازی سناریوی تحلیل یک فایل PE ساده
-
استخراج ساختار PE با ابزار PE-bear یا PEStudio
-
بررسی توابع Import شده و APIهای مشکوک
-
تحلیل اسمبلی فایل با IDA Free یا Ghidra
-
تشخیص نقطه ورود و رسم Flow Graph ساده
بخش 3. ابزارهای مهندسی معکوس
فصل 1. ابزارهای تحلیل ایستا (Static Analysis Tools)
-
PEStudio: شناسایی مشخصات مشکوک، توابع وارد شده، تحلیل خودکار فایلهای PE
-
Detect It Easy (DIE): تشخیص کامپایلر، Packer، رمزنگاری و مشخصات فایل اجرایی
-
BinText و Strings: استخراج رشتههای قابل خواندن برای تحلیل اولیه
-
Resource Hacker: مشاهده و استخراج منابع داخلی فایل PE مثل آیکن، دیالوگها و فایلهای جاسازیشده
-
SigCheck (Sysinternals): بررسی امضای دیجیتال، نسخه، هش و ویژگیهای امنیتی فایل
فصل 2. ابزارهای Disassembler و Decompiler
-
IDA Pro: تحلیل ساختار داخلی فایل اجرایی، گراف جریان کنترل، Labeling توابع، اعمال کامنت و پلاگینهای پیشرفته
-
Ghidra: تحلیل مهندسی معکوس، Decompilation کد باینری، بررسی ساختار برنامه با GUI قابل توسعه
-
Radare2 و Cutter: جایگزین Open-Source برای IDA، دیساسمبلر و دیکامپایلر تحت CLI و GUI
-
Hopper Disassembler (macOS/Linux): ابزار محبوب برای مهندسی معکوس فایلهای Mach-O و ELF
فصل 3. ابزارهای دیباگ و تحلیل پویای باینری
-
OllyDbg (x86): دیباگر تعاملی برای بررسی اجرای باینری، Breakpoint گذاری، مشاهده رجیسترها
-
x64dbg (x64 و x86): ابزار مدرنتر برای تحلیل کدهای مخرب 64 بیتی، پشتیبانی از پلاگینهای تحلیل خودکار
-
Immunity Debugger: دیباگر با قابلیت اسکریپتنویسی در Python، مناسب برای تست کدهای Exploit
-
WinDbg: دیباگر سطح کرنل ویندوز با توانایی تحلیل درایورها و بدافزارهای سطح پایین
فصل 4. ابزارهای تشخیص Packer و Unpacking دستی
-
PEiD (نسخه قدیمی) و جایگزین آن Exeinfo PE: شناسایی نوع Packer و Compiler
-
UPX: ابزار رایج برای فشردهسازی فایلهای اجرایی – قابل استفاده برای Unpack دستی
-
QUnpack / Unpacker Scripts: اسکریپتهای دستی برای Unpack کردن بدافزارهایی با پکر سفارشی
-
Scylla / ScyllaHide: Dump کردن حافظه و Rebuilding فایل PE پس از Unpack Runtime
فصل 5. ابزارهای استخراج رفتار اولیه بدافزار
-
Process Explorer و Process Hacker: بررسی دقیق فرآیندها، DLLهای بارگذاریشده، رجیستری
-
Procmon (Process Monitor): تحلیل رفتار رجیستری، فایلسیستم و شبکه هنگام اجرای بدافزار
-
Autoruns: شناسایی Persistenceها و Entry Pointهایی که بدافزار از آنها بهره میبرد
-
RegShot: مقایسه قبل و بعد از اجرای بدافزار برای شناسایی تغییرات رجیستری
فصل 6. ابزارهای شبکهای برای تحلیل ارتباطات
-
Wireshark: بررسی بستههای شبکهای، شناسایی ارتباط با C2 Serverها، استخراج IoC
-
INetSim: شبیهسازی محیط شبکهای جعلی برای پاسخدهی به درخواستهای بدافزار
-
Fakenet-NG: ابزار سبک برای پاسخگویی جعلی به درخواستهای DNS، HTTP، FTP و …
-
tcpdump: ابزار خط فرمانی برای ضبط و فیلتر ترافیک شبکه
فصل 7. ابزارهای تحلیل خودکار و سندباکس
-
Cuckoo Sandbox: تحلیل خودکار بدافزار در محیط ایزوله، گزارش کامل API Callها و ارتباطات
-
Any.Run (ابزار آنلاین): تحلیل تعاملی بدافزار با قابلیت نمایش زنده فعالیتها
-
Joe Sandbox: یکی از دقیقترین ابزارهای تجاری برای تحلیل خودکار بدافزارها
-
Hybrid Analysis: پلتفرم ابری تحلیل بدافزار با API و اتصال به Threat Intelligence
فصل 8. ابزارهای کمکی و پشتیبان
-
HxD و 010 Editor: ویرایشگر Hex برای بررسی دقیق ساختار فایلها و مقایسه باینری
-
Python Scripts: تحلیل فایلهای رمزنگاریشده، استخراج IoC، انجام Deobfuscation
-
YARA Rules Editor: نوشتن Ruleهای YARA برای شناسایی خانواده بدافزارها
-
VirusTotal API: بررسی هش فایلها و ارتباط با دیتابیس تهدیدات جهانی
بخش 4. تحلیل کدهای مخرب (بدافزارها)
فصل 1. مقدمهای بر تحلیل بدافزار
-
اهداف تحلیل کد مخرب: شناسایی، مستندسازی، کاهش تهدید
-
سطحبندی تحلیل: سطح اولیه (Basic) تا تحلیل عمیق (Advanced)
-
انواع بدافزار از منظر رفتار (Stealer، RAT، Keylogger، Crypto Miner، Dropper)
فصل 2. تحلیل ایستای بدافزار (Static Analysis)
-
بررسی فایل با ابزارهای PEview، PEStudio، Detect It Easy
-
استخراج نامها و رشتههای قابل خواندن (Strings) برای کشف IoC
-
بررسی Import Table برای شناسایی APIهای مشکوک (مثل
VirtualAlloc,WinExec,WriteProcessMemory) -
تحلیل Sections: شناسایی کدهای رمزگذاریشده یا Inject شده
-
استفاده از Signature-based Detection و ابزارهایی مانند YARA
فصل 3. تحلیل پویا (Dynamic Analysis)
-
اجرای بدافزار در محیط کنترلشده (Cuckoo، Any.Run، FLARE VM)
-
نظارت بر رفتار بدافزار با ابزارهای Procmon، Process Explorer، Regshot
-
بررسی تغییرات فایل، رجیستری، حافظه و پروسسها
-
بررسی تلاشهای ارتباطی با اینترنت (DNS، HTTP، FTP، IRC)
-
تحلیل رفتارهای Runtime: Self-Replication، Persistence، و Process Injection
فصل 4. بررسی تکنیکهای ماندگاری (Persistence)
-
بررسی مسیرهای Auto-start در رجیستری و فایلهای سیستمی
-
تکنیکهای Scheduled Task، Services، DLL Hijacking
-
کشف مخفیسازی مسیر اجرای بدافزار (Alternate Data Streams، Rootkit Methods)
فصل 5. تحلیل توابع مشکوک و رفتارهای خاص
-
بررسی APIهای حساس:
CreateRemoteThread,SetWindowsHookEx,NtQueryInformationProcess -
تحلیل رفتارهای خرابکارانه مثل رمزگذاری فایلها (Ransomware Logic)
-
بررسی Dropperها: تشخیص فایلهای ثانویه و مراحل اجرای بدافزار
-
تحلیل رفتارهایی که منجر به Exfiltration یا Credential Dumping میشوند
فصل 6. تحلیل بدافزارهای رمزگذاریشده یا فشردهشده (Packed/Malformed)
-
شناسایی بدافزارهای بستهبندیشده با ابزار PEiD، Exeinfo PE
-
تکنیکهای Unpacking دستی و اتوماتیک
-
بازسازی فایل اصلی (Rebuilding) بعد از استخراج از Memory
-
بررسی Stub و Payload در فایلهای Two-Stage و Multi-Stage
فصل 7. تحلیل Shellcode و کدهای تزریقی
-
شناسایی Shellcode در حافظه یا باینریها
-
تحلیل نحوه فراخوانی Shellcode در Assembly
-
بررسی تکنیکهای تزریق کد: Process Hollowing، DLL Injection، APC Injection
-
استخراج و بررسی کدهای Inject شده با ابزارهایی مانند Scylla یا Volatility
فصل 8. بررسی الگوهای رفتاری در بدافزارهای معروف
-
امضای رفتاری بدافزارهای معروف (مثل Emotet، Agent Tesla، TrickBot، LokiBot)
-
تحلیل یک بدافزار واقعی مرحلهبهمرحله
-
استفاده از پایگاههای داده بدافزارها (مثل Malpedia، Malware Bazaar، Hybrid Analysis)
فصل 9. مهارتهای گزارشنویسی پس از تحلیل بدافزار
-
مستندسازی گام به گام روند تحلیل
-
ثبت رفتارهای بدافزار و منابع آلودهشده
-
تولید IoCها (IP، Domain، File Hash، Mutex، Registry Key)
-
تهیه خروجی قابل ارائه به تیم دفاعی و مدیریتی
بخش 5. شبیهسازی رفتار بدافزارها
فصل 1. مقدمهای بر تحلیل Dynamic بدافزار
-
تفاوت تحلیل Static و Dynamic
-
مزایا و محدودیتهای تحلیل رفتاری
-
نقش تحلیل رفتاری در شناسایی بدافزارهای رمزنگاریشده یا مبهمسازیشده
-
موارد استفاده عملی در محیطهای SOC و Incident Response
فصل 2. طراحی محیط تحلیل ایزوله
-
انتخاب و پیکربندی سیستم عامل میزبان (Host) و مهمان (Guest)
-
استفاده از ماشینهای مجازی (VirtualBox، VMware Workstation)
-
Snapshot، Clone و Rollback برای تکرار آزمایش
-
راهاندازی شبکه داخلی یا NAT ایمن برای ارتباطات محدود
-
استفاده از ابزارهای جلوگیری از Escape و تعامل خارج از VM
فصل 3. تنظیم Sandbox برای شبیهسازی خودکار
-
نصب و پیکربندی Cuckoo Sandbox از صفر تا اجرا
-
تنظیم شبکه، Guest Agent، و نصب بستههای تحلیل روی VM
-
بررسی رفتار بدافزار پس از تزریق به Cuckoo
-
مشاهده فایلهای تغییریافته، کلیدهای رجیستری، فرآیندها، ارتباطات شبکه
-
مقایسه Cuckoo با دیگر ابزارها مثل Joe Sandbox، Any.Run، Malwr
فصل 4. ابزارهای رفتارشناسی سیستم در زمان اجرا
-
استفاده از Procmon برای نظارت بر فعالیت فایلها، رجیستری، DLL Load
-
استفاده از Process Explorer و Process Hacker برای مانیتورینگ فرآیندها
-
استفاده از Regshot برای مقایسه رجیستری قبل و بعد از اجرای بدافزار
-
ابزارهای ساخت اسکریپت مانیتورینگ رفتار مانند Sysmon + Sigma Rules
فصل 5. تحلیل ارتباطات شبکهای در محیط آزمایش
-
پیکربندی INetSim برای شبیهسازی سرویسهای شبکهای جعلی
-
استفاده از Wireshark برای Capture ترافیک خروجی بدافزار
-
بررسی دسترسی DNS، HTTP، FTP، IRC در فایلهای مشکوک
-
شناسایی رفتار C2 (Command & Control) و Beaconing
-
استفاده از Fake Domains و تحلیل رفتار DNS Tunneling
فصل 6. شبیهسازی سناریوهای رفتاری خاص
-
شبیهسازی Dropperها و بررسی فایلهای تولید شده
-
بررسی رفتار Persistence (ایجاد Autorun، Service، Task Scheduler)
-
رفتار فایلهای زمانبندیشده یا Time Bombs
-
اجرای بدافزار در سیستمهایی با دسترسی محدود یا بدون اینترنت
-
شبیهسازی شرایط خاص (مثلاً غیرفعال بودن آنتیویروس یا فایروال)
فصل 7. شناسایی تکنیکهای ضد تحلیل (Anti-VM, Anti-Debug)
-
بررسی رفتار بدافزار برای شناسایی محیطهای مجازی
-
شناسایی رفتارهایی مانند Sleep Loop، API Time Check، Hardware Artifacts
-
روشهای دور زدن یا Patch کردن توابع تشخیص تحلیل
-
استفاده از ابزارهایی مانند Pafish برای بررسی مقاوم بودن VM
فصل 8. مستندسازی و استخراج Indicators of Behavior
-
مستندسازی رفتار سیستم، فایلها، رجیستری، شبکه و حافظه
-
استخراج IoCها شامل مسیر فایلها، نام DLLها، IPها، URLها، دامنهها
-
تحلیل Signature رفتاری برای استفاده در SIEM
-
نمونهسازی رفتار بدافزار برای تولید Rule در YARA یا Suricata
فصل 9. مقایسه و اعتبارسنجی رفتار
-
مقایسه رفتار بدافزار با پایگاههای اطلاعاتی مانند VirusTotal و MITRE ATT&CK
-
اعتبارسنجی نتایج تحلیل با Sandboxهای عمومی
-
ارزیابی میزان پایداری نتایج در تکرار آزمایش با پارامترهای مختلف
-
بررسی تفاوت رفتاری بین نسخههای مختلف از یک خانواده بدافزاری
- پرسشهای شما، بخش مهمی از دوره است:
هر سوال یا مشکلی که مطرح کنید، با دقت بررسی شده و پاسخ کامل و کاربردی برای آن ارائه میشود. علاوه بر این، سوالات و پاسخهای شما به دوره اضافه خواهند شد تا برای سایر کاربران نیز مفید باشد. - پشتیبانی دائمی و در لحظه:
تیم ما همواره آماده پاسخگویی به سوالات شماست. هدف ما این است که شما با خیالی آسوده بتوانید مهارتهای خود را به کار بگیرید و پروژههای واقعی را با اعتماد به نفس کامل انجام دهید. - آپدیت دائمی دوره:
این دوره به طور مداوم بهروزرسانی میشود تا همگام با نیازهای جدید و سوالات کاربران تکمیلتر و بهتر گردد. هر نکته جدید یا مشکل رایج، در نسخههای بعدی دوره قرار خواهد گرفت.
حرف آخر
با ما همراه باشید تا نه تنها به مشکلات شما پاسخ دهیم، بلکه در مسیر یادگیری و پیشرفت حرفهای، شما را پشتیبانی کنیم. هدف ما این است که شما به یک متخصص حرفهای و قابلاعتماد تبدیل شوید و بتوانید با اطمینان پروژههای واقعی را بپذیرید و انجام دهید.
📩 اگر سوالی دارید یا به مشکلی برخوردید، همین حالا مطرح کنید!
ما در کوتاهترین زمان ممکن پاسخ شما را ارائه خواهیم داد. 🙌[/cdb_course_lesson][/cdb_course_lessons]
خدمات شبکه فراز نتورک | پیشرو در ارائه خدمات دیتاسنتری و کلود

نقد و بررسی وجود ندارد.