
مفكرة لكتابة الملاحظات أثناء استخدام Rizin & Cutter!
مفكرة لتحليل الثنائيات باستخدام rizin. احتفظ بالملاحظات والأوامر والبرامج النصية منظمة حسب كل ثنائي.
يتطلب rizin 0.7.0 أو أحدث.
كل صفحة من المفكرة مرتبطة بثنائي واحد. تخزّن الثنائي نفسه، وتجزئته SHA-256، وقائمة من الخلايا:
تُخزَّن الصفحات كملفات .rznb فردية (قواعد بيانات SQLite) في ~/.rizin-notebook/.
يمكن تصديرها واستيرادها كملفات فردية مكتفية ذاتياً.
rizin-notebook) - التطبيق الرئيسي. يقدم واجهة ويب، ويعرض واجهة برمجة تطبيقات REST بتنسيق protobuf + JSON، ويخزن كل شيء في ملفات .rznb الخاصة بكل صفحة.NB إلى rizin بحيث يمكنك التفاعل مع المفكرة من صدفة rizin.الإضافات اختيارية. يعمل خادم Go بشكل مستقل مع متصفح فقط.
خادم Go مستقل عن المنصة. تعتمد الإضافات على إصدار Rizin الذي تم بناؤها ضده.
إذا كان إصدارا rizin المستقل و Cutter مزودين بإصدارات Rizin مختلفة على جهازك، قم ببناء rz_notebook مرة لكل منهما. يمكن لكلا البناءين التحدث إلى نفس الخادم ومشاركة نفس بيانات .rznb.
قاعدة بسيطة:
rz_notebook واحد لكل إصدار Rizin قيد الاستخداملقطات شاشة المشروع منظمة تحت docs/images/.
الشكل 1. عرض الصفحة الرئيسية (مع بحث يعتمد على الخلية والنطاق، يدعم أوضاعاً متعددة.)
الشكل 2. صفحة الإعدادات لتكوين البيئة واختصارات لوحة المفاتيح والسلوك من جانب الخادم.
الشكل 3. الإكمال التلقائي للأوامر في وحدة التحكم على الويب، مما يساعد في اكتشاف أوامر Rizin وإكمالها بسرعة.
الشكل 4. نافذة تعليمات وبحث مدمجة للأوامر لاستكشاف وصف الأوامر والوسائط.
الشكل 5. تكامل الإضافة الجوهرية لـ Rizin، مما يتيح التفاعل مع المفكرة مباشرة من صدفة Rizin.
الشكل 6. عرض تكامل إضافة Cutter يظهر تجربة المفكرة داخل واجهة Cutter.
الشكل 7. عرض إضافي لسير عمل إضافة Cutter يوضح استخدامات محتملة للمفكرة.
go build -o rizin-notebook .
قم بتضمين سلسلة الإصدار أثناء عمليات البناء للإصدار:
go build -ldflags "-X main.NBVERSION=$(git rev-parse --short HEAD)" -o rizin-notebook .
./rizin-notebook
يفتح على http://127.0.0.1:8000/ افتراضياً.
العلامات:
-bind 127.0.0.1:8000 العنوان والمنفذ للاستماع
-root / بادئة مسار URL
-notebook /path/to/data دليل البيانات (الافتراضي: ~/.rizin-notebook)
-debug-assets /path تحميل القوالب من القرص بدلاً من المدمجة
-debug تفعيل سجلات طلبات HTTP
قم بتعيين RIZIN_PATH لتجاوز مسار ثنائي rizin المستخدم لتنفيذ الأنبوب.
انظر rizin-notebook-plugin/README.md.
انظر cutter-notebook-plugin/README.md.
إذا كان Cutter يوزع Rizin مدمجاً خاصاً به، فيجب بناء إضافة rz_notebook التي تم تحميلها بواسطة Cutter ضد نفس إصدار Rizin المضمن.
كل صفحة هي ملف .rznb في دليل البيانات. وهو قاعدة بيانات SQLite تحتوي على:
يحتفظ الخادم بفهرس catalog.db لإدراج سريع عبر جميع الصفحات.
في التشغيل الأول، يقوم الخادم تلقائياً بترحيل أي صفحات من تنسيق notebook.db الشامل الأقدم إلى التنسيق الفردي .rznb.
جميع أوامر إضافة NB تستخدم واجهة برمجة تطبيقات protobuf (Content-Type: application/x-protobuf).
المخطط موجود في proto/notebook.proto.
واجهة برمجة تطبيقات JSON موازية على /api/v1/json/... تُستخدم بواسطة إضافة Cutter وواجهة المستخدم في المتصفح.