• نقشه مسیر
  • دوره ها
  • باگ بانتی
  • محصولات
ورود/ثبت نام
هانت لرن


  • نقشه مسیر
  • دوره ها
  • باگ بانتی
  • محصولات
  • بلاگ
    خدمات
    هانت لرن
درباره هانت لرن

شرکت ایمن پژوهان ویرا، به عنوان یک شرکت مستقل در حوزه امنیت سایبری در ایران، با هدف ترویج فرهنگ امنیتی، آموزش و ارتقاء دانش امنیتی کشور و نوآوری در ارائه خدمات امنیتی فعالیت می‌کند. این شرکت تحت نام Huntlearn (هانت لرن)، فعالیت‌های آموزشی خود را پیش می‌برد و با بهره‌گیری از تیمی متشکل از افراد متخصص و متعهد، در تلاش است تا محتوایی ارزشمند و خدماتی با کیفیت بالا ارائه دهد. هدف ما ایجاد بستری امن و پایدار برای رشد و توسعه دانش امنیت سایبری در کشور است.

logo-samandehi
دسترسی سریع
  • نقشه مسیر
  • دوره ها
  • باگ بانتی
  • محصولات
  • مقالات
راه‌های ارتباطی

ایمیل

ایدی تلگرام

شماره تماس

huntlearnco@gmail.com

@huntlearn_support

09131585991

آدرس

یزد، خیابان ایثارگران، رو به روی داروخانه
logo-samandehi

کليه حقوق محصولات و محتوای اين سایت متعلق به هانت لرن می باشد و هر گونه کپی برداری از محتوا و محصولات سایت غیر مجاز و بدون رضایت ماست

  1. خانه
  2. وبینار ها و دوره های اموزشی
  3. Linux Malware Development
Linux Malware Development

Linux Malware Development

آموزش تخصصی Linux Malware Development با تمرکز بر C، ELF، Syscall، حافظه، Dynamic Linking و رفتار پردازش؛ توسعه نمونه آزمایشگاهی، Debugging و تحلیل آثار آن با GDB، strace و ابزارهای دفاعی.

۰ دانشجو

جزئیات روش و مدت پشتیبانی پیش از فعال‌شدن ثبت‌نام اعلام می‌شود.

امتیاز ۰ از ۵

علی سلطانی

علی سلطانی

مدرس دوره

اطلاعات مدرس

امکان خرید قسطی

دارد
ندارد

مدرک

دارد
ندارد
جزئیات دوره

سطح دوره:

سخت

زبان:

فارسی

پیشنیاز:

دارد

مدت دوره:

40 ساعت

تعداد سرفصل ها:

12

تعداد جلسات:

48

روش دریافت:

ضبط‌شده / آنلاین

روش پشتیبانی:

جزئیات روش و مدت پشتیبانی پیش از فعال‌شدن ثبت‌نام اعلام می‌شود.
0:00
-0:00
غیر فعال
خودکار
0.25x
0.5x
0.75x
عادی
1.25x
1.5x
1.75x
2x

توضیحات

سرفصل ها

مخاطبین

سوالات متداول

نظرات دانشجویان

آموزش Linux Malware Development و ELF

مدرس: علی سلطانی

Linux Malware Development با تدریس علی سلطانی، پیوند میان برنامه‌نویسی سطح سیستم، ساختار فایل اجرایی و رفتار قابل مشاهده در لینوکس را بررسی می‌کند. هدف این است که پژوهشگر امنیت بتواند منطق یک نمونه آزمایشگاهی را بفهمد، رفتار آن را در سطح Process و Syscall تحلیل کند و آثارش را به شواهد قابل استفاده برای تحلیل بدافزار و Detection تبدیل کند.

پایه دوره، زبان C، مدل حافظه پردازش، ELF و چرخه Compile و Link است. سپس Dynamic Loader، Shared Library، ارتباط libc و Syscall، File Descriptor، Signal، IPC و Socket Programming بررسی می‌شوند. تمرین‌ها از برنامه‌های کوچک و رفتارهای محدود آغاز می‌شوند تا رابطه کد، Binary، فراخوانی سیستم و لاگ قابل مشاهده روشن باقی بماند. Debugging و بررسی خطا بخش اصلی فرایند هستند، نه مرحله‌ای فرعی پس از نوشتن کد.

