در قسمت قبل تاریخ مختصر و هیجانانگیز گیدرا رو باهم مرور کردیم. بعدش دیدیم که چطوری دانلود، نصب و از سورس کد کامپایلش کنیم و بهطور کلی باید حالا توی موقعیتی باشید که بتونید بهتنهایی گیدرا رو بررسی و آزمایش کنید! توی این قسمت بازهم بیشتر با گیدرا آشنا میشیم و اون رو باهم سفارشیسازی میکنیم.
در قسمتهای قبل، منابع و ابزارهای مهم، آشنایی اولیه و نکات مهم دررابطهبا این آموزشها معرفی شد. اگر اولینبار است که این مقاله را میبینید، برای استفاده هر چه بیشتر و بهتر از قسمت صفر شروع کنید!
اگه یادتون باشه، قرار بود آخر هر قسمت قبل سؤالاتی رو به عنوان تمرین مطرح کنم و شما جوابش رو جایی یادداشت کنید تا با جوابهای درستی که قسمت بعد قرار میدم مقایسشون کنید.
هیچکدام از فریمورکهای مهندسی معکوس کاملترین ابزار نیستن. هر فریمورک نقاط ضعف و قدرت خودشو داره.
بریم نقاط مثبت گیدرا رو یکبار دیگه باهم بررسی کنیم:
حالا بریم سراغ نقاط ضعف گیدرا:
در ادامه مرورگر کد گیدرا و نحوه سفارشیسازی اون رو با هم بررسی میکنیم.
مرورگر کد گیدرا، با تنظیمات پیشفرض خودش خیلی زیبا و کاربردی طراحی شده و مهندسی NSA رو بهوضوح میشه توش دید:
بریم ببینیم که بخشهای مختلف این مرورگر چی هستن و چه وظیفهای به عهده دارن:
تا محیطی که ازش استفاده میکنیم رو تغییر ندیم، توسعهدهنده نشدیم! میتونیم توی منوی Window ابزاری که بهش نیاز داریم رو انتخاب کنیم تا به محیط گیدرا اضافه بشه:
ضمناً گیدرا خیلی کارکردهای جالب دیگه ای هم داره؛ برای مثال، توی نوارابزار بالای صفحهٔ دیس اسمبلی میتونید صفحهٔ دیس اسمبلر رو تغییر بدید و کلی کار مختلف انجام بدید:
مثلاً اگر روی گزینهای که توی تصویر بالا نشون دادیم کلیک کنید کلی تنظیمات رو برای دیس اسمبلر میبینید. یکی از ویژگیهای خیلی عالی گیدرا همینجا قرار داره. این ویژگی بهتون اجازه میده که بتونید یه چیزی به اسم PCode رو ببینید. پی کد یه نمایش سطح متوسط یا یه زبان سطح متوسطه که بهتون اجازه میده که بتونید ابزار مهندسی معکوس خودتون رو برای بررسی کد اسمبلی، با یه زبان واسط و یکم قابلفهمتر توسعه بدید. برای فعالسازی مطابق تصویر زیر عمل کنید:
وقتی که فعالش کردید، سریعاً متوجه میشید که PCode اصلا خوانا نیست ولی مطمئن باشید ترجیح میدید که اسکریپت های اسمبلیتون رو با PCode بنویسید به جای زبان اسمبلی. توی تصویر زیر خروجی دیس اسمبلر رو با PCode میبینید:
تاریخ انتشار قسمت بعدی:
1400/08/08
صفحه ی سیسوگ آکادمی برنامه نویسی کایوش: در سیسوگ مطالب منحصر بفرد آموزشی را به صورت رایگان با شما به اشتراک میگذاریم.
مقالات بیشترسپاس از شما
سلام.
ممنون از سری مطالب جذاب و تخصصیتون
pcode رو از کجا میتونیم یاد بگیریم ؟ و آیا یادگیری زبان اسمبلی قبل از اون کمک کننده (یا نیاز) هست یا نه؟
سلام. مطمئنا آشنایی با اسمبلی برای درک پی کد کمک کننده هست اما ضروری نیست. ابزار زیادی PCode رو تولید میکنن و بعضیاشون خوانا تر از بقیه هستن. مثلا IDA یک افزونه داره که کد اسمبلی رو برای مثال به این صورت در میاره:
add a b
تبدیل میشه به a+b به عنوان PCode که خوانا تره و واقعا درک خاصی نمیخواد.
برای درک بهتر PCode گیدرا هم داکیومنتهای توسعه ی سطح بالا و سطح بالای نرم افزار توی مسیر ./docs/GhidraClass کامل موضوع رو پوشش دادن.(هرچند بازم باید تمرین کنید تا دقیقا متوجه بشید.)
سیسوگ جان
ادامه این مقاله آموزشی منتشر نمیشه ؟
پوزش میطلبیم برای تاخیر پیش آمده
سلام مجموعه فعال کایوش قسمت بعدی را اماده کردند و بزودی منتشر میشه
بسیار عالی?
نویسنده شو !
سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.