امنیت و نفوذ, توصیه شده, نرم افزار

مهندسی معکوس: لبهٔ تکنولوژی با گیدرا (Ghidra) – شماره 00

گیدرا

مقدمه

این رشته پست ها یک راهنمای جامع کاربردی برای ابزار مهندسی معکوس گیدرا هستند. توی این مجموعه پست در حداقل 50 قسمت که به صورت هفتگی، آخر هفته ها در سیسوگ قرار میگیرن، از صفر کار با گیدرا رو یاد میگیریم و از گیدرا برای کارای مختلف(آنالیز بدافزار و بررسی باینری و …) استفاده میکنیم. جلوتر که بریم هم میبینید که چطوری میشه با استفاده از اسکریپت های گیدرا کارای پیچیده و زمان بر رو اتوماتیک انجام داد. در ادامه هم مباحث عملی رو رها میکنیم و فقط به تئوری های سطح بالای مهندسی معکوس و گیدرا میپردازیم.

بعد از خوندن کامل و انجام نمونه کارهایی که تا 20 قسمت اول انجام میدیم شما به یه متخصص گیدرا تبدیل میشید و میتونید توی اکثر کارهای مهندسی معکوس از این ابزار استفاده کنید و ابزار خودتون رو برای گیدرا توسعه بدید. ضمنا در مورد جامعه ی کاربری گیدرا هم صحبت میکنیم و اینکه چطور میتونید توی توسعه ی گیدرا مشارکت داشته باشید و نمونه کدهاتون، باگ هایی که پیدا کردید و هرچیز دیگه رو به پروژه ی گیدرا که متعلق به سازمان ملی امنیت آمریکاست(NSA) ارائه بدید و با باقیه جامعه ی کاربری در ارتباط باشید.

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

 

کیا باید این مجموعه پست رو دنبال کنن؟

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

  • زبان های برنامه نویسی و ماشین شامل: Assembly, C, Python, Java
  • آشنایی با بخش های درونی سیستم
  • دیباگر ها
  • دیس اسمبلر ها

هرچند اگر بلد نباشید هم مشکلی ایجاد نمیشه، ولی کارتون ممکنه یکم سخت بشه و حداقل بهتره یک زبان برنامه‌نویسی رو بلد باشید.

 

منابع

بخش اول این مجموعه پست از کتاب زیر هست که نکات تئوری رو مختصر شرح داده و کد بیس خوبی هم به این منظور توسعه داده و ما هم مرحله‌به‌مرحله روند کتاب رو دنبال می‌کنیم و مسائل رو با هم حل می‌کنیم.

Ghidra Software Reverse Engineering for Beginners_ Analyze, identify, and avoid malicious code and potential threats in your networks and systems

در بخش انتهایی هم مباحث سطح بالای مهندسی معکوس رو از کتاب‌های مختلف جناب Chris Eagle باهم بررسی می‌کنیم و یاد می‌گیریم.

 

ابزار ها

ابزاری که ازشون استفاده می‌کنیم:

سیستم عامل هایی که قابلیت اجرا دارند نرم افزار های مورد استفاده
Windows, MacOS,Linux Ghidra
Windows, MacOS,Linux Git
Windows, MacOS,Linux Java JDK 11
Windows, MacOS,Linux Eclipcse IDE for Java developers
Windows, MacOS,Linux Gradle 5.0 یا جدید تر
Windows, MacOS,Linux VirtualBox
Windows MinGW64
Windows Olly Debugger

 

اگر عجله دارید برای دانلود گیدرا به این لینک سری بزنید و برای دانلود نمونه ی کد ها به این ریپازیتوری برید و دانلودشون کنید.

هر چیزی نیاز باشه رو هم توی همین مجموعه پست ارائه میدیم و نیاز به چیز دیگه ای ندارید. اما بازم تکرار می‌کنیم برای اینکه حداکثر استفاده رو از این پست‌ها داشته باشین 4 تا زبان پایتون، سی، جاوا و اسمبلی ضروریه. هرچند ما خودمونم جاوا بلد نیستم و مشکلی برامون پیش نیومده.

 

چه چیزایی رو قراره یاد بگیریم:

  1. یادگیری گیدرا و ساختار اون(عملی-تئوری)
  2. مهندسی معکوس(عملی-تئوری)
  3. توسعه و استفاده ی پیشرفته از گیدرا(عملی-تئوری)
  4. بررسی عملکرد دیس اسمبلر(تئوری)
  5. ساختار و نمایش سطح بالای گیدرا(تئوری)
  6. تغییر گیدرا متناسب با نیاز شما(تئوری)
  7. بررسی کامل گیدرا از سطح ماشین تا سطح بالا(تئوری)
  8. کاربردهای بیشتر گیدرا(تئوری)

 

تاریخ قرار گرفتن قسمت بعدی:

21 مهر 1400

انتشار مطالب با ذکر نام و آدرس وب سایت سیسوگ، بلامانع است.

شما نیز میتوانید یکی از نویسندگان سیسوگ باشید.   همکاری با سیسوگ

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

3 دیدگاه در “مهندسی معکوس: لبهٔ تکنولوژی با گیدرا (Ghidra) – شماره 00

  1. علی گفت:

    فوق العادس
    انشاله که ادامه دار بار باشه

  2. محمدرضا گفت:

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

  3. مصطفی پیران گفت:

    تشکر
    کنجکاو شدم