🔴 آقای
میثم فیروزی ابزاری بنام Pishi توسعه دادن که یک ابزار بازنویسی باینری ایستا (static binary rewriting tool) هستش.
این ابزار برای سازگاری (instrumentation) بلاک های پایه (basic blocks) در هسته XNU و Kernel Extensions (KEXT) سیستم عامل macOS طراحی شده.
در کرنل XNU، این ابزار به شما امکان میده سازگاری رو در سطح تابع ، فایل یا فولدر انجام بدید. با سازگاری فقط توابع خاص، میتونید عملکرد فازر رو برای یافتن آسیب پذیری بهبود بدید.
منظور از static binary rewriting tool : ابزاری که برای تغییر یا اصلاح کد ماشین یک برنامه استفاده میشه، بدون اینکه به سورس کد دسترسی داشته باشیم. اصطلاح static به این معنی هستش که این تغییرات در زمان اجرا اتفاق نمیافتن بلکه قبل از اجرای برنامه روی فایل باینری اعمال میشن. این ابزارها به مهندسان نرمافزار و محققان امنیتی اجازه میدن کد اجرایی رو برای اهداف مختلفی از جمله بهبود کارایی، اصلاح باگها، یا اضافه کردن قابلیتهای جدید تغییر بدن. فرض کنید میخواید بدونید که یک تابع خاص در یک برنامه چند بار فراخوانی میشه. با استفاده از یک ابزار بازنویسی باینری، میتونید کدی رو به ابتدای این تابع اضافه کنید که یک شمارنده رو افزایش بده. بعدش با اجرای برنامه، میتونید تعداد دفعات فراخوانی این تابع رو مشاهده کنید.
منظور از instrument: وارد کردن کد اضافی یا ابزارهای خاصی به داخل برنامه هستش تا اطلاعات بیشتری رو به دست بیاریم یا رفتار برنامه رو تغییر بدیم. برای مثال، با اضافه کردن کدی که اطلاعات اجرایی مانند زمانبندی یا مسیرهای اجرای کد رو لاگ میکنه، محققان میتونن برنامهها رو با دقت بیشتری تحلیل کنن.
بازنویسی باینری: تغییر مستقیم کد ماشین.
سازگاری: افزودن کد اضافی به کد ماشین .
توضیحات این ابزار
#اپل #فازر
#apple #fuzzer
🆔 @onhex_ir
➡️ ALL Link