إمكانية الوصول كدليل

إثبات ما إذا كان تم استدعاء التعليمات البرمجية الضعيفة بالفعل

تحليل ثلاثي الطبقات - الرسوم البيانية الاستدعاءية الثابتة، ومطابقة الرموز الثنائية، وتحقيقات eBPF لوقت التشغيل - ينتج أدلة DSSE موقعة تقلل بشكل كبير النتائج الإيجابية الكاذبة.

تحليل ثلاثي الطبقات

توفر كل طبقة دليلًا أقوى تدريجيًا على أن الوظيفة الضعيفة يمكن (أو لا) الوصول إليها من التطبيق الخاص بك الكود.

الطبقة 1

تحليل الرسم البياني للاتصال الثابت

استخرج الرسوم البيانية للاتصال من الكود الثانوي وAST والكود المصدر. تتبع المسارات من نقاط الدخول إلى الرموز الضعيفة.

  • • دعم اللغة: Go وRust وC# وJava وPython وJavaScript وC/C++
  • • يتعامل مع الإرسال الظاهري، واستدعاءات الواجهة، والانعكاس بطريقة محافظة تقريبي
  • • إنتاج DAG بحالة إمكانية الوصول لكل عقدة
الطبقة 2

تحليل الرموز الثنائية

مطابقة الرموز الضعيفة مع الصادرات الثنائية المجمعة. يؤكد أن الكود مرتبط فعليًا.

  • • استخراج جدول الرموز من ELF وPE وMach-O
  • • معلومات تصحيح أخطاء DWARF/PDB عند توفرها
الطبقة 3

مسبار eBPF لوقت التشغيل

ملف تعريف إنتاج اختياري. يلتقط استدعاءات الوظائف الفعلية أثناء التنفيذ.

  • • أدوات eBPF المستندة إلى Tetragon
  • • السجلات الرمز_id، code_id، hit_count، Loader_base
  • • الحفاظ على الخصوصية: لا يتم التقاط قيم وسيطات

النتيجة: إيجابيات كاذبة أقل بشكل ملحوظ. ركز على 12 CVEs يمكن الوصول إليها بدلاً من 487 منها نظريًا.

انضمامات تجزئة العقدة

يتم التعامل مع دليل إمكانية الوصول من حيث المحتوى من أجل إلغاء البيانات المكررة والتحقق. تتيح تجزئات العقدة التمييز الفعال بين الإصدارات.

تجزئة العقدة

SHA256(normalize(purl) + ":" + normalize(symbol))

تجزئة المسار

SHA256(entryNodeHash + ":" + joinedIntermediateHashes + ":" + sinkNodeHash)

يتم الاحتفاظ بالمسارات المهمة لـ Top-K في حزمة الأدلة. يتم ترتيب المسارات حسب تردد التنفيذ (من وقت التشغيل) أو عمق الاستدعاء (من الثابت).

غير معروفة كحالة من الدرجة الأولى

عندما لا يتمكن التحليل من تحديد إمكانية الوصول، يتم تتبع حالة عدم اليقين بشكل صريح - لا يتم إخفاؤها أو يفترض أنها آمنة بصمت.

مجموعة أدوات إمكانية الوصولالوزن الافتراضي
نقطة الدخول1.0
استدعاء مباشر0.85
مؤكد في وقت التشغيل0.45
غير معروف0.5
غير قابل للوصول0.0

النتيجة النهائية = max(bucket_weights) عبر جميع المسارات. تساهم العقد غير المعروفة في تسجيل المخاطر بدلاً من تجاهلها.

DSSE Signed البراهين

ينتج عن كل تحليل لإمكانية الوصول دليلًا موقّعًا مشفرًا ومخزنًا في وحدة تخزين موجهة للمحتوى.

  • DSSE مظروف بتنسيق in-toto SLSA الأصلي
  • يمكن التحقق منه بواسطة المدققين دون الوصول إلى الشبكة
  • تنتج إعادة التشغيل الحتمية نتائج متطابقة البت
  • الرسم البياني والتتبعات المؤرشفة في وضع عدم الاتصال التحقق

مسارات التخزين المعنونة بالمحتوى

cas://reachability_graphs/<hh>/<sha>.tar.zst

cas://runtime_traces/<hh>/<sha>.tar.zst

وقت تشغيل eBPF التحقيقات

تلتقط الأجهزة الاختيارية المستندة إلى Tetragon عمليات تنفيذ الوظائف الفعلية في الإنتاج، مما يوفر إمكانية الوصول بأعلى مستوى من الثقة الأدلة.

بيانات التحقيق المُلتقطة

symbol_id: معرّف رمز معياري

code_id: معرّف مقطع الشفرة

hit_count: تكرار التنفيذ

loader_base: عنوان قاعدة الذاكرة

cas_uri: مرجع مُعنون بالمحتوى

ترسل المجسات الملاحظات إلى /api/v1/observations على دفعات. تشتمل كل ملاحظة على CAS URI للعنصر الأساسي.

جاهز لتقليل الإيجابيات الكاذبة بشكل ملحوظ؟

تثبيت Stella Ops والبدء في إنتاج أدلة إمكانية الوصول الموقعة من خلال تحليل ثلاثي الطبقات.