RADARE2(1) General Commands Manual RADARE2(1) نام (NAME) radare2 – ویرایشگر هگزادسیمال، دی‌اسمبلر و دیباگر پیشرفته خط فرمان خلاصه دستور (SYNOPSIS) 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 توضیحات (DESCRIPTION) یک ویرایشگر هگز، دی‌اسمبلر و دیباگر پیشرفته خط فرمان که امکانات مهندسی معکوس تعاملی، اسکریپت‌نویسی و خودکارسازی را برای تحلیل باینری و پژوهش‌های آسیب‌پذیری فراهم می‌کند. نام مستعار 'r2' می‌تواند به عنوان فرم کوتاه radare2 استفاده شود. گزینه‌ها عبارتند از: -- باز کردن radare2 روی یک فایل خالی - معادل 'r2 malloc://512' -0 چاپ \x00 پس از مقداردهی اولیه و پس از اجرای هر دستور -1 تغییر مسیر stderr به stdout -2 بستن stderr قبل از راه‌اندازی RCore -a arch اجبار asm.arch (شامل x86، ppc، arm، mips، bf، java، ...) -A اجرای دستور 'aaa' قبل از نمایش اعلان یا اعمال وصله برای تحلیل تمام کدهای ارجاع‌شده. استفاده از -AA برای اجرای aaaa -b bits اجبار asm.bits (شامل 16، 32، 64) -B baddr تعیین آدرس پایه (base address) برای استفاده هنگام بارگذاری یک فایل باینری جدید. به 'e?bin.baddr' مراجعه کنید -c cmd اجرای دستور داده‌شده پیش از نمایش اعلان خط فرمان -d شروع در حالت دیباگر -D dbg.backend فعال‌سازی حالت دیباگ. تنظیم cfg.debug=true -e k=v تنظیم متغیر ارزیابی پیکربندی به صورت key=value. به عنوان نمونه -e scr.color=false. در صورتی که -e پس از -j ارسال شود، به جای تنظیم متغیرهای eval، منبع اسکریپت را برای اجرا مشخص می‌کند. -E ویرایش اسکریپت راه‌اندازی کاربر با استفاده از ویرایشگر انتخابی در cfg.editor (متغیر محیطی EDITOR) -f تنظیم اندازه بلوک (Blocksize) معادل اندازه فایل -j اجرای اسکریپت QJS در صورت ارسال آرگومان، یا ورود به پوسته qjs در صورت مشخص نشدن فایل. می‌توانید با ارسال پرچم -e پس از -j عبارت‌ها را ارزیابی کنید. -i file اجرای اسکریپت، برنامه زبان یا فایل افزونه radare2 پس از بارگذاری فایل -I file اجرای اسکریپت، برنامه زبان یا فایل افزونه radare2 قبل از بارگذاری فایل -k kernel انتخاب هسته (asm.os) برای شناسایی و برطرف‌سازی فراخوان‌های سیستمی (syscall) -L فهرست‌کردن افزونه‌های بارگذاری‌شده ورودی/خروجی (IO). -LL فهرست‌کردن افزونه‌های هسته (core plugins) بارگذاری‌شده. -m addr نگاشت فایل در آدرس داده‌شده -M غیرفعال‌سازی demangling -n انجام ندادن هیچ‌گونه تحلیل (r_bin). فقط بارگذاری فایل خام -nn فقط بارگذاری ساختارهای rbin (مانند elf، mach0، ...) -N بارگذاری نکردن تنظیمات/پروژه‌های کاربر از ~/.radare2rc، ~/.config/radare2/rc و اسکریپت‌های درون دایرکتوری ~/.config/radare2/rc.d/. -NN مشابه -N، اما بارگذاری خودکار افزونه‌ها در زمان راه‌اندازی را نیز غیرفعال می‌کند -q حالت بی‌صدا (بدون اعلان) و خروج پس از اجرای دستورهای مشخص‌شده با -i یا -c -qq خروج قبل از نمایش اعلان خط فرمان. بلافاصله پس از ارزیابی تمام آرگومان‌های -e، -c و -i. -Q مشابه q، اما خروج بدون آزادسازی RCore انجام می‌شود؛ این امر باعث نشت حافظه در زمان خروج می‌شود اما مقداری میلی‌ثانیه باارزش را برای اجرای مجموعه‌آزمون‌ها در حالت سریع ذخیره می‌کند. -p prj تعیین فایل پروژه -P file اعمال فایل rapatch و خروج (برای جزئیات بیشتر به doc/rapatch.md مراجعه کنید) -r rarun2 تعیین نمایه rarun2 در dbg.profile برای استفاده هنگام اجرای برنامه جهت اشکال‌زدایی -R rarun2-directive تعیین دستورالعمل‌های سفارشی rarun2 بدون نیاز به ساختن یک نمایه rarun2 -s addr شروع جست‌وجو/پیمایش (seek) از این آدرس -S فعال‌سازی حالت محیط ایزوله/قرنطینه (معادل -e cfg.sandbox=true) -t دریافت اطلاعات باینری و تحلیل فایل باینری در یک ریسه (thread) پس‌زمینه -T صرف‌نظر از محاسبه درهم‌سازهای (hashes) فایل -u تنظیم bin.filter=false برای بارگذاری اطلاعات rbin بدون فیلتر کردن نام‌ها -v نمایش اطلاعات نسخه و خروج (از -qv برای دریافت تنها شماره نسخه استفاده کنید) -V نمایش نسخه کتابخانه‌های radare2 (در صورت استفاده از -j با قالب JSON چاپ می‌شود) -w باز کردن در حالت نوشتن (write mode) -h نمایش پیام راهنما -H [variable] نمایش راهنمای فایل‌ها و متغیرهای محیطی، یا چاپ متغیر انتخاب‌شده -x باز کردن نگاشت فایل بدون مجوزهای اجرایی -X معادل -e bin.usextr=false، عدم استفاده از افزونه‌های استخراج، کاربردی برای dyldcache پوسته (SHELL) برای دریافت راهنما عبارت '?' را وارد کنید حالت دیداری (VISUAL) برای ورود به حالت دیداری از دستور 'V' استفاده کنید. سپس برای راهنمایی کلید '?' را فشار دهید دیباگر (DEBUGGER) در r2 دستورهای اشکال‌زدایی تحت دستور 'd' پیاده‌سازی شده‌اند. برای راهنمایی 'd?' را وارد کنید افزوده‌های کاربردی دیباگر عبارتند از: dts+ شروع ضبط وضعیت نشست اشکال‌زدایی بازگشت‌پذیر (reversible debugger). dtsc [label] ایجاد یک نقطه بازرسی (checkpoint) از وضعیت فعال فعلی. نقاط بازرسی دارای یک شناسه پایدار بوده و می‌توانند از نقطه بازرسی جاری منشعب شوند. dtsr id بازیابی یک نقطه بازرسی بر اساس شناسه (id) و ادامه از همان شاخه. dtsd id حذف یک نقطه بازرسی برگ (leaf) غیرجاری. dtst dir / dtsf dir ذخیره و بارگذاری نشست اشکال‌زدایی جاری، شامل شناسه‌های نقطه بازرسی و پیوندهای والد. dtsw id fd hex / dtswc id [fd / dtswj] قراردادن بایت‌های بازپخش در صف یک توصیف‌کننده فایل (file descriptor) در نقطه بازرسی، پاکسازی بایت‌های صف، و بررسی وضعیت بازپخش در قالب JSON. محیط (ENVIRONMENT) 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 مسیر فایل کاری جاری. همچنین ببینید (SEE ALSO) r2r(1), rahash2(1), rafind2(1), rabin2(1), radiff2(1), rasm2(1), rax2(1), ravc2(1), ragg2(1), rarun2(1), نویسندگان (AUTHORS) pancake May 20, 2025