قابلية الوصول كدليل

ما يمنع النشر — التعرض REACHABLE وغير المصحح وذي الصلة بالسياسة أولًا.

وتبقى القائمة الطويلة على بُعد عامل تصفية واحد.

توجد نحو 85% من ثغرات الحاويات الحرجة في شيفرة غير نشطة (تقرير Sysdig 2024). يسأل تحليل قابلية الوصول ما إذا كان مسار في صورتك يصل إلى الدالة المُعرّضة، ويوقّع دليلًا لكل حكم — محفوظًا أو مستبعدًا.

مجموعة العمل

تدخل سبع نتائج المجموعة أدناه. تحظر واحدة: فهي REACHABLE وغير مصححة. الست الأخرى غير مصححة لكن لم تظهر REACHABLE — تبقى أقل ترتيبًا ولا تُخفى.

blocking = reachable × unfixed × policy-relevant

شاشة التعرض في Stella Ops: سبع نتائج، منها واحدة مانعة بحالة REACHABLE والبقية بحالات NOT OBSERVED
شاشة التعرض، وحدة تحكم v1.0-RC1 بحيازة نموذجية. NOT OBSERVED لا تعني «غير معرض» — تبقى المجهولات ظاهرة حتى تقول الأدلة غير ذلك.

REACHABLE

ثبت مسار تنفيذي من نقطة دخول إلى الرمز المعرض — بمخطط ثابت أو مطابقة رمز أو إصابة مجس وقت التشغيل.

NOT OBSERVED

لم يُعثر على مسار تنفيذي بالأدلة المجمعة حتى الآن. هذا قول عن الأدلة لا الثغرة. تبقى النتيجة في مجموعة العمل.

ترتيبان وبيانات واحدة

تخدم مجموعة العمل وظيفتين. يغير التبديل ترتيب الأعلى — ولا يدخل شيء أو يخرج.

انشر

يرتب بحسب ما يحظر الإصدار: التعرض REACHABLE وغير المصحح وذي الصلة أولًا.

أمّن

يرتب بحسب إجمالي التعرض عبر البيئات، ومنها نتائج لن تحظر إصدارًا.

يتغير الترتيب والتركيز لا البيانات.

من أين يأتي الدليل

التحليل الساكن يُنتج الحكم في كل فحص. أما الرموز الثنائية وحقائق وقت التشغيل فتضيف عمقًا عندما تريده. CVECommon Vulnerabilities and Exposures - معرّف فريد لثغرة أمنية معروفة علنًا

الطبقة 1

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

يبني مخطط استدعاءات من البايت كود المُصرَّف ومن المصدر، ثم يتبع المسارات من نقاط الدخول إلى الدوال التي يسميها التنبيه.

  • • لغات مخطط الاستدعاءات: Go وJava وC#/.NET وJavaScript وTypeScript وPython وRust وPHP وRuby. وتُحلَّل لغة واحدة لكل صورة. أما البيئات الأخرى فتقع في خزانة unknown — تُقيَّم ولا تُهمَل.
  • • الاستخراج دون اتصال أضيق: بناء مخطط استدعاءات من شجرة مصادر في سطر الأوامر يدعم Go وRust فقط، ويستخدم الطبقة المعجمية — فسلسلة أدوات SSA تعيش داخل scanner worker. وتُحلَّل اللغات الأخرى بواسطة خط الفحص، ويستهلك سطر الأوامر مخططه المستخرج مسبقًا.
  • • تُحلَّل Python وJavaScript/TypeScript وRust وPHP وRuby من نص المصدر، وتحمل كل حافة درجة ثقتها — فترى أي طبقة أنتجت الحكم
  • • لا تُنمذَج الانعكاسية ولا الاستدعاء الديناميكي ولا التوزيع الافتراضي خارج التنفيذات المعروفة — وكل نتيجة تذكر هذا الحد
الطبقة 2

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

مسار عبر سطر الأوامر للشيفرة الأصلية التي لا مصادر لقراءتها: جداول رموز ELF وأسماء دوال DWARF، وx86 وx64 وARM64. نتائجه قائمة بذاتها ومنفصلة عن حكم الفحص.

  • • جداول رموز ELF وأسماء دوال DWARF
  • • تفكيك x86 وx64 وARM64. وتُقرأ معلومات التصحيح من DWARF فقط — بلا PDB
الطبقة 3

مسبار eBPFمرشح بيركلي الممتد للحزم — تقنية نواة لينكس تُشغّل برامج معزولة للمراقبة عالية الأداء وتحليل وقت التشغيل بدون وحدات نواة لوقت التشغيل

غذِّه ببيانات تنفيذ حقيقية، فتتحقق Stella Ops منها وتختمها كأقوى دليل على قابلية الوصول. أنت تشغّل المسابر؛ وRC1 يوفّر مسار الاستقبال.

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

تُحزم كل نتيجة كدليل موقع بـ DSSE يربط النتيجة بالمسار التنفيذي المحكوم عليه. وحين يتعذر تحليل أي مسار، تُسجَّل النتيجة بوصفها مجهولة لا مستبعدة. DSSEDead Simple Signing Envelope - معيار بسيط ومرن لتوقيع البيانات بتوقيعات تشفيرية

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

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

