bzip2: التحقق من النتائج الثنائية المجردة مقابل بنية مرمزة
الهدف: bzip2 1.0.8 مجمعة مع gcc -O2 ومجردة، Linux x86-64
المؤلف / الإسناد: CassieFox23
تاريخ مراجعة المصدر:
حالة المراجعة: تمت مراجعة المصادر؛ لا يتم إعادة تشغيل اختبارات المؤلف بشكل مستقل.
السؤال
كيف يمكن العثور على دالة من سلسلة إخراج والتحقق من علاقات الاتصال الخاصة بها؟
ما فعله REA
REA 6.4.0 وGhidra يحددان دالة من سلسلة، ويدرجان المتصلين والمستدعى عليهما، ويعيدان Evidence المسمى observed/derived.. يتحقق المؤلف بشكل منفصل من البنية غير المقطوعة من نفس المصدر باستخدام الكود المصدري وnm وobjdump.
النتائج التي أبلغ عنها المؤلف
أبلغ المؤلف عن العثور على إلغاء الضغط باستخدام المتصل 1 والمتصلين 24 المطابقين للبنية المرجعية. خطوات البناء وسجلات MCP المشذبة وفئتان من استجابات الأخطاء متاحة للعامة.
القيود والمطالبات التي لم يتم التحقق منها
برنامج واحد، إعداد ووظيفة التجميع، بدون مقارنة الأدوات. حواف 24 عبارة عن مكالمات مباشرة يتم حلها بواسطة الموفر، وليست رسمًا بيانيًا كاملاً لوقت التشغيل. البرنامج النصي الكامل للعميل ليس عامًا؛ يحتوي الأرشيف على تجزئة مسجلة ولكن لا يوجد التحقق من التوقيع. لم يتم إعادة تشغيل هذا الكتالوج.
ماذا نتعلم
قم ببناء الحقيقة الأساسية من بناء مرمز مطابق وملاحظات واستدلالات وفحوصات مرجعية منفصلة.
دليل استخدام REA في المصدر
REA's function, one caller and 24 callees all matched an unstripped build and the source.تم تبسيط تنسيق المقتطفات. اقرأ المصدر الأصلي للحصول على السياق الكامل.
المصادر الأصلية
ملخص التحرير المستقل. الائتمان ينتمي إلى المؤلفين الأصليين. لا يتم إعادة توزيع البرامج المستهدفة والمثبتات ومخرجات برنامج فك التحويل البرمجي الكاملة هنا.