| RZ_BIN(1) | General Commands Manual | RZ_BIN(1) |
نام (NAME)
rz-bin —
استخراجکننده
اطلاعات
برنامههای
باینری
خلاصه دستور (SYNOPSIS)
rz-bin
[-AcdeEghHiIjlLMqrRsSUvVxzZ]
[-@ at]
[-a arch]
[-b bits]
[-B addr]
[-C F:C:D]
[-f str]
[-m addr]
[-n str]
[-N m:M]
[-P pdb]
[-o str]
[-O str]
[-k query]
[-D lang symname]
file
توضیحات (DESCRIPTION)
این دستور بخشی از پروژه Rizin است.
دستور rz-bin میتواند اطلاعات مفید را از فایلهای اجرایی باینری مانند ELF، PE، Mach-O و غیره تحلیل و استخراج کند. این ابزار از چندین معماری مختلف از جمله x86، ARM، MIPS، PowerPC و غیره پشتیبانی میکند.
گزینهها (OPTIONS)
-@addr- نمایش بخش (section)، نماد (symbol) یا مورد وارد شده (import) در آدرس مشخصشده
-A- فهرست کردن زیر-باینریها و جفتهای معماری-بیت (arch-bits) آنها
-aarch- تنظیم معماری (x86، arm، .. یا <arch>_<bits>)
-bbits- تنظیم تعداد بیتها (32، 64 ...)
-Baddr- بازنویسی آدرس پایه (برای باینریهای PIE)
-c- فهرست کردن کلاسها
-cc- فهرست کردن کلاسها در قالب هدر
-Cfmt:C:D- ایجاد [elf, mach0, pe] با جفتهای هگزادسیمال Code و Data (گزینه -a را ببینید)
-d- نمایش اطلاعات اشکالزدایی/dwarf
-dd- بارگذاری اطلاعات اشکالزدایی/dwarf از کارساز debuginfod
-Dlang name- دیمنگل کردن نام نماد (-D all برای bin.demangle=true)
-e- نقطه ورود (Entrypoint)
-E- نمادهای با قابلیت سراسری صادر شدن (Globally exportable)
-fstr- انتخاب زیر-باینری با نام str
-Fbinfmt- اجبار به استفاده از آن افزونه bin (چشمپوشی از بررسی هدر)
-g- مشابه با -SMZIHVResizcld -SS -SSS -ee (نمایش تمام اطلاعات)
-Gaddr- آدرس بارگذاری . آفست به هدر
-h- نمایش پیام راهنمای استفاده
-H- فیلدهای هدر
-i- واردات (نمادهای وارد شده از کتابخانهها)
-I- اطلاعات باینری
-j- خروجی در قالب JSON
-ksdb-query- اجرای پرسوجوی sdb؛ برای نمونه: '*'
-Kalgo- محاسبه چکسامها (md5، sha1، ..)
-l- کتابخانههای پیوندخورده (Linked libraries)
-Lplugin- فهرست کردن افزونههای bin پشتیبانیشده یا جزئیات افزونه
-maddr- نمایش خط کد منبع در آدرس addr
-M- اصلی (نمایش آدرس نماد main)
-nstr- نمایش بخش، نماد یا import با نام str
-Nmin:max- اجبار به حداقل:حداکثر تعداد نویسهها در هر رشته (گزینههای -z و -zz را ببینید)
-ostr- فایل/پوشه خروجی برای عملیاتهای نوشتن (بهطور پیشفرض out)
-Ostr- عملیاتهای نوشتن/استخراج (-O help)
-p- نمایش آدرسهای فیزیکی
-P- نمایش اطلاعات اشکالزدایی/pdb
-PP- بارگیری فایل pdb برای باینری
-q- حالت بیصدا، نمایش دادههای کمتر
-qq- نمایش اطلاعات کمتر (برای نمونه عدم نمایش آفست/اندازه برای -z)
-Q- نمایش آدرس بارگذاری استفادهشده توسط dlopen (کتابخانههای بدون ASLR)
-r- نمایش خروجی در قالب rizin
-R- نمایش جابهجاییها (relocations)
-s- نمادها (Symbols)
-S- بخشها (Sections)
-SS- قطعهها (Segments)
-SSS- نگاشت بخشها به قطعهها
-T- نمایش امضای فایل (signature)
-u- پالایشنشده (عدم تغییر نام نمادها/بخشهای تکراری)
-U- منابع (Resources)
-v- نمایش اطلاعات نسخه
-V- نمایش اطلاعات نسخه باینری
-w- نمایش بلوکهای try/catch
-x- استخراج باینریهای موجود در فایل
-Xfmt [f] ..- بستهبندی در قالب fat یا zip برای فایلها و باینریهای مشخصشده در فایل
-Yfw file- محاسبه تمام کاندیداهای ممکن برای آدرس پایه در یک باینری سفتافزار (firmware)
-z- نمایش رشتهها (از بخش داده یا data)
-zz- نمایش رشتهها (از رشتههای خام موجود در باینری)
-zzz- تخلیه رشتههای خام در خروجی استاندارد (stdout) (برای فایلهای حجیم)
-Z- تخمین اندازه برنامه باینری
محیط (ENVIRONMENT)
RZ_BIN_CODESIGN_VERBOSE: پرجزئیات کردن نمایش امضاهای کد
RZ_BIN_DEBASE64: e bin.debase64 - تلاش برای رمزگشایی base64 همه رشتهها
RZ_BIN_DEBUGINFOD_URLS: e bin.dbginfo.debuginfod_urls - استفاده از کارساز debuginfod جایگزین
RZ_BIN_DEMANGLE: e bin.demangle - عدم دیمنگل کردن نمادها
RZ_BIN_LANG: e bin.lang - در نظر گرفتن زبان مشخص برای دیمنگل کردن
RZ_BIN_MAXSTRBUF: e bin.maxstrbuf - تعیین حداکثر اندازه بافر
RZ_BIN_PDBSERVER: e pdb.server - استفاده از کارساز PDB جایگزین
RZ_BIN_PREFIX: e bin.prefix - افزودن پیشوند مشخص به نمادها/بخشها/جابهجاییها
RZ_BIN_STRFILTER: e bin.str.filter - rizin -qc 'e bin.str.filter=??' -
RZ_BIN_STRPURGE: e bin.str.purge - تلاش برای پاکسازی موارد مثبت کاذب
RZ_BIN_SYMSTORE: e pdb.symstore - مسیر ذخیرهسازی نمادها (symbol store) در پاییندست
RZ_CONFIG: فایل پیکربندی sdb
RZ_NOPLUGINS: عدم بارگذاری افزونههای اشتراکی (افزایش سرعت بارگذاری)
مثالها (EXAMPLES)
فهرست کردن نمادهای یک برنامه:
rz-bin -s
a.out
دریافت آفست نماد:
rz-bin -n
_main a.out
دریافت نقطه ورود:
rz-bin -e
a.out
بارگذاری نمادها و موارد وارد شده از rizin:
rizin -n
/bin/ls
[0x00000000]> .!rz-bin -prsi $FILE
همچنین ببینید (SEE ALSO)
rz-hash(1), rz-find(1), rizin(1), rz-diff(1), rz-asm(1), rz-ax(1), rz-gg(1), rz-run(1)
نویسندگان (AUTHORS)
pancake <pancake@nopcode.org>
byteninjaa0
| January 24, 2024 |