مجموعة أدوات قابلية الوصولالوزن الافتراضي
reachable:proven1.0
reachable:likely0.85
not-observed0.0

الأعلى يعني خطرًا أكبر لا ثقةً أكبر: فالوزن يقيس درجة خطر النتيجة. وتأكيدُ وقت التشغيل لا يحل محل إثبات المسار — بل يرفع الثقة الملحقة بالحكم. وحيث لم يرصد المحلّل أي مسار، تُبلّغ Stella Ops بأنه غير مُلاحَظ مع بيان تغطية موقَّع، ولا تقول «غير قابل للوصول» أبدًا: فعدم رصد مسار ليس إثباتًا لعدم وجوده.

توصية السياسة: عامل unknown كحكم أساسي، واضبط حدودًا لكل شدة، وسجل أسباب تجاوز المراجع في حزمة الأدلة.

موضع دخول بيانات VEX

تنضم بيانات VEX من المصدرين إلى مخطط الأدلة نفسه، مطبَّعة إلى خمس حالات — not_affected وaffected وfixed وunder_investigation وunknown — فتكون «قيد التحقيق» حالة ذات آثار لا حاشية. VEXVulnerability Exploitability eXchange - بيانات قابلة للقراءة آليًا حول ما إذا كانت الثغرات قابلة للاستغلال فعلاً في سياقك

not_affected affected fixed under_investigation unknown

يمكن لجهات متعددة الحديث عن المكوّن نفسه. عند اختلافها يسجل حل الخلاف كتعارض — لا متوسط ولا فائز صامت.

كيف تُدمج أدلة SBOM وVEX →

تشارك KEV وEPSS — ولا تقرران

قوائم CISA KEV ودرجات EPSS إشارات استغلال على مستوى التنبيه ترفع ترتيب النتيجة وإلحاحها. KEVKnown Exploited Vulnerabilities - كتالوج CISA للثغرات المستغلة بنشاط EPSSExploit Prediction Scoring System - درجة احتمالية (0-100%) تتنبأ بمدى احتمال استغلال الثغرة

Exploit signals attach at the advisory level, not at the finding level. Open a CVECommon Vulnerabilities and Exposures - معرّف فريد لثغرة أمنية معروفة علنًا to read its advisory-level exploit data: the KEVKnown Exploited Vulnerabilities - كتالوج CISA للثغرات المستغلة بنشاط listing and the EPSSExploit Prediction Scoring System - درجة احتمالية (0-100%) تتنبأ بمدى احتمال استغلال الثغرة score belong to the advisory, and they read the same for every service that carries the affected component.

ليست أدلة قابلية وصول. إدخال KEV لشيفرة لا تحمّلها الخدمة يغير التركيز لا الحكم — إلا إذا حظرت السياسة النتائج المستغلة المعروفة. هناك فئتان من القواعد قادرتان على الحجب، وهما مستقلتان: قائمة حجب الثغرات تتجاهل قابلية الوصول تمامًا، أما قاعدة قابلية الوصول فلا تحجب إلا بمسار مُثبَت — فلا تحجب reachable:likely ولا unknown عبرها أبدًا، أيًّا كانت الحالات التي تسردها السياسة.

A policy gate can combine both kinds of answer in one rule: reachability state together with EPSSExploit Prediction Scoring System - درجة احتمالية (0-100%) تتنبأ بمدى احتمال استغلال الثغرة, KEVKnown Exploited Vulnerabilities - كتالوج CISA للثغرات المستغلة بنشاط, and CVSSCommon Vulnerability Scoring System - تصنيف خطورة من 0 إلى 10 يشير إلى مدى حرجية الثغرة thresholds. "Known-exploited and reachable" and "known-exploited regardless of reachability" are both expressible; which one you enforce is your policy, not a default we pick for you.

مقارنة بأداة فحص في CI

تجيب أداة الفحص «ماذا في الصورة الآن؟». وهذا ضروري لكنه غير كاف لقرار إصدار.

ما يمنحه تشغيل أداة الفحص

  • • قائمة نتائج لكل صورة تُنشأ من الصفر كل مرة
  • • شدة من التنبيه لا من مخطط الاستدعاء
  • • إخفاءات في ملفات تجاهل بلا سجل موقع لمن قبل ماذا

ما يضيفه Stella Ops

  • • نتائج مجمعة من 38 مصدرًا نشطًا ثم مرتبة بقابلية الوصول
  • • دليل موقع بـ DSSE قابل للإعادة لكل حكم — حتى المستبعد
  • • يغذي الحكم بوابة الإصدار وتواصل المراقبة مقارنة digest العامل بالمعتمد بعد النشر

ما لا يفعله Stella Ops

يغطي Trivy مستودعات Git وVM وKubernetes وسوء التهيئة والأسرار. لا يفعل Stella Ops ذلك. نطاقه صور الحاويات ولقطات أنظمة الملفات مع أدلة موقعة قابلة للإعادة لكل حكم.

مقارنات كاملة: Stella Ops مقابل Trivy | Stella Ops مقابل Grype