در بخش پژوهش رفتاری، خانواده‌های Persistence، Loading و Instrumentation از نظر مکانیزم، سطح دسترسی و آثار دفاعی تحلیل می‌شوند. ساختار Rootkit و تفاوت User Space و Kernel Space نیز در سطح معماری و شواهد مطرح می‌شود. سناریوی نهایی روی نمونه محدود آزمایشگاهی، ثبت تغییرات فایل و پردازش و شبکه و طراحی معیار شناسایی تمرکز دارد. نتیجه، توانایی توضیح رفتار و محدودیت نمونه با شواهد فنی و گزارش پژوهشی قابل بازبینی است.

مهارت‌هایی که در این دوره دنبال می‌کنید

  • تحلیل رابطه کد C، فایل ELF و اجرای پردازش
  • بررسی Syscall، حافظه، Signal و File Descriptor
  • خواندن Dynamic Dependency و چرخه بارگذاری Library
  • Debug کردن نمونه آزمایشگاهی و تحلیل خطا
  • ثبت شواهد File، Process و Network هر رفتار
  • طراحی منطق شناسایی و گزارش محدودیت پژوهش

پیش‌نیازهای فنی

  • تسلط به لینوکس، Process، Permission و خط فرمان
  • دانش C شامل Pointer، Struct، Memory Allocation و Function
  • آشنایی با x86-64 و Assembly در سطح خواندن دستورهای پایه
  • دانش مقدماتی Socket، TCP/IP و تحلیل فایل اجرایی

ابزارها و منابع فنی مسیر آموزش

  • GCC یا Clang و ابزارهای Build
  • GDB برای Debugging و بررسی حافظه
  • readelf، objdump، nm و strings
  • strace، ltrace و ابزارهای پایش Process/Socket
  • YARA و لاگ‌های auditd برای تحلیل شواهد

برنامه آموزشی و سرفصل‌های تخصصی

1. آزمایشگاه پژوهش و مدل اجرای برنامه لینوکس

  • تفکیک محیط نمونه، حسگر و تحلیلگر
  • Snapshot، محدودسازی ارتباط و بازگردانی وضعیت
  • تعریف رفتار نمونه و معیار توقف تمرین
  • ثبت Hash، نسخه Build و خروجی آزمایش

2. C برای برنامه‌نویسی سطح سیستم

  • Pointer، Struct و مدیریت حافظه
  • بررسی Buffer، طول ورودی و مدیریت خطا
  • کار با File Descriptor و ورودی/خروجی
  • خواندن Return Value و errno در مسیر اجرا

3. ELF Internals؛ Header، Segment و Section

  • تحلیل ELF Header و Program Header
  • تفاوت Section و Segment در تحلیل و بارگذاری
  • شناخت Symbol، Relocation و Dynamic Section
  • بررسی Entry Point و Dependency با readelf

4. Compile، Link و Dynamic Loader

  • تفاوت Static و Dynamic Linking
  • نقش Shared Object و مسیر جست‌وجوی Library
  • شناخت PLT و GOT در حد تحلیل Binary
  • مقایسه Symbolهای Debug و Binary بدون Symbol

5. Process، Syscall و مدل دسترسی

  • رابطه libc Wrapper و System Call
  • شناخت fork، exec و چرخه عمر Process
  • تحلیل UID، EUID و Linux Capability
  • بررسی اثر Namespace و Seccomp بر رفتار برنامه

6. حافظه پردازش؛ Stack، Heap و Mapping

  • تحلیل Virtual Address Space و /proc maps
  • بررسی mmap، Protection و چرخه عمر ناحیه حافظه
  • شناسایی خطاهای Memory و Crash در Debugger
  • پیوند Address با Segment و Module بارگذاری‌شده

7. Signal، IPC و مدیریت چرخه برنامه

  • شناخت Signal Handler و خاتمه کنترل‌شده
  • بررسی Pipe، Shared Memory و ارتباط پردازش‌ها
  • مدیریت Resource و پاک‌سازی File Descriptor
  • تست Timeout، Deadlock و خطای مسیر اجرا

