تخطَّ إلى المحتوى

TinyTracer - متتبع API/التعليمات للفك

TinyTracer - متتبع API/التعليمات للفك

TinyTracer (من قبل hasherezade) هي أداة تتبع ديناميكي مبنية على Intel Pin. تشغّل ملف تنفيذي هدف وتنتج سجل تتبع لـ استدعاءات API والتعليمات المحددة، وتسجل كل حدث كإزاحة نسبية للوحدة (RVA) بحيث يظل الناتج ذا مغزى حتى بالنسبة للكود المنقول. لأن Pin تقوم بالأداة على مستوى منخفض، فإن TinyTracer لا تتأثر بمعظم حيل مكافحة التصحيح التي يستخدمها ملخص الحزمة، مما يجعلها ممتازة لتحديد نقطة الدخول الأصلية (OEP) لعينة وملاحظة ما تفعله بالفعل.

فقط للتحليل المرخص للبرامج الضارة. قم بتشغيل العينات غير الموثوقة فقط في آلة افتراضية/صندوق حماية معزول.

المتطلبات

  • Intel Pin (إطار عمل التجميع الديناميكي)
  • جهاز تحليل Windows (x86/x64)
  • ملف TinyTracer المترجم TinyTracer.dll (Pintool)

التثبيت

الخطوةالكيفية
احصل على Pinقم بتنزيل Intel Pin وقم بتعيين PIN_ROOT
احصل على TinyTracerقم بتنزيل إصدار أو بناء Pintool
نصوص مساعدةاستخدم run_me.bat المرفقة / مساعدات المثبت
التحقققم بالتشغيل ضد EXE معروف وتحقق من الناتج .tag/log

تشغيل التتبع

# استدعاء مفاهيمي (عبر المساعد المرفق أو pin مباشرة)
pin.exe -t TinyTracer.dll -o output.tag -- target.exe
الراياتالغرض
-t TinyTracer.dllحمّل TinyTracer كـ Pintool
-o FILEمسار سجل التتبع (.tag)
-m MODULEقيّد التتبع إلى وحدة
-bتتبع الكتل الأساسية / أحداث أكثر دقة
-- target argsالبرنامج المراد تتبعه وحججه

ما يحتويه سجل التتبع

الإدخالالمعنى
RVA;called: FUNCاستدعاء API في عنوان نسبي للوحدة
انتقالات الأقسامالتنفيذ ينتقل بين الأقسام (فك التغليف)
استدعاءات TLSخطافات مكافحة التحليل/التنفيذ المبكرة
استدعاءات فرعيةاختياريًا، أهداف الاتصال الداخلية

التسجيل القائم على RVA هو المفتاح: حتى بعد أن تفكك حزمة وتقفز إلى كود جديد، تبقى الإدخالات مرسومة على الوحدة بحيث يمكنك تعيينها مرة أخرى في أداة فك التجميع.

البحث عن OEP

الاستخدام الكلاسيكي: لاحظ أين يهبط التنفيذ بعد انتهاء ملخص الحزمة.

الخطوةابحث عن
1قم بتشغيل العينة المعبأة تحت TinyTracer
2راقب القفز إلى قسم لم يُكتب من قبل
3الانفجارات “الحقيقية” API الأولى (GetModuleHandle وما إلى ذلك) تحدد الكود المفكوك
4لاحظ RVA — تلك المنطقة هي مرشح OEP الخاص بك
5أفرغ عند تلك النقطة (على سبيل المثال مع PE-sieve) وحلل بشكل ثابت

التكامل مع مجموعة الأدوات

الأداةالدور إلى جانب TinyTracer
PE-sieveفرّغ الوحدة المفكوكة الموجودة عند OEP
x64dbgاضبط نقطة فاصلة عند RVA OEP للتحليل الأعمق
Detect It Easyحدّد الحزمة قبل التتبع
Ghidraعيّن RVAs المتتبعة إلى فك التجميع

سير العمل الشائع

# تتبع السلوك الخاص بـ API العينة
pin -t TinyTracer.dll -o sample.tag -- sample.exe
# → راجع sample.tag للبحث عن تسلسلات API المريبة (crypto وnetwork وinjection)

# البحث عن OEP لحزمة غير معروفة
# 1) تتبع، 2) ابحث عن انتقال القسم إلى كود مفكوك،
# 3) PE-sieve للفرغ، 4) حلل الملف الثنائي النظيف

TinyTracer مقابل الأساليب ذات الصلة

الجانبTinyTracerx64dbg (يدوي)API Monitor
الأساسعملية Pinالمصحح التفاعليربط API
مقاومة مكافحة التصحيحعاليةيحتاج ScyllaHideمعتدلة
الناتجسجل RVAتفاعليسجل API المباشر
الأفضل لـتتبع OEP/السلوك الآليstepping اليدويمشاهدة استدعاءات API

الموارد