التنفيذ: وصل بصمات العقد

يتم التعامل مع دليل قابلية الوصول من حيث المحتوى من أجل إلغاء البيانات المكررة والتحقق. تتيح تجزئات العقدة التمييز الفعال بين الإصدارات. تجزئة العقدة SHA256(normalize(purl) + ":" + normalize(symbol)) تجزئة المسار SHA256(entryNodeHash + ":" + joinedIntermediateHashes + ":" + sinkNodeHash) يتم الاحتفاظ بالمسارات المهمة لـ Top-K في حزمة الأدلة. يتم ترتيب المسارات حسب تردد التنفيذ (من وقت التشغيل) أو عمق الاستدعاء (من الثابت).
Read more

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

تجزئة العقدة

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

تجزئة المسار

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

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

التنفيذ: أدلة موقعة

ينتج عن كل تحليل لقابلية الوصول دليلًا موقّعًا مشفرًا ومخزنًا في وحدة تخزين موجهة للمحتوى. DSSE?Dead Simple Signing Envelope - معيار بسيط ومرن لتوقيع البيانات بتوقيعات تشفيرية DSSEDead Simple Signing Envelope - معيار بسيط ومرن لتوقيع البيانات بتوقيعات تشفيرية مظروف بتنسيق in-totoإطار عمل لتأمين سلسلة توريد البرمجيات من خلال التحقق من أن كل خطوة تمت كما هو مخطط ومن قبل جهات مصرح لها SLSAمستويات سلسلة التوريد لأمان البرمجيات — إطار عمل لضمان سلامة المنتجات البرمجية عبر سلسلة التوريد بأكملها الأصلي يمكن التحقق منه بواسطة المدققين دون الوصول إلى الشبكة تنتج إعادة التشغيل الحتمية نتائج متطابقة البت الرسم البياني والتتبعات المؤرشفة في وضع عدم الاتصال التحقق مسارات التخزين المعنونة بالمحتوى cas://reachability_graphs/<hh>/<sha>.tar.zst cas://runtime_traces/<hh>/<sha>.tar.zst
Read more

ينتج عن كل تحليل لقابلية الوصول دليلًا موقّعًا مشفرًا ومخزنًا في وحدة تخزين موجهة للمحتوى. DSSEDead Simple Signing Envelope - معيار بسيط ومرن لتوقيع البيانات بتوقيعات تشفيرية

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

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

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

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

يُقاس على حقيقة مرجعية منشورة

يُقاس مصنِّف القابلية للوصول على متن معنون يُشحن في شجرة المصدر العامة: ثماني خدمات صغيرة بلغات Java وNode.js وPython وGo و.NET وRuby وRust وPHP، لكل منها ملف تسميات يحدد لكل ثغرة المستوى المتوقع — من R0، غير قابل للوصول في تلك الخدمة، إلى R4، قابل للوصول من نقطة الدخول — ومسوّغه.

الشجرة نفسها تحمل الأداة التي تقيّم التصنيفات لكل مستوى — الدقة والاستدعاء، لا رقمًا واحدًا مخلوطًا. ولأن المتن والتسميات وعقد المستويات كلها عامة، لا تحتاج إلى قبول قراءتنا: افحص الحقيقة المرجعية نفسها بتنصيبك الخاص وقارن ما يقرره بالإجابات المتوقعة المنشورة.

كيفية إجراء هذه المقارنة هي الخطوة 2.1 من تجربة التقييم →

التنفيذ: مجسات eBPF

تقبل Stella Ops حقائق التنفيذ عبر نقطة استقبال متدفقة وتعتبرها أقوى دليل على قابلية الوصول. ولا يوفّر RC1 المُجمِّع: فالمسابر المستندة إلى Tetragon أدوات تشغّلها أنت، وقابلية الوصول تعمل بدونها من الطبقتين الساكنة والثنائية. بيانات التحقيق المُلتقطة symbol_id: معرّف رمز معياري code_id: معرّف مقطع الشفرة hit_count: تكرار التنفيذ loader_base: عنوان قاعدة الذاكرة cas_uri: مرجع مُعنون بالمحتوى ترسل المجسات الملاحظات إلى /api/v1/observations على دفعات. تشتمل كل ملاحظة على CAS URI للعنصر الأساسي.
Read more

تقبل Stella Ops حقائق التنفيذ عبر نقطة استقبال متدفقة وتعتبرها أقوى دليل على قابلية الوصول. ولا يوفّر RC1 المُجمِّع: فالمسابر المستندة إلى Tetragon أدوات تشغّلها أنت، وقابلية الوصول تعمل بدونها من الطبقتين الساكنة والثنائية.

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

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

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

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

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

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

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

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

وجّه Stella Ops إلى صورة تشحنها اليوم واقرأ الأحكام الموقعة. إذا أزالت قابلية الوصول أقل من المعلن فسترى ذلك أيضًا — يحمل كل استبعاد دليله.

المستوى المجاني: 3 بيئات وحتى 100 عملية فحص لـ digests جديدة خلال 24 ساعة متجددة، مستضاف ذاتيًا. v1.0-RC1، إصدار مرشح.