
radare2 v6.2.0
إطار عمل للهندسة العكسية ومجموعة أدوات لسطر الأوامر بأسلوب يونكس.
Radare2: إطار عمل حر للهندسة العكسية لمحبي يونكس
فرع master الحالي في git هو 6.2.3، والإصدار التالي سيكون 6.2.4.
الوصف
r2 هو إعادة كتابة كاملة لـ radare. يوفر مجموعة من المكتبات والأدوات
والإضافات لتسهيل مهام الهندسة العكسية. موزّع تحت رخصة LGPLv3، على الرغم من
أن كل إضافة قد يكون لها رخصة مختلفة (انظر r2 -Lj للتفاصيل)
بدأ مشروع radare كمحرر سداسي عشري بسيط يعمل من سطر الأوامر ويركز على التحليل الجنائي. اليوم، أصبح r2 أداة سطر أوامر كاملة الميزات منخفضة المستوى مع دعم البرمجة النصية باستخدام مفسّر Javascript المدمج أو عبر r2pipe.
يستطيع r2 تحرير الملفات على الأقراص المحلية، وعرض ذاكرة النواة، وتصحيح البرامج محليًا أو عبر خوادم gdb/windbg البعيدة. دعم r2 الواسع للمعماريات يسمح لك بتحليل ومحاكاة وتصحيح وتعديل وتفكيك أي ملف ثنائي.
التثبيت
قم بتنزيل آخر الملفات الثنائية المُصدَرة.
الطريقة الموصى بها لتثبيت radare2 هي من مصدر مستودع Git:
git clone https://github.com/radareorg/radare2
radare2/sys/install.sh
- شغّل
sys/install.shلتثبيت acr+make+symlink الافتراضي - بناءات meson/ninja (يعمل أيضًا muon/samu) و make مدعومة.
Nix
يوفر radare2 حزمة Nix تحت dist/nix.
البناء من المصدر
- يمكن تثبيت r2 من
gitأو عبرpipباستخدامr2env. - بناءات Windows تتطلب meson و msvc أو mingw كمترجمات
- لإلغاء تثبيت البناء الحالي لـ r2 شغّل
make uninstall - لإلغاء تثبيت جميع تثبيتات r2 على النظام نفّذ:
sudo make purge
على Windows استخدم سكربتات .bat و msvc:
preconfigure.bat REM setup python, meson, ninja
configure.bat REM run meson b + vs project
make.bat REM run ninja -C b
prefix\bin\radare2.exe
الإضافات الشائعة:
باستخدام أداة r2pm يمكنك تصفح وتثبيت العديد من الإضافات والأدوات التي تستخدم radare2.
- iaito: واجهة Qt الرسومية الرسمية
- keystone تعليمات المُجمّع باستخدام مكتبة Keystone
- decai مُفكّك مترجم يعتمد على الذكاء الاصطناعي
- r2ai شغّل نموذجًا لغويًا على localhost مع Llama داخل r2!
- r2dec: مُفكّك مترجم يعتمد على r2 مكتوب بلغة JS، يُستدعى بالأمر
pdd - r2diaphora: محرك المقارنة الثنائية لـ Diaphora فوق radare2
- r2flutter: تحليل لقطة Dart/Flutter AOT لتطبيقات Android و iOS
- r2frida: إضافة frida io. ابدأ r2 بـ
r2 frida://0لاستخدامها - r2ghidra: مُفكّك الترجمة ghidra الأصلي المستقل الذي يمكن الوصول إليه بـ
pdg - r4ghidra: اشعر بمتعة radare داخل Ghidra الخاص بك
- r2papi واجهة برمجية عالية المستوى فوق r2pipe
- r2pipe برمج radare2 من أي لغة برمجة
- r2poke تكامل مع GNU/Poke لقدرات تحليل ثنائي موسّعة
- goresym: استيراد رمز GoReSym كأعلام
- r2yara شغّل Yara من r2 أو استخدم أوليات r2 من Yara
- radius2: محرك تنفيذ رمزي سريع يعتمد على boolector و esil
- r2sarif استيراد/توسيع/تصدير مستندات SARIF
- r2hermes مُفكّك ومحلل لـ React Native Hermes bytecode
- r2renef إضافة Renef IO لـ Radare2 - أدوات Android الديناميكية
- r2unity: فحص بيانات Unity IL2CPP الوصفية والملفات الثنائية الأصلية من radare2
- warrp إضافة radare2 أصلية لصيغة WARP الخاصة بـ binary ninja
الاستخدام
هذه هي الخطوات الأولى لاستخدام r2، اقرأ الكتاب أو ابحث عن دروس لمزيد من التفاصيل
$ r2 /bin/ls # open file in read-only
> aaa # analyse the program (r2 -A)
> afl # list all functions (try aflt, aflm)
> px 32 # print 32 byte hexdump current block
> s sym.main # seek to main (using flag name)
> f~foo # filter flags matching 'foo' (internal |grep)
> iS;is # list sections and symbols (rabin2 -Ss)
> pdf; agf # disassembly and ascii-art function graph
> oo+;w hello # reopen in read-write and write a string
> ?*~... # interactive filter in all command help
> q # quit
العديد من الإضافات مضمنة في r2 افتراضيًا. لكن يمكنك توسيع قدراته باستخدام مدير الحزم r2pm.
r2pm -s <word> # search packages matching a word
r2pm -Uci <pkg> # update database and clean install a package
r2pm -u <pkg> # uninstall the given package
r2pm -l <pkg> # list installed packages
الموارد
- الكتاب الرسمي: اقرأ عن استخدام r2
- COMMUNITY.md: المشاركة المجتمعية والإرشادات العامة
- CONTRIBUTING.md: معلومات حول الإبلاغ عن المشكلات والمساهمة. انظر أيضًا المساهمة
- DEVELOPERS.md: إرشادات التطوير لـ r2
- SECURITY.md: تعليمات الإبلاغ عن الثغرات الأمنية
- USAGE.md: بعض الأمثلة على الأوامر
- INSTALL.md: تعليمات التثبيت باستخدام make أو meson
التوثيق
تعلّم المزيد عن r2 بمشاهدة محادثات يوتيوب من r2con. هناك أيضًا العديد من التدوينات وشرائح العروض وكتاب radare2 الرسمي، لكنها دائمًا فكرة جيدة الانضمام إلى أي من المحادثات الرسمية وطرح أسئلتك أو ملاحظاتك هناك.
المجتمع
- الموقع: https://www.radare.org/
- Discord: Server
- Mastodon: @radareorg
- Telegram: قنوات Main و Side
- irc.libera.chat:
#radare,#radare_side - Matrix:
#radare:matrix.org

