RADARE2(1) General Commands Manual RADARE2(1)

radare2 — ویرایشگر هگزادسیمال، دی‌اسمبلر و دیباگر پیشرفته خط فرمان

radare2 [-a arch] [-b bits] [-B baddr] [-c cmd] [-e k=v] [-i file] [-I prefile] [-k kernel] [-m addr] [-p project] [-P patch] [-r rarun2] [-R rr2rule] [-s addr] [-012AdDEjwntLquvVxX] -|--|=|file

یک ویرایشگر هگز، دی‌اسمبلر و دیباگر پیشرفته خط فرمان که امکانات مهندسی معکوس تعاملی، اسکریپت‌نویسی و خودکارسازی را برای تحلیل باینری و پژوهش‌های آسیب‌پذیری فراهم می‌کند.

نام مستعار 'r2' می‌تواند به عنوان فرم کوتاه radare2 استفاده شود.

گزینه‌ها عبارتند از:

--
باز کردن radare2 روی یک فایل خالی
-
معادل 'r2 malloc://512'
چاپ \x00 پس از مقداردهی اولیه و پس از اجرای هر دستور
تغییر مسیر stderr به stdout
بستن stderr قبل از راه‌اندازی RCore
arch
اجبار asm.arch (شامل x86، ppc، arm، mips، bf، java، ...)
اجرای دستور 'aaa' قبل از نمایش اعلان یا اعمال وصله برای تحلیل تمام کدهای ارجاع‌شده. استفاده از -AA برای اجرای aaaa
bits
اجبار asm.bits (شامل 16، 32، 64)
baddr
تعیین آدرس پایه (base address) برای استفاده هنگام بارگذاری یک فایل باینری جدید. به 'e?bin.baddr' مراجعه کنید
cmd
اجرای دستور داده‌شده پیش از نمایش اعلان خط فرمان
شروع در حالت دیباگر
dbg.backend
فعال‌سازی حالت دیباگ. تنظیم cfg.debug=true
k=v
تنظیم متغیر ارزیابی پیکربندی به صورت key=value. به عنوان نمونه -e scr.color=false. در صورتی که -e پس از -j ارسال شود، به جای تنظیم متغیرهای eval، منبع اسکریپت را برای اجرا مشخص می‌کند.
ویرایش اسکریپت راه‌اندازی کاربر با استفاده از ویرایشگر انتخابی در cfg.editor (متغیر محیطی EDITOR)
تنظیم اندازه بلوک (Blocksize) معادل اندازه فایل
اجرای اسکریپت QJS در صورت ارسال آرگومان، یا ورود به پوسته qjs در صورت مشخص نشدن فایل. می‌توانید با ارسال پرچم -e پس از -j عبارت‌ها را ارزیابی کنید.
file
اجرای اسکریپت، برنامه زبان یا فایل افزونه radare2 پس از بارگذاری فایل
file
اجرای اسکریپت، برنامه زبان یا فایل افزونه radare2 قبل از بارگذاری فایل
kernel
انتخاب هسته (asm.os) برای شناسایی و برطرف‌سازی فراخوان‌های سیستمی (syscall)
فهرست‌کردن افزونه‌های بارگذاری‌شده ورودی/خروجی (IO).
فهرست‌کردن افزونه‌های هسته (core plugins) بارگذاری‌شده.
addr
نگاشت فایل در آدرس داده‌شده
غیرفعال‌سازی demangling
انجام ندادن هیچ‌گونه تحلیل (r_bin). فقط بارگذاری فایل خام
فقط بارگذاری ساختارهای rbin (مانند elf، mach0، ...)
بارگذاری نکردن تنظیمات/پروژه‌های کاربر از ~/.radare2rc، ~/.config/radare2/rc و اسکریپت‌های درون دایرکتوری ~/.config/radare2/rc.d/.
مشابه -N، اما بارگذاری خودکار افزونه‌ها در زمان راه‌اندازی را نیز غیرفعال می‌کند
حالت بی‌صدا (بدون اعلان) و خروج پس از اجرای دستورهای مشخص‌شده با -i یا -c
خروج قبل از نمایش اعلان خط فرمان. بلافاصله پس از ارزیابی تمام آرگومان‌های -e، -c و -i.
مشابه q، اما خروج بدون آزادسازی RCore انجام می‌شود؛ این امر باعث نشت حافظه در زمان خروج می‌شود اما مقداری میلی‌ثانیه باارزش را برای اجرای مجموعه‌آزمون‌ها در حالت سریع ذخیره می‌کند.
prj
تعیین فایل پروژه
file
اعمال فایل rapatch و خروج (برای جزئیات بیشتر به doc/rapatch.md مراجعه کنید)
rarun2
تعیین نمایه rarun2 در dbg.profile برای استفاده هنگام اجرای برنامه جهت اشکال‌زدایی
rarun2-directive
تعیین دستورالعمل‌های سفارشی rarun2 بدون نیاز به ساختن یک نمایه rarun2
addr
شروع جست‌وجو/پیمایش (seek) از این آدرس
فعال‌سازی حالت محیط ایزوله/قرنطینه (معادل -e cfg.sandbox=true)
دریافت اطلاعات باینری و تحلیل فایل باینری در یک ریسه (thread) پس‌زمینه
صرف‌نظر از محاسبه درهم‌سازهای (hashes) فایل
تنظیم bin.filter=false برای بارگذاری اطلاعات rbin بدون فیلتر کردن نام‌ها
نمایش اطلاعات نسخه و خروج (از -qv برای دریافت تنها شماره نسخه استفاده کنید)
نمایش نسخه کتابخانه‌های radare2 (در صورت استفاده از -j با قالب JSON چاپ می‌شود)
باز کردن در حالت نوشتن (write mode)
نمایش پیام راهنما
[variable]
نمایش راهنمای فایل‌ها و متغیرهای محیطی، یا چاپ متغیر انتخاب‌شده
باز کردن نگاشت فایل بدون مجوزهای اجرایی
معادل -e bin.usextr=false، عدم استفاده از افزونه‌های استخراج، کاربردی برای dyldcache

