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) آن‌ها -a arch تنظیم معماری (x86، arm، .. یا _) -b bits تنظیم تعداد بیت‌ها (32، 64 ...) -B addr بازنویسی آدرس پایه (برای باینری‌های PIE) -c فهرست کردن کلاس‌ها -cc فهرست کردن کلاس‌ها در قالب هدر -C fmt:C:D ایجاد [elf, mach0, pe] با جفت‌های هگزادسیمال Code و Data (گزینه -a را ببینید) -d نمایش اطلاعات اشکال‌زدایی/dwarf -dd بارگذاری اطلاعات اشکال‌زدایی/dwarf از کارساز debuginfod -D lang name دی‌منگل کردن نام نماد (-D all برای bin.demangle=true) -e نقطه ورود (Entrypoint) -E نمادهای با قابلیت سراسری صادر شدن (Globally exportable) -f str انتخاب زیر-باینری با نام str -F binfmt اجبار به استفاده از آن افزونه bin (چشم‌پوشی از بررسی هدر) -g مشابه با -SMZIHVResizcld -SS -SSS -ee (نمایش تمام اطلاعات) -G addr آدرس بارگذاری . آفست به هدر -h نمایش پیام راهنمای استفاده -H فیلدهای هدر -i واردات (نمادهای وارد شده از کتابخانه‌ها) -I اطلاعات باینری -j خروجی در قالب JSON -k sdb-query اجرای پرس‌وجوی sdb؛ برای نمونه: '*' -K algo محاسبه چکسام‌ها (md5، sha1، ..) -l کتابخانه‌های پیوند‌خورده (Linked libraries) -L plugin فهرست کردن افزونه‌های bin پشتیبانی‌شده یا جزئیات افزونه -m addr نمایش خط کد منبع در آدرس addr -M اصلی (نمایش آدرس نماد main) -n str نمایش بخش، نماد یا import با نام str -N min:max اجبار به حداقل:حداکثر تعداد نویسه‌ها در هر رشته (گزینه‌های -z و -zz را ببینید) -o str فایل/پوشه خروجی برای عملیات‌های نوشتن (به‌طور پیش‌فرض out) -O str عملیات‌های نوشتن/استخراج (-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 استخراج باینری‌های موجود در فایل -X fmt [f] .. بسته‌بندی در قالب fat یا zip برای فایل‌ها و باینری‌های مشخص‌شده در فایل -Y fw 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 byteninjaa0 January 24, 2024