8. Socket Programming و مشاهده رفتار شبکه

  • مدل Client/Server و چرخه Socket
  • مدیریت داده، Timeout و خطای اتصال
  • بررسی تفاوت Blocking و Non-blocking در طراحی
  • ثبت ارتباط نمونه با ss و PCAP آزمایشگاهی

9. Loading و رفتارهای غیرمعمول در User Space

  • شناخت Dynamic Loading و Constructor در Shared Library
  • تحلیل نقش Environment و Loader Configuration
  • بررسی Interposition و مشاهده اثر آن با ltrace
  • مقایسه کاربرد مشروع و رفتار مشکوک از دید شواهد

10. Persistence و Rootkit از دید معماری و Detection

  • دسته‌بندی آثار Service، Timer و Startup
  • بررسی مرز User Space و Kernel Space
  • تحلیل وابستگی مکانیزم به Privilege و نسخه Kernel
  • تعیین Evidence موردنیاز برای تأیید فرضیه ماندگاری

11. Debugging و تحلیل رفتاری با GDB و strace

  • Breakpoint، Register، Stack و Call Trace
  • تحلیل Syscall Sequence و آرگومان‌ها
  • پیوند رشته، Symbol و مسیر اجرای نمونه
  • ثبت تفاوت رفتار مورد انتظار و نتیجه واقعی

12. شناسایی، YARA و گزارش پژوهش نمونه

  • تفکیک شاخص پایدار و Artifact وابسته به Build
  • طراحی الگوی فایل و ارزیابی False Positive
  • همبستگی Audit، Process و Network Event
  • مستندسازی محدودیت، پاک‌سازی و نتیجه آزمایش

سناریوی تمرین و خروجی فنی

یک نمونه محدود آزمایشگاهی برای نمایش چند رفتار سیستم‌عاملی طراحی و Debug می‌شود. خروجی شامل Source و Binary با Hash مشخص، تحلیل ELF، Trace فراخوانی سیستم، شواهد فایل و شبکه و پیشنهاد یک منطق شناسایی است؛ تمرکز بر توضیح مکانیزم و ارزیابی مشاهده‌پذیری رفتار قرار دارد.

شیوه ارائه و برنامه‌ریزی یادگیری

شیوه ارائه این دوره ضبط‌شده / آنلاین است. سرفصل‌ها و زمان‌بندی جلسات، برنامه آموزشی دوره را نشان می‌دهند؛ دسترسی به محتوای جلسات پس از فعال‌شدن ثبت‌نام ارائه می‌شود.

سرفصل ها

مخاطبین

پژوهشگران امنیت و تحلیلگران بدافزار لینوکس
Reverse Engineerها و متخصصان تحلیل Binary
اعضای Red Team و شبیه‌سازی تهدید
Detection Engineerها و کارشناسان دفاع لینوکس
برنامه‌نویسان C علاقه‌مند به امنیت سیستم‌عامل

سوالات متداول

آیا این دوره برای شروع برنامه‌نویسی C مناسب است؟

خیر. Pointer، Struct، تخصیص حافظه و مدیریت خطا باید پیش از شروع شناخته شده باشند. این مباحث در ارتباط با ELF، Process و Syscall استفاده می‌شوند و زمان دوره صرف آموزش کامل مقدمات C نمی‌شود.

آیا دوره فقط درباره ساخت فایل اجرایی است؟

خیر. چرخه Build و تحلیل ELF به مشاهده اجرا، Debugging، Trace و طراحی شواهد شناسایی متصل می‌شود. فهم رابطه کد و رفتار سیستم‌عامل بخش اصلی مسیر است.

تفاوت این دوره با Linux Forensics چیست؟

Linux Forensics از شواهد موجود برای بازسازی رخداد استفاده می‌کند. این دوره از کد و مکانیزم اجرا شروع می‌کند و سپس آثار رفتار را تحلیل می‌کند؛ دو مسیر برای پژوهش و دفاع مکمل‌اند.

آیا بخش Rootkit معادل توسعه Rootkit عملیاتی است؟

این معرفی، معماری، مرز User/Kernel و شواهد مرتبط را در برنامه آموزشی قرار می‌دهد. هدف بیان‌شده، تحلیل مکانیزم و مشاهده‌پذیری در پژوهش آزمایشگاهی است و نباید با وعده یک محصول عملیاتی آماده اشتباه شود.