آموزش مهندسی معکوس: کاتر برای مبتدیان - آخرین آپدیت

دانلود Reverse Engineering: Cutter for Beginners

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

آموزش کاتِر برای مهندسی معکوس، تحلیل ایستا و دیباگینگ در ویندوز و لینوکس

موضوعات کلیدی که در این دوره خواهید آموخت:

  • یادگیری استفاده از کاتِر (Cutter) در محیط‌های ویندوز و لینوکس برای مهندسی معکوس برنامه‌ها، تحلیل ایستا و اشکال‌زدایی (دیباگینگ)
  • مبانی و تکنیک‌های مهندسی معکوس (Reverse Engineering)
  • شناخت و کار با زبان اسمبلی (Assembly Language)
  • دکامپایل کردن باینری به کد منبع C
  • تحلیل رجیسترها و حافظه
  • دیس‌اسمبل کردن فایل‌های باینری به کد اسمبلی
  • معکوس کردن پرش‌ها (Reversing Jumps) در کد
  • استفاده از دستورات NOP برای غیرفعال کردن دستورالعمل‌ها
  • آشنایی با APIهای ویندوز (Windows API)
  • کار با توابع C/C++
  • انجام تحلیل ایستا (Static Analysis) روی کد
  • انجام تحلیل دیباگینگ پویا (Dynamic Debugging Analysis)
  • تنظیم نقطه‌شکست‌ها (Breakpoints) و گام به گام (Stepping) در کد
  • جستجوی رشته‌ها (Strings Search) در فایل‌های باینری
  • تحلیل کد با نمای گرافیکی (Graphical View Analysis)
  • تعریف توابع از کد اسمبلی
  • حل کراک‌می‌ها (Crackmes)
  • دیباگینگ معکوس (Reverse Debugging) و قابلیت قدم به عقب برداشتن
  • قدم برداشتن (Stepping over) و تحلیل هگز دامپ‌های استک، رجیستر و حافظه
  • پچ کردن (Patching) و جایگزینی پرش‌ها با NOP
  • پچ کردن با استفاده از دستور xor eax, eax
  • حل کراک‌می‌های گرافیکی (Gui-Crackme): شامل جستجوی رشته، تعریف توابع و API ویندوز
  • روش‌های فیشینگ برای رمز عبورها و کلیدهای سریال
  • تغییر نام متغیرها برای بهبود تحلیل ایستا
  • استفاده از کنسول Rizin و دستور rax2
  • حل کراک‌می لینوکس 2 (Linux crackme2): استفاده از کنسول دیباگی (Debuggee Console)
  • قدم گذاشتن به درون فراخوانی توابع (Stepping into function calls)
  • و موارد پیشرفته دیگر...

پیش‌نیازهای اولیه برای شروع:

  • دانش پایه زبان اسمبلی
  • آشنایی با برنامه‌نویسی C
  • دسترسی به کامپیوتر شخصی با سیستم عامل ویندوز (Windows PC)
  • آشنایی با دستورات پایه لینوکس

اگر کاملاً با کاتِر (Cutter) ناآشنا هستید و می‌خواهید به سرعت کار با آن را شروع کنید، این دوره آموزشی مهندسی معکوس برای شماست. در این دوره، نحوه استفاده از کاتر برای سیستم‌عامل‌های ویندوز و لینوکس را به طور کامل پوشش خواهیم داد. کاتِر یک پلتفرم پیشرفته مهندسی معکوس با رابط کاربری گرافیکی (GUI-basedرایگان و متن‌باز است که برای آسان‌تر کردن کار با radare2 طراحی شده است. بک‌اند آن بر روی Rizin، فورکی از موتور قدرتمند radare2، اجرا می‌شود. کاتر توسط مهندسین معکوس برای مهندسین معکوس ساخته شده است و به همین دلیل ابزاری بسیار کاربردی و شهودی محسوب می‌شود. نسخه‌های کاتر به طور کامل با دکامپایلر بومی Ghidra ادغام شده‌اند. کاتر نه تنها می‌تواند یک فایل باینری را دیس‌اسمبل کند، بلکه قابلیت دکامپایل کردن آن به زبان C را نیز دارد. همچنین دارای نمای دیس‌اسمبلی خطی، نمای گرافیکی کاملاً امکانات و یک مینی‌گراف برای ناوبری سریع است.

کاتِر همچنین قابلیت منحصر به فرد دیباگینگ معکوس (Reverse Debug) را دارد که بسیاری از دیباگرهای دیگر فاقد آن هستند. این ویژگی به شما امکان می‌دهد نه تنها به جلو، بلکه به عقب نیز در کد قدم بردارید و جریان اجرای برنامه را به طور کامل درک کنید! کاتر همچنین دارای هگز دامپ‌ها و نمای استک است که به شما امکان می‌دهد استک، رجیسترها و حافظه را در لحظه ردیابی و بررسی کنید. علاوه بر این، می‌توانید با معکوس کردن پرش‌ها، اصلاح دستورالعمل‌ها و بایت‌ها، فایل‌های باینری را پچ (Patch) کنید. این دوره تمام موارد ذکر شده و تکنیک‌های پیشرفته‌تر را به شما آموزش خواهد داد.

ویژگی‌های برجسته این دوره آموزشی:

  1. طراحی شده با در نظر گرفتن مبتدیان و افرادی که تازه وارد دنیای مهندسی معکوس شده‌اند.

  2. استفاده از کراک‌می‌های ساده و قانونی برای ویندوز و لینوکس که به منظور یادگیری عملی مهندسی معکوس طراحی شده‌اند.

  3. رویکردی عملی و کاربردی (Hands-on) در آموزش.

  4. تمرکز بر استفاده انحصاری از ابزارهای رایگان و متن‌باز.

این دوره برای چه کسانی مناسب است؟

  • دانشجویان مهندسی معکوس و تحلیل بدافزار (Malware Analysis).

  • هر کسی که علاقه‌مند به یادگیری و تسلط بر استفاده از کاتِر برای مهندسی معکوس است.

  • محققان امنیت سایبری (Security Researchers).

پیش‌نیازهای دقیق‌تر دوره:

  • دسترسی به یک کامپیوتر شخصی ویندوز (Windows PC).

  • دانش پایه در زبان اسمبلی و برنامه‌نویسی C/C++ می‌تواند بسیار مفید باشد، اما اجباری نیست.

  • آشنایی با دستورات پایه لینوکس می‌تواند کاربردی باشد، اما ضروری نیست.

  • هر آنچه که برای موفقیت در این دوره نیاز دارید، به طور کامل در طول جلسات پوشش داده خواهد شد.

همین حالا ثبت‌نام کنید و شما را در دوره خواهم دید!


سرفصل ها و درس ها

مقدمه Introduction

  • مقدمه Introduction

نصب ابزارها Installing the tools

  • دانلود Cutter، نصب و تست آن Downloading Cutter, installing and testing it

مقدمه‌ای بر رابط کاربری Cutter و دانلود Crackme‌ها Introduction to the Cutter User Interface and Downloading Crackme's

  • دانلود Crackme‌ها و چند نکته مقدماتی Downloading Crackme's and some preliminary tips

  • بررسی رابط کاربری Cutter Exploring Cutter's User Interface

تحلیل استاتیک مقدماتی Basic Static Analysis

  • تحلیل استاتیک مقدماتی Basic Static Analysis

تحلیل دینامیک مقدماتی و Stepping Over Basic Dynamic Analysis and Stepping Over

  • Stepping Over و تحلیل Stack و Hexdump‌ها Stepping Over and Analyzing the Stack and Hexdumps

پچ کردن باینری‌ها: معکوس کردن پرش‌ها Patching binaries: reversing jumps

  • معکوس کردن پرش‌ها Reversing jumps

پچ کردن: جایگزینی پرش‌ها با NOP Patching: Replacing jumps with NOPs

  • پچ کردن: جایگزینی پرش‌ها با NOP Patching: Replacing jumps with NOPs

پچ کردن: xor eax, eax Patching: xor eax, eax

  • پچ کردن: xor eax, eax Patching: xor eax, eax

Gui-Crackme: متد جستجوی رشته، تعریف توابع و Windows API Gui-Crackme: String search method, defining functions and windows API

  • Gui-Crackme: متد جستجوی رشته، تعریف توابع و Windows API Gui-Crackme: String search method, defining functions and windows API

تحلیل Stack مربوط به Windows API Analyzing the windows API stack

  • تحلیل Stack مربوط به Windows API Analyzing the windows API stack

استفاده از xor eax, eax برای تنظیم پارامتر API و همچنین دور زدن پرش Using xor eax, eax to set API parameter and also bypass jump

  • استفاده از xor eax, eax برای تنظیم پارامتر API و همچنین دور زدن پرش Using xor eax, eax to set API parameter and also bypass jump

فیشینگ برای کلید سریال Phishing for the serial key

  • فیشینگ برای کلید سریال Phishing for the serial key

نصب Cutter برای لینوکس Installing Cutter for Linux

  • نصب Cutter برای لینوکس Installing Cutter for Linux

مقدمه‌ای بر crackme‌های لینوکس، تغییر تم و دکمه Esc Intro to Linux crackmes, changing themes and the esc button

  • مقدمه‌ای بر crackme‌های لینوکس، تغییر تم و دکمه Esc Intro to Linux crackmes, changing themes and the esc button

تغییر نام متغیرها برای کمک به تحلیل استاتیک Renaming variables to aid static analysis

  • تغییر نام متغیرها برای کمک به تحلیل استاتیک Renaming variables to aid static analysis

ویژگی جدید Reverse Debugging در Cutter Cutter's new Reverse debugging feature

  • ویژگی جدید Reverse Debugging در Cutter Cutter's new Reverse debugging feature

استفاده از کنسول Rizin و دستور rax2 Using the Rizin console and the rax2 command

  • استفاده از کنسول Rizin و دستور rax2 Using the Rizin console and the rax2 command

Linux crackme2: استفاده از کنسول Debuggee Linux crackme2: Using the Debuggee Console

  • Linux crackme2: استفاده از کنسول Debuggee Linux crackme2: Using the Debuggee Console

وارد شدن به فراخوانی‌های تابع (Stepping into) Stepping into function calls

  • وارد شدن به فراخوانی‌های تابع (Stepping into) Stepping into function calls

فیشینگ رمزهای عبور با تحلیل رجیسترها و Hexdump‌ها Phising passwords by analyzing registers and hexdumps

  • فیشینگ رمزهای عبور – بخش 1 Phishing passwords - part 1

  • فیشینگ رمزهای عبور – بخش 2 Phishing passwords - part 2

  • فیشینگ رمزهای عبور – بخش 3 Phishing passwords - part 3

منابع برای مطالعه بیشتر Resources for further study

  • درس جایزه Bonus Lecture

نمایش نظرات

آموزش مهندسی معکوس: کاتر برای مبتدیان
جزییات دوره
5 hours
24
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
526
4.8 از 5
دارد
دارد
دارد
Paul Chin
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Paul Chin Paul Chin

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