Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
gate0 — محرك سياسات صغير، قابل للتدقيق، منتهٍ، حتمي | Kitploit
أدوات/GitHubGitHub/qarait/gate0
المصادقة والترخيصأمن الشبكاتأمن السحابةأمن واجهات برمجة التطبيقات
GitHubqarait/gate0

gate0

محرك سياسات صغير، قابل للتدقيق، منتهٍ، حتمي

عرض المستودع
172منذ 6 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

gate0

CI License: MIT

محرك سياسات صغير، قابل للتدقيق، منتهٍ، وحتمي.

لماذا Gate0؟

لقد بنيت Gate0 لأنني سئمت من تصحيح سياسات RegEx في الإنتاج. أردت شيئًا مملًا، ومحدودًا، ومستحيل التعطل. إذا كنت تريد محرك سياسات مرنًا للأغراض العامة، فعليك استخدام OPA. إذا كنت تريد محرك سياسات يحقق أداءً أقل من 50 ميكروثانية في التقييم ولا تخصيصات ذاكرة في المسارات الحرجة للأمان، فأنت تريد Gate0.

نموذج الأمان

تم تصميم Gate0 للبيئات ذات الضمان العالي حيث يجب أن يكون تقييم السياسات حتميًا ومقيدًا بالموارد. راجع سياسة الأمان للإبلاغ عن الثغرات، ونموذج الأمان لنموذج التهديد الكامل والضمانات الميكانيكية.

البنية

يستخدم Gate0 استراتيجية تقييم خطية، تجاوز الرفض. تتكون كل قاعدة من هدف (مطابقة المسار السريع) و شرط اختياري (منطق عميق).

root@kitploit:~
+----------+       +-------------+       +--------+
| Ephemera | ----> | GateBridge  | ----> | Gate0  |
| (Legacy) |       | (Normalize) |       | (Core) |
+----------+       +-------------+       +--------+
     |                    ^
     |                    |
     +----(Shadow Log)----+

التحقق

يتم التحقق من صحة وسلامة Gate0 ميكانيكيًا من خلال اختبارات الوحدة التي تغطي المنطق الأساسي وحالات الحافة، والاختبارات القائمة على الخصائص عبر proptest مع مئات السيناريوهات المولدة، والتحقق من MIRI لضمان تشغيل خالٍ من الذعر والسلوك غير المحدد. يتم اختبار أسوأ حالات الإدخال لضمان الإنهاء المحدود.

root@kitploit:~
cargo test
cargo +nightly miri test --lib

نموذج الأمان والتكلفة

يستخدم مقيم Gate0 مخازن مؤقتة ثابتة الحجم مخصصة في المكدس لضمان عدم وجود تخصيصات في الكومة أثناء التقييم. يستخدم التنفيذ الافتراضي MaybeUninit لتجنب تهيئة الفتحات غير المستخدمة، مما يؤدي إلى تكلفة تهيئة O(مستخدم) بدلاً من O(سعة).

يقتصر الكود غير الآمن على وحدة واحدة (fixed_stack.rs) مع ثوابت واضحة: العناصر 0..len مهيأة، والعناصر len..N غير مهيأة. يتم التحقق من جميع المسارات غير الآمنة باستخدام MIRI.

للمستخدمين الذين يفضلون عدم استخدام أي كود غير آمن، يوفر Gate0 SafeFixedStack خلف علامة الميزة safe-stack. يستخدم هذا البديل [T; N] مع T: Default + Copy ويقوم بتهيئة جميع الفتحات مقدمًا. المقايضة هي تهيئة O(سعة) في كل استدعاء تقييم.

root@kitploit:~
cargo build --features safe-stack

يوفر كلا التنفيذين دلالات متطابقة ونفس ضمان عدم التخصيص أثناء التقييم. الخيار هو بين الأداء (O(مستخدم)) والسلامة المطلقة (O(سعة)). بالنسبة للمكدسات الصغيرة ذات أنواع Default الرخيصة مثل bool، يكون الفرق ضئيلًا.

بنية التكامل

تم تصميم Gate0 للعمل كنقطة قرار سياسة (PDP) داخل تطبيق مضيف أكبر. للحفاظ على الحتمية والحدود الصارمة، لا يعالج Gate0 الإدخال/الإخراج أو الشبكات أو دورات حياة الكائنات.

يفصل نمط التكامل الموصى به الاهتمامات عبر ثلاث طبقات. يدير التطبيق المضيف (بوابة API، خادم SSH، إلخ) الحالة والهوية والآثار الجانبية. تقوم طبقة المحول بتطبيع هذه الحالة المعقدة إلى بدائيات يفهمها Gate0 (سلاسل، قيم منطقية، أعداد صحيحة). يقوم Gate0 بتقييم السياق المبسط بشكل بحت ويعيد قرارًا.

root@kitploit:~
Host Application (User Request)
        │
        ▼
  [Adapter Layer]  →  Pre-computes context (time, IP ranges, MFA status)
        │              Converts "complex" to "primitive"
        ▼
  [Gate0 Engine]   →  Pure evaluation (0 allocations, bounded stack)
        │
        ▼
  Decision::Allow / Deny

يشرح هذا الفصل لماذا لا يتضمن Gate0 مطابقات معقدة مثل فحوصات نطاق IP أو regex. تتعامل طبقة المحول مع المنطق الخاص بالمجال وتقدم لـ Gate0 سمات منطقية أو نصية محسوبة مسبقًا. يظل Gate0 صغيرًا وقابلًا للتدقيق وحتميًا.

مثال

root@kitploit:~
use gate0::{Policy, Rule, Target, Request, ReasonCode};

let policy = Policy::builder()
    .rule(Rule::allow(Target::any(), ReasonCode(1)))
    .build()?;

let decision = policy.evaluate(&Request::new("alice", "read", "doc"))?;
assert!(decision.is_allow());

أمثلة

يحتوي دليل examples/ على سيناريوهات توضيحية تظهر أنماط الاستخدام الشائعة لـ Gate0:

SaaS API: منطق RBAC/متعدد المستأجرين القياسي. Zero Trust Network: التحكم في الوصول المستند إلى السمات (ABAC) مع فحوصات MFA والموقع. Complex Overrides: توضيح حل تعارض تجاوز الرفض.

قم بتشغيلها باستخدام:

root@kitploit:~
cargo run --example saas_api
cargo run --example zero_trust_network
cargo run --example complex_overrides

القيود

تم تقييد Gate0 عن قصد ليبقى قابلًا للتنبؤ وعالي الأداء.

لا مطابقات معقدة: المنطق مثل Bit-Mask CIDR الكامل أو Regex المتقدم يظل مسؤولية طبقة المحول. يقوم Gate0 بتقييم البدائيات المعالجة مسبقًا.

لا تعدد خيوط أصلي: تنفيذ FFI الحالي لـ Python ليس آمنًا للخيوط. يجب على المستخدمين ذوي التوافقية العالية استخدام تعدد العمليات أو انتظار تثبيت FFI للمرحلة 4 والذي سيعالج الأقفال العامة.

لا قرارات متداخلة: ضمن فئة تأثير واحدة (السماح/الرفض)، يتم إرجاع أول قاعدة مطابقة فقط. حل التعارض يعتمد بشكل صارم على الترتيب.

إضافات المجتمع

المشاريع التالية توسع محرك Gate0 لحالات استخدام متخصصة.

gate0_dsl: لغة خاصة بالمجال أصلية بلغة Rust لـ Gate0 طورتها hardliner66. تستخدم ماكروات Rust لتوفير بنية نظيفة وقابلة للقراءة لتعريف السياسات مباشرة في الكود. يمكنك العثور على التنفيذ والتوثيق على hardliner66/gate0_dsl.

الترخيص

MIT

تنزيل الأداة