برای دریافت راهنما عبارت '?' را وارد کنید

برای ورود به حالت دیداری از دستور 'V' استفاده کنید. سپس برای راهنمایی کلید '?' را فشار دهید

در r2 دستورهای اشکال‌زدایی تحت دستور 'd' پیاده‌سازی شده‌اند. برای راهنمایی 'd?' را وارد کنید

افزوده‌های کاربردی دیباگر عبارتند از:

شروع ضبط وضعیت نشست اشکال‌زدایی بازگشت‌پذیر (reversible debugger).
[label]
ایجاد یک نقطه بازرسی (checkpoint) از وضعیت فعال فعلی. نقاط بازرسی دارای یک شناسه پایدار بوده و می‌توانند از نقطه بازرسی جاری منشعب شوند.
id
بازیابی یک نقطه بازرسی بر اساس شناسه (id) و ادامه از همان شاخه.
id
حذف یک نقطه بازرسی برگ (leaf) غیرجاری.
dir / dtsf dir
ذخیره و بارگذاری نشست اشکال‌زدایی جاری، شامل شناسه‌های نقطه بازرسی و پیوندهای والد.
id fd hex / dtswc id [fd / dtswj]
قراردادن بایت‌های بازپخش در صف یک توصیف‌کننده فایل (file descriptor) در نقطه بازرسی، پاکسازی بایت‌های صف، و بررسی وضعیت بازپخش در قالب JSON.


R2_ARGS اجرای radare2 با آرگومان‌های تعریف‌شده در متغیرهای محیطی و نادیده‌گرفتن آرگومان‌های خط فرمان
R2_IGNVER بارگذاری افزونه‌ها با نادیده‌گرفتن نسخه مشخص‌شده. (با احتیاط استفاده شود)
R2_DEBUG در صورت تعریف، نمایش پیام‌های خطا و سیگنال کرش
R2_DEBUG_ASSERT=1 تنظیم یک نقطه توقف هنگام رسیدن به assert
R2_MAGICPATH /Users/pancake/.local/share/radare2/share/radare2/4.5.0-git/magic
R2_NOPLUGINS عدم بارگذاری افزونه‌های اشتراکی r2
R2_PLUGINS_ORDER ترتیب بارگذاری افزونه: i=internal، e=env، h=home، s=system، c=config؛ پیش‌فرض=icehs؛ کاراکتر ? راهنما را نمایش می‌دهد
R2_RCFILE ~/.radare2rc (ترجیحات کاربر، اسکریپت دسته‌ای)
R2_RDATAHOME /usr/local FILE مسیر فایل کاری جاری.

r2r(1), rahash2(1), rafind2(1), rabin2(1), radiff2(1), rasm2(1), rax2(1), ravc2(1), ragg2(1), rarun2(1),

pancake <pancake@nopcode.org>

May 20, 2025