Ghidra یکی از محبوب ترین فریم ورک های مهندسی معکوس برای متخصصان امنیت است. در اینجا نحوه نصب آن در لینوکس آورده شده است.
با ابزارها و قدرت تحلیلی Ghidra SRE، سفر خود را آغاز کنید تا یک معکوس کننده ماهر باشید. در اینجا راهنمای نحوه نصب و راه اندازی Ghidra بر روی دستگاه لینوکس شما است.
غدرا چیست؟
Ghidra که توسط NSA ایجاد شده است، یک چارچوب مهندسی معکوس نرمافزار پیچیده و متنباز است که ابزارهای درجه نظامی را برای تجزیه و تحلیل و معکوس کردن باینریهای نرمافزار ارائه میدهد. با Ghidra، می توانید یک نرم افزار باینری را مهندسی معکوس یا دیکامپایل کنید و کد منبع زیر آن را مطالعه کنید.
این اغلب چارچوب مورد استفاده در تجارت تجزیه و تحلیل بدافزار و مهندسی معکوس است و رقابت نزدیکی با IDA، یک چارچوب مهندسی معکوس نرم افزاری با قد مشابه دارد.
مرحله 1: نصب JDK 11
قبل از بررسی فرآیند نصب Ghidra، باید مطمئن شوید که سیستم شما JDK 11 را نصب و راه اندازی کرده است. بدون جاوا بر روی سیستم شما، Ghidra حتی از راه اندازی خودداری می کند.
می توانید JDK 11 را به صورت دستی با دانلود tarball نصب کنید یا آن را از طریق مدیر بسته توزیع لینوکس خود نصب کنید. در حالت ایدهآل، نصب از طریق مدیران بسته راه حلی است زیرا بسیار سریعتر و بدون دردسر از روش عملی قبلی است.
برای نصب JDK 11 بر روی دسکتاپ لینوکس، ترمینال را روشن کنید و دستورات زیر را بسته به مدیر بسته توزیع خود اجرا کنید:
در سیستم های مبتنی بر دبیان/اوبونتو:
sudo apt-get install openjdk-11-jdk
در سیستم های مبتنی بر Arch:
sudo pacman -S jdk11-openjdk
در سیستم های Fedora/CentOS/RHEL:
sudo dnf install java-latest-openjdk
مرحله 2: نصب Ghidra
Ghidra SRE معمولاً در یک سیستم نصب نمی شود و یک نصب کننده سنتی همراه با فایل انتشار Ghidra وجود ندارد. شما فقط باید باینری ها را دانلود کنید، آنها را با استفاده از دستور chmod قابل اجرا کنید و آنها را از ترمینال در حال حرکت اجرا کنید.
دانلود Ghidra
برای شروع، آخرین فایل ZIP منتشر شده Ghidra را از مخزن رسمی دانلود کرده و آن را در یک دایرکتوری استخراج کنید. پس از استخراج فایل ها، با استفاده از دستور cd به دایرکتوری بروید.
توجه داشته باشید که دانلود نسخههای قدیمیتر میتواند کاری پرخطر باشد زیرا Ghidra که یک برنامه جاوا است، طعمه آسیبپذیری log4shell بود. این نقص امنیتی در به روز رسانی 10.1.1 برطرف شد. بنابراین به عنوان یک اقدام ایمنی، سعی کنید از استفاده از نسخه های قبل از آخرین نسخه خودداری کنید.
دانلود: Ghidra (رایگان)
دویدن غیدرا
در بین فایل های اکسترکت شده فایلی به نام ghidraRun پیدا خواهید کرد. این یک اسکریپت Bash برای راه اندازی Ghidra است. یک پوسته در پوشه باز کنید، فایل را با استفاده از دستور chmod قابل اجرا کنید و با استفاده از دستورات زیر آن را از خط فرمان اجرا کنید:
chmod +x ghidraRun
./ghidraRun
این باید Ghidra SRE را روشن کند. روی موافقم کلیک کنید و با صفحه نمایش غیدرا مواجه خواهید شد.
مرحله 3: ایجاد میانبر دسکتاپ برای Ghidra
همانطور که قبلا ذکر شد، Ghidra با نصب کننده ارسال نمی شود. بنابراین Ghidra را در منوی برنامه ها یا با جستجو در کشوی برنامه در دسکتاپ لینوکس خود پیدا نخواهید کرد.
اگر مکرراً از Ghidra استفاده می کنید، پیدا کردن دایرکتوری به صورت دستی و روشن کردن آن از ترمینال هر بار مشکل ساز است.
یک راه حل ساده برای ساده کردن این فرآیند ایجاد یک میانبر دسکتاپ برای Ghidra است. در اینجا نحوه ایجاد میانبر دسکتاپ برای Ghidra SRE آورده شده است:
- یک فایل ورودی دسکتاپ ایجاد کنید و آن را با داده های زیر پر کنید:[Entry Desktop]Version=10.0Type=ApplicationTerminal=falseIcon=/home/artemix/ghidra/supportExec=sh /home/artemix/ghidra/ghidraRun.shName=Ghidra
- داده های موجود در فیلدهای Icon و Exec را با مکان نماد Ghidra و اسکریپت راه اندازی در دستگاه خود جایگزین کنید.
- فایل را به عنوان “Ghidra.desktop” در فهرست دسکتاپ ذخیره کنید.
- روی فایل کلیک راست کرده و آن را روی Allow Launching تنظیم کنید یا ترمینال را روشن کنید و از دستور chmod استفاده کنید تا آن را برای همه کاربران قابل اجرا کنید.chmod a+x Ghidra.desktop
[Desktop Entry]
Version=10.0
Type=Application
Terminal=false
Icon=/home/artemix/ghidra/support
Exec=sh /home/artemix/ghidra/ghidraRun.sh
Name=Ghidra
chmod a+x Ghidra.desktop
اکنون می توانید Ghidra را مستقیماً از میانبر دسکتاپ که ایجاد کرده اید راه اندازی کنید. هر بار که نیاز به کار با Ghidra دارید، در زمان و تلاش شما صرفه جویی می کند.
ابزارهای مهندسی معکوس در لینوکس
مهندسی معکوس فرآیند جداسازی باینری نرم افزار برای مطالعه و اصلاح کد منبع آن است. این یک تکنیک پیچیده است که توسط متخصصان امنیتی برای تجزیه و تحلیل و خنثی کردن بدافزارها استفاده می شود.
اگرچه ماژولار بودن، قابل حمل بودن و مجموعه ویژگی های گسترده Ghidra آن را به محبوبیت طرفداران در بین حرفه ای ها و آماتورها تبدیل کرده است، گزینه های مبتنی بر امنیت زیادی وجود دارد که می توانید از بین آنها انتخاب کنید.