مطور بلغة Go • صفر اعتماديات خارجية • أقل من 20 مللي ثانية

منع تسريب البيانات الحساسة قبل مغادرتها الجهاز.

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

نُشر بواسطة CrenoxHQ في 3 يوليو 2026

المحرك المفتوح المصدر

نسخة الأفراد (Crenox Community)

فاحص خفيف لخطافات Git مخصص للمطورين الأفراد. يعترض تسريب الأسرار محلياً في ذاكرة محطة العمل قبل مغادرتها الجهاز. سريع وخاص ومجاني دائماً.

تثبيت واستخدام الأداة ↓
حوكمة وإدارة الأساطيل

نسخة المؤسسات (Crenox Pro)

إدارة مركزية لسياسات الأمان، وسجلات تدقيق الامتثال الآلية، وحماية موحدة وشاملة لفرق التطوير.

نسخة المؤسسات (قريباً)
01 / الفلسفة الأمنية

لماذا يعد الفحص المحلي خط الدفاع الأخير الحقيقي

في بيئات التطوير الحديثة (DevSecOps)، يتم تأجيل فحص البيانات الحساسة غالباً إلى منصات البناء المستمر (CI) أو خطافات الرفع (Post-Push Webhooks). وعلى الرغم من أهمية هذه الفحوصات، إلا أنها تعمل بعد فوات الأوان. بمجرد وصول المفتاح السري إلى قاعدة بيانات git البعيدة، يجب اعتباره مكشوفاً، مما يستدعي إجراءات مكلفة لتدوير المفاتيح، ومراجعة سجلات الوصول، وتنسيق استجابة الطوارئ بين فرق العمل.

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

يعمل كرينوكس على سد هذه الثغرة عند الحافة (Edge). من خلال تثبيته كخطاف pre-commit أصلي لـ Git مباشرة في بيئتك المحلية، يقوم بفحص التعديلات المرحلية وإلغاء الالتزام فوراً إذا تم الكشف عن مفاتيح سحابية نشطة أو كلمات مرور أو إعدادات حساسة. ولأنه يعمل بالكامل محلياً، فهو لا يتطلب أي اتصال بشبكة الإنترنت ولا يشارك أي بيانات مع خوادم خارجية.

02 / البنية الهندسية للأداة

التحقق من البيانات الحساسة في أقل من 20 جزءاً من الثانية

تعتبر سرعة التطوير قيداً أساسياً عند تفعيل خطافات pre-commit؛ إذ أن الخطافات التي تتسبب في بطء الالتزام تدفع المطورين لتجاهلها. لحل هذا القيد، يعتمد كرينوكس على خط فحص ثلاثي المستويات يقوم بتحليل التعديلات في أجزاء من الثانية مع الحفاظ على دقة كشف استثنائية.

المستوى الأول: خوارزمية Aho-Corasick الأوتوماتيكية

يمر كل ملف عبر فحص خطي ذو تعقيد O(N) باستخدام شجرة البحث المجمعة Aho-Corasick. يتم تضمين القواعد الافتراضية والمخصصة للمستخدم مباشرة داخل جدول الحالات البرمجية للأداة، مما يسمح باكتشاف الأنماط والرموز في ممر واحد دون إثقال المعالج.

المستوى الثاني: قياس شانون لعشوائية النصوص (Entropy)

تخضع الرموز المرشحة المكتشفة في الممر الأول لحساب مدى العشوائية وتوزيع الأحرف فيها (Shannon Entropy). يساعد هذا المقياس في التمييز بين المفاتيح العشوائية الحقيقية والمتغيرات أو القوالب النصية الافتراضية.

المستوى الثالث: محلل سياق الاستثناءات

أخيراً، يقوم المحلل بقراءة أسطر الكود المحيطة بالمتغيرات والتعليقات المجاورة. يتيح هذا المستوى استبعاد المفاتيح الموجودة في ملفات الاختبار أو بيئات التطوير الافتراضية، أو الأسطر الملحقة بتتعليق التجاوز // crenox:ignore.

معاينة مخرجات الفحص الفعلية

عندما يكتشف كرينوكس تسريباً للبيانات، يقوم بإلغاء عملية الالتزام وعرض تفاصيل الفحص الدقيقة في واجهة سطر الأوامر بالشكل التالي:

03 / إحصائيات الأداء

مقارنة الأداء: كرينوكس ضد جيتليكس وبيترليكس (Crenox vs Gitleaks vs Betterleaks)

تم قياس الأداء على مستودعات حقيقية ومفتوحة المصدر، باستخدام بيئة GitHub Actions Ubuntu cloud runner — البنية التحتية ذاتها المستخدمة في خطوط CI/CD الفعلية.

المقياس المرصود كرينوكس (v2.1.10) جيتليكس (v8.18.2) بيترليكس (v1.6.1)
ذاكرة الوصول العشوائي (Peak RAM) 13.6 – 18.4 MB 21.2 – 23.8 MB 30.4 – 73.0 MB
وقت فحص الملفات (متوسط) 7.2 – 11.1 ms 24.1 – 1808.0 ms 94.4 – 753.3 ms
وقت الفحص التاريخي (متوسط) 4.9 – 13.1 ms 23.6 – 42.5 ms 32.0 – 293.1 ms
دقة الاستدعاء التاريخي (sample_secrets) 9 / 9 (100%) 5 / 9 (56%) 6 / 9 (67%)
دقة فحص الملفات (sample_secrets) 4 / 4 (100%) 1 / 4 (25%) 2 / 4 (50%)
الاعتمادية الخارجية للملف صفر (مستقل) صفر صفر

شفاف وقابل للتدقيق — النتائج مُولَّدة بواسطة سكربت مقارنة مفتوح المصدر. المنهجية والأكشن متاحان للعموم. عرض أحدث تشغيل ←

04 / تثبيت الأداة

التثبيت والدمج المحلي

يتم تجميع كرينوكس كملف ثنائي مستقل للعمل مباشرة على أنظمة Linux و macOS وأجهزة Android عبر بيئة Termux دون الحاجة لتثبيت لغة Go أو أي اعتماديات برمجية أخرى.

الخيار أ: التثبيت التفاعلي بسطر واحد (الموصى به)

الطريقة الأسرع والأسهل لتثبيت كرينوكس محلياً مع اكتشاف نظام التشغيل ومعمارية المعالج وتجهيز خطاف Git تلقائياً:

curl -fsSL https://crenoxhq.github.io/crenox/install.sh | bash

الخيار ب: الملفات الثنائية الجاهزة (Pre-compiled)

تنزيل البرنامج الجاهز مباشرة بدون أي متطلبات سابقة. مثال لنظام Linux AMD64:

# 1. تنزيل الملف الثنائي المناسب لمعمارية جهازك (مثال لـ Linux AMD64)
wget https://github.com/crenoxhq/crenox/releases/download/v2.1.5/crenox-v2.1.5-linux-amd64 -O crenox

# 2. منح صلاحيات التشغيل للملف
chmod +x crenox

# 3. نقل الملف لمسار البرامج المعتمد في جهازك (/usr/local/bin)
sudo mv crenox /usr/local/bin/

# 4. التحقق من نجاح التثبيت
crenox version

الخيار ج: مدير حزم أندرويد (Termux)

إذا كنت تستخدم أندرويد عبر بيئة Termux، يمكنك تثبيت الأداة مباشرة وبسهولة فائقة بسطرين من الأوامر عبر مستودع مستخدمي Termux (TUR):

pkg install tur-repo
pkg install crenox

الخيار د: مثبت حزم لغة Go

إذا كان لديك بيئة Go مهيأة في مسار نظامك، يمكنك تنزيل وبناء الأداة مباشرة بالأمر التالي:

go install github.com/crenoxhq/crenox/v2/cmd/crenox@latest

الخيار هـ: التجميع والبناء من المصدر

استنساخ المستودع وبناء الملف الثنائي يدوياً باستخدام أوامر Makefile المرفقة:

git clone https://github.com/crenoxhq/crenox.git
cd crenox
make build
./dist/crenox version

تفعيل خطاف Git في المستودعات

بعد وضع البرنامج في مسار نظامك، يمكنك تفعيل فحص الالتزام التلقائي للمستودعات محلياً:

# تفعيل الفحص للمستودع الحالي فقط
crenox install

# تفعيل الفحص عالمياً لكافة المستودعات المستقبلية
crenox install --global
05 / تفاصيل التشغيل والأوامر

أوائل أوامر التشغيل وسير العمل

يدعم كرينوكس عدة طرق تشغيل مختلفة لتناسب احتياجات المطورين وسير العمل محلياً أو في الخوادم البعيدة:

1. فاحص الالتزام التلقائي (Pre-Commit)

يتم تشغيله تلقائياً بواسطة git عند كتابة أمر الالتزام. يقوم بقراءة الملفات المجهزة وفحصها في الذاكرة وفق سياسة عدم التسامح المطلق والإغلاق عند الفشل (Zero-Tolerance & Fail-Closed): أي اكتشاف أمني مهما كانت درجته أو أي ملف يتعذر قراءته يمنع الالتزام فوراً (كود الخروج 1).

crenox run

2. الفحص اليدوي للمجلدات

لفحص مجلد أو ملف محدد يدوياً وبشكل تكراري قبل البدء في تجهيز الملفات للالتزام:

crenox scan -r ./path/to/project

3. التصدير لمنصات البناء المستمر

تصدير تقرير أمني مهيكل بصيغة JSON أو SARIF لدمجه مع أدوات التحليل الأخرى في خوادم CI/CD:

crenox scan -r -f sarif . > report.sarif
06 / التخصيص والضبط

تخصيص كرينوكس ليتوافق مع مستودعك البرمجي

يعمل كرينوكس بالإعدادات الافتراضية بشكل تلقائي، كما يدعم التخصيص لبيئات العمل المختلفة عبر إضافة ملف .crenox.yaml في الجذر الرئيسي للمستودع.

قواعد الكشف المخصصة (Custom Signatures)

يمكنك كتابة وتحديد بادئات المفاتيح الخاصة بمؤسستك وتجميعها مباشرة ضمن شجرة حالات البحث (Aho-Corasick Automaton) دون التسبب بأي بطء تشغيلي:

# .crenox.yaml
custom_signatures:
  - id: "internal-api-key"
    description: "Proprietary internal service credential"
    prefix: "mycompany_key_"
    severity: "CRITICAL"
    regex: "^mycompany_key_[a-zA-Z0-9]{32}$"

استبعاد المسارات والامتدادات (Exclusions)

لتسريع عمليات الفحص والابتعاد عن فحص المجلدات الخارجية أو ملفات الوسائط الثقيلة:

exclude_paths:
  - "vendor/**"
  - "node_modules/**"
exclude_extensions:
  - ".png"
  - ".zip"

أنماط القائمة البيضاء العالمية (Allowlist)

لمنع إطلاق تنبيهات كاذبة حول مفاتيح عامة أو تجريبية معروفة مسبقاً وتستخدم بكثرة في الاختبارات:

allowlist_patterns:
  - "AKIAIOSFODNN7EXAMPLE"   # مطابقة تامة
  - "sk_test_*"              # كافة مفاتيح اختبار Stripe
07 / المدونة الهندسية

كواليس التطوير الهندسية وملفات النظام

مقالات يشاركها المطورون لشرح آليات تحسين وسرعة الكشف والفلسفة الأمنية خلف بناء الأداة.

22 سبتمبر 2026

الإصدار 2.1.10: كشف تشفير Age، تعميم فلاتر SOPS، الترخيص المزدوج، وحوكمة المساهمات

يقدم الإصدار 2.1.10 كشفاً مخصصاً في Tier 1 لمفاتيح تشفير Age الخاصة بدون حجز ذاكرة مع حارس برمجي لمنع تصادم المتغيرات، وتعميماً شاملاً لفلاتر كتل تشفير Mozilla SOPS لكافة الخوارزميات، واستبعاد مفاتيح Age العامة للمستلمين وبيانات SOPS الوصفية لمنع الإنذارات الكاذبة، ونقل الملكية الفكرية بالكامل لمنظمة CrenoxHQ، وصياغة اتفاقية الترخيص المزدوج (CLA.md)، وإطلاق نماذج قضايا GitHub القياسية وسير عمل التحقق الآلي من معايير الأداء والـ Zero-Allocation.

17 سبتمبر 2026

الإصدار 2.1.9: معالجة تكرار السطر الواحد، تقارير الملفات المتعددة، تسريع فحص خطافات Git، ومحلل DNS مرن

يعالج الإصدار 2.1.9 حالات حافة دقيقة في نواة المحرك ويحسن زمن الاستجابة: يصحح مشكلة استبدال النتائج عند تواجد أكثر من سر مختلف في نفس السطر، ويضمن إبلاغ الفحص عن الأسرار المكررة عبر الملفات المنفصلة بدلاً من إخفائها كلياً، ويختزل عمليات استدعاء subprocess لـ Git عند تشغيل pre-commit hook، ويمنع الانهيار (Panic) عند إدخال قواعد Regex مخصصة غير صالحة، ويضيف آلية DNS مزدوجة احتياطية للبيئات المقيدة شبكياً، مع كتم تنبيهات الإنتروبيا المكررة عند تطابق قواعد الأنماط الصريحة، وتوسيع تصنيف مسارات الاختبارات لتشمل بيئات Pytest وBun.

12 سبتمبر 2026

الإصدار 2.1.8: حجب الأسرار بالنجوم، تأمين سكربت التثبيت، فحص تاريخ Git المتوازي، و6 تواقيع حديثة

يقدم الإصدار 2.1.8 حجب الأسرار التلقائي بالنجوم (****) في كافة التقارير (Zero-Plaintext Masking)، وترقية سكربت التثبيت السريع بأعلى معايير الأمان والتحقق التشفيري بـ SHA-256 والسقوط الآمن بدون صلاحيات جذر، وفحص تاريخ Git المتوازي بعدد أنوية المعالج مع شمول دمج الفروع (Merge Commits) ورسائل الـ Commits، والتحقق المبكر من المسارات وصيغ الإخراج، مع إضافة 6 تواقيع جديدة تشمل DeepSeek وAlibaba AccessKey وAzure Storage وGrafana Cloud وTerraform Cloud وInfracost.

3 سبتمبر 2026

الإصدار 2.1.7: إصلاح توافقية أندرويد وTermux Seccomp، تسريع المسار الساخن بانعدام حجز الذاكرة، وتنقية ألوان Git ANSI

يقدم الإصدار 2.1.7 بناءً مخصصاً لبيئة Android/Termux لمعالجة قيود أمان Seccomp التي كانت تسبب انهيار (SIGSYS) بسبب faccessat2 على مختلف أنوية أندرويد، ويلغي تخصيص الذاكرة نهائياً في مصفوفات السياق الأمني للوصول إلى انعدام تام لحجز الذاكرة (Zero-Allocations) في المسار الساخن، إلى جانب تنقية نصوص ومخرجات Git diff تلقائياً من رموز ألوان ANSI لمنع تفويت أي تسريبات في الفحص التاريخي.

15 أغسطس 2026

الإصدار 2.1.6: توسيع التواقيع إلى 125+، تسريع الإنتروبيا بجدول Log2 LUT، وتصفية الإنذارات الكاذبة للتجزئات

يقدم الإصدار 2.1.6 توسيعاً شاملاً لقاعدة التواقيع المدمجة لتتجاوز 125 توقيعاً أمنياً (بإضافة Cohere وTogether AI وMistral AI وDatadog وAWS AppSync)، وتسريع محرك الإنتروبيا بنسبة 41.4% عبر جدول بحث مسبق Log2 LUT، وتوليد تقارير GitLab Secret Detection SAST الرسمية (-f gitlab-sast)، مع تصفية ذكية لكافة تجزئات الحزم ووحدات Go (مثل h1: وMD5sum و.ziphash) لمنع التنبيهات الكاذبة.

8 أغسطس 2026

الإصدار 2.1.5: تفوق السرعة بـ 9.8 أضعاف على Gitleaks، مرشح التنوع الرياضي hasDiversity واستبعاد التنبيهات الكاذبة

يقدم الإصدار 2.1.5 مرشح التنوع الرياضي hasDiversity لتسريع فحص Shannon Entropy بنسبة 39% على المستودعات الضخمة، ودعم تعليقات التجاهل المباشرة #nosec و nolint، وتصفية صيغ fmt.Sprintf، وإلغاء التكرار الخطي بـ O(1)، وتفوق السرعة بمقدار 9.8 ضعف مقارنة بأداة Gitleaks عبر المستودعات الشهيرة.

20 يوليو 2026

الإصدار 2.1.4: حماية ملفات JS الكبيرة، تخصيص الذاكرة الكسول، وتغطية اختباريّة 100%

يقدم الإصدار 2.1.4 حماية التقطع عند 8KB للملفات المضغوطة الكبيرة (+15MB) مع تسريع 53x في الفحص، وتخفيض استهلاك الذاكرة للملفات النظيفة بنسبة 480 ضعفاً عبر التخصيص الكسول، إلى جانب حزمة اختبارات شاملة تغطي كل الحزم بنسبة 100%.

18 يوليو 2026

الإصدار 2.1.3: بث تدفقي ديناميكي، استبعاد المجلدات، وتحليل عشوائي بلا حجز ذاكرة

يقدم الإصدار 2.1.3 آلية فحص عبر قنوات محدودة لحجم الذاكرة (مقللاً ذروة الرام بنسبة 22.6% لفحوصات المجلدات الضخمة)، واستبعاد المجلدات المستثناة مبكراً أثناء التجول بالملفات لتفادي استدعاءات النظام المكررة، ودمج حلقات استخراج الرموز العشوائية لمنع حجز الذاكرة للـ closures تماماً.

17 يوليو 2026

الإصدار 2.1.2: توقيعات جديدة، تحسين إزالة التكرار، وبينشمارك سحابي

يضيف الإصدار 2.1.2 أكثر من 8 توقيعات كشف مدمجة جديدة (روابط Slack وDiscord، معرّفات GitHub Client، MongoDB وPostgres DSNs، متغيرات مفتاح AWS)، ويُحكم سلسلة أولويات إزالة التكرار الرباعية، ويتحقق من وجود تذييل END لمفاتيح PEM قبل الإبلاغ عنها، ويُطلق نظام بينشمارك آلي قابل للتدقيق على GitHub Actions.

13 يوليو 2026

إعادة تدوير الذاكرة: تقييد استهلاك الذاكرة المؤقتة عبر sync.Pool

كيف يقدم الإصدار 2.0.7 محرك فحص متدفق عبر قنوات 8 ميجابايت مع تخزين مؤقت عام للذاكرة المستعملة. أدى ذلك إلى تقييد حجم الذاكرة المستهلكة RSS بحدود عدد خيوط المعالجة المتزامنة فقط، متفادياً تراكم حجز الذاكرة ومقلصاً ذروة RAM بمقدار 13 ضعفاً.

7 يوليو 2026

محرك الـ DFA المسطح: القضاء على حجز الذاكرة في المسار الساخن

كيف نجح الإصدار 2.0.5 في تمثيل خوارزمية Aho-Corasick عبر جدول DFA مسطح ومتصل ومفهرس بالأعداد الصحيحة. أدى ذلك لتقليص ذاكرة Trie النشطة إلى 500 كيلوبايت، وتخفيض ذروة استهلاك ذاكرة النظام RSS إلى الحدود الدنيا لبيئة عمل Go (~11 ميجابايت) مع انعدام تام لحجز الذاكرة المؤقتة (Heap Allocations) أثناء الفحص.

3 يوليو 2026

تحسين استهلاك الذاكرة: تجميع القواعد مباشرة في الأوتوماتون

كيف نجح الإصدار 2.0.4 في تقليص حجم استهلاك الذاكرة RSS بنسبة 27% من خلال بناء القواعد المخصصة وتجميعها مباشرة ضمن مصفوفة الحالات البرمجية لشجرة Trie، متفادياً معالجة الرموز أثناء التشغيل.

28 يونيو 2026

وهم الفحص الأمني بعد الرفع (Post-Push)

دراسة حول النافذة الزمنية لاختراق المفاتيح السحابية بعد رفعها للإنترنت ولماذا يعتبر تدارك التسريب في خوادم الـ CI فواتاً للأوان وضرورة تصفية الأخطاء عند جهاز المطور محلياً.

08 / مجتمع المطورين والدعم

مجتمع الأداة والدعم الفني

كرينوكس هو مشروع أمني مفتوح المصدر يُدار ويُطور بواسطة CrenoxHQ. نرحب باقتراحات القواعد والمساهمات البرمجية من مجتمع المطورين.

إذا كنت ترغب في الإبلاغ عن مشكلة أمنية، أو اقتراح قاعدة كشف جديدة، أو المساهمة في المشروع، يرجى استخدام قنوات التواصل التالية: