Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
jev-ids — نظام كشف التسلل (IDS) فائق السرعة وذو كفاءة عالية في استهلاك الرموز، مبني على Jev من TypeSafe. | Kitploit
أدوات/GitHubGitHub/jev-sec/jev-ids
أدوات دفاعيةأمن الشبكاتاستخبارات التهديداتتعلم الآلةكشف التسللالأوراق والأبحاثكشف الشذوذتحليل السجلات
GitHubjev-sec/jev-ids

jev-ids

نظام كشف التسلل (IDS) فائق السرعة وذو كفاءة عالية في استهلاك الرموز، مبني على Jev من TypeSafe.

عرض المستودع
13124منذ 13 أياملم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
الموقع الإلكتروني
لافتة Jev IDS تعرض شعار jev_ids الطرفي، والشعار النصي "كشف التسلل باستخدام System One Model، مع مقارنته بنموذج LLM وRandom Forest."، والأمر الذي يشغّل كاشفًا على NSL-KDD

Jev IDS

Python 3.13+ Detector Jev, from TypeSafe Dataset NSL-KDD License MIT

كشف التسلل في طلب واحد. اعرض على Jev من TypeSafe تدفق شبكة واحدًا وخمسة أمثلة موسومة. يجيب عمّا إذا كان التدفق هجومًا وأي نوع، في نصف ثانية، دون أي نص لتحليله.

اختُبر Jev IDS على NSL-KDD، وهو معيار مرجعي لمجتمع الأمن السيبراني، مقابل نموذج LLM متقدم (Gemini 3.6 Flash على Vertex AI)، ونموذج تعلّم آلي كلاسيكي (Random Forest) وآخر غير خاضع للإشراف (Isolation Forest): 2,000 تدفق، وثلاث بذور، وk من 0 إلى 8 أمثلة لكل فئة. وبالنظر إلى الأمثلة الخمسة نفسها (k = 1)، كان Jev IDS:

  • أسرع بـ 7.7× من LLM: 0.32 ثانية مقابل 2.42 ثانية لكل تدفق.
  • أرخص بـ 22× من LLM: 74 دولارًا مقابل 1,651 دولارًا لكل مليون تدفق، بأسعار القائمة.
  • بنفس دقة LLM: 0.953 مقابل 0.942.
  • أقل بـ 18× في الإنذارات الكاذبة من Random Forest: 43 مقابل 764 على نفس 874 تدفقًا حميدًا.

LLM هو الكاشف الأفضل على F1: 0.880 مقابل 0.856 لـ Jev عند k = 1، ومتقدّم عند كل قيمة k (اختبار McNemar p < 0.001)، لأنه يلتقط هجمات أكثر من الأنواع المعروضة في الأمثلة. Jev هو الثاني في الترتيب، وفي هجمات اليوم صفر، وهي أنواع غائبة عن الأمثلة، يلتقط أكثر من LLM من k = 1 إلى k = 8 (0.747 مقابل 0.713 عند k = 1). الأرقام والرسوم وحدودها في الأدلة والحدود وdocs/results.md.

اقرأ الحلقة · قالب الطلب · المعجم

كيف يعمل

Jev هو System One Model. فبدلًا من كتابة نص، يقرأ state ويجيب عن أسئلة مُنمّطة حوله باحتمالات. يضع Jev IDS تدفقًا واحدًا في الحالة، إلى جانب التعليمات وأسماء الأعمدة وأوصاف الفئات الخمس والأمثلة الموسومة، ويطرح سؤالين. يعود is_attack كاحتمال. ويعود category كأحد خمسة خيارات مع درجة ثقة. ويكون الحكم هجومًا عندما يبلغ الاحتمال 0.5.

تدفق واحد، إجابتان مُنمّطتان: is_attack، وهو سؤال noul، يعيد 0.82، فوق حد 0.5، لذا يكون الحكم هجومًا؛ وcategory، وهو سؤال اختيار، يعيد dos بثقة 0.84

كل طلب يتبع المسار نفسه:

التدفق قيد الاختبار والأمثلة الموسومة يدخلان في طلب واحد إلى Jev، الذي تحوي حالته التعليمات والأعمدة والفئات والأمثلة والتدفق، مع سؤالين مُنمّطين؛ وتعود الإجابات كـ p_attack 0.82، والحكم هجوم، وcategory dos بثقة 0.84

الطلب بأكمله ملف واحد، prompts/nsl-kdd/jev.json. لا يضيف Python سوى التدفق والأمثلة، ويسافر sha256 الخاص بالملف في كل صف تنبؤ باسم prompt_hash، لذا لا تُقارَن أبدًا التشغيلات التي طلبت أشياء مختلفة على قدم المساواة. تُوسَم الأمثلة حسب الفئة فقط: أسماء الهجمات مثل neptune لا تصل أبدًا إلى أي نموذج.

التدفقات والأمثلة نفسها وحد 0.5 نفسه تذهب إلى خطي أساس: نموذج LLM عبر وكيل Agno مع مخطط إخراج JSON (Gemini 3.6 Flash عبر Vertex AI في الورقة البحثية؛ وGPT-5.6 عبر الواجهة الخلفية لـ ChatGPT Codex أو DeepSeek كبدائل) وRandom Forest من scikit-learn مدرَّب على الأمثلة نفسها. أما خط الأساس الثالث، وهو Isolation Forest مُلاءَم على التدفقات الحميدة من المجمّع وحده، فلا يرى أي مثال أبدًا: إنه المرجع غير الخاضع للإشراف، عند k = all فقط.

جرّبه

git clone https://github.com/jev-sec/jev-ids.git
cd jev-ids
uv sync
# .env: TYPESAFE_API_KEY for Jev. Gemini needs `gcloud auth application-default login` and GOOGLE_GENAI_USE_VERTEXAI=true,
# GOOGLE_CLOUD_PROJECT and GOOGLE_CLOUD_LOCATION=global in the environment; DEEPSEEK_API_KEY and CHATGPT_CLIENT_ID only for the other LLMs.

نزّل NSL-KDD إلى data/raw/nsl-kdd/ وجهّزه مرة واحدة:

uv run python -m scripts.prepare_nsl_kdd
uv run jev-ids run --dataset data/nsl-kdd/dataset.json --detector jev --split smoke --k 0,1

تقسيم smoke هو خمسة تدفقات. يكتب التشغيل results/<timestamp>-nsl-kdd-jev-smoke/ مع config.json، وصف JSON واحد لكل تدفق في predictions.jsonl (الحكم، والحقيقة، وp_attack، والفئة، ودرجة الثقة، وزمن الاستجابة، وتقرير الرموز من البوابة) والإجابات الخام في responses.jsonl.

قارن الكواشف

uv run jev-ids run --dataset data/nsl-kdd/dataset.json --detector jev --split pilot --k 0,1,2,4,8 --seeds 0,1,2
uv run jev-ids run --dataset data/nsl-kdd/dataset.json --detector llm:gemini --model gemini-3.6-flash --split pilot --k 0,1,2,4,8
uv run jev-ids run --dataset data/nsl-kdd/dataset.json --detector random_forest --split pilot --k 1,2,4,8,all
uv run jev-ids run --dataset data/nsl-kdd/dataset.json --detector isolation_forest --split pilot --k all
uv run jev-ids metrics results/<run_id> [results/<run_id> ...] > results/summary.csv
uv run jev-ids compare --a results/<jev_run> --b results/<rf_run> --subset novel --k-a 0 --k-b all  # novel = zero-day attacks

k هو عدد الأمثلة الموسومة لكل فئة. k = 1 مع خمس فئات يعني خمسة أمثلة، وall تعني المجمّع بأكمله. يطبع metrics صف CSV واحدًا لكل كاشف وk مع F1، والاستدعاء على هجمات اليوم صفر (novel في الشيفرة) ولكل فئة، وPR-AUC وROC-AUC لـ p_attack، والرموز، وزمن الاستجابة، والتكلفة. ويقرن compare تشغيلين تدفقًا بتدفق ويجري اختبار McNemar على الأزواج المتنافرة، لأن التدفقات التي يختلف عليها كاشفان فقط هي التي تميّز بينهما. تُحسب التكلفة دون اتصال كالرموز مضروبة في أسعار القائمة في prices.json، لكل كاشف على حد سواء.

أعد إنتاج الورقة البحثية

يحدّد docs/protocol.md المدخلات (تقسيم paper ذو 2,000 تدفق، والمطالبات، ومعرّفات النماذج، والأسعار) ويشغّل make paper الكواشف الأربعة على ذلك التقسيم إلى results/paper/ ويكتب results/paper/summary.csv. لكل كاشف هدفه الخاص (make paper-jev، make paper-llm، make paper-random-forest، make paper-isolation-forest)، لذا يمكن تشغيلها في نوافذ طرفية منفصلة؛ وLLM هو البطيء. يشغّل make paper-llm نموذج Gemini 3.6 Flash على Vertex AI كخمس عمليات متوازية، واحدة لكل k (make -j5 paper-llm)؛ وخطأ الحصة أو المهلة هو صف خطأ، ويعيد uv run jev-ids redo-errors results/paper/<run> الحكم على تلك التدفقات مجددًا في مكانها. الجداول والرسوم الكاملة في docs/results.md.

لماذا هو سريع ورخيص

  • طلب واحد، إجابتان. يعمل السؤالان على الحالة نفسها ويعودان كاحتمال وخيار ودرجة ثقة. لا شيء لتحليله، ولا مخطط لفرضه.
  • المدخلات فقط. يتقاضى Jev 0.042 دولار لكل مليون رمز إدخال ولا شيء مقابل الإخراج. وعند نحو 1,800 رمز لكل تدفق، تكلّف مليون حكم نحو 74 دولارًا.
  • المطالبة ملف. يسير sha256 الخاص بها في كل صف، لذا لا تُقارَن أبدًا التشغيلات ذات المطالبات المختلفة على قدم المساواة.
  • التدفقات في الحلقة الأعمق. تبقى بادئة المطالبة ثابتة لأطول وقت ممكن، فتحصل ذاكرات التخزين المؤقت لدى المزوّد على أفضل فرصة لها.
  • الفشل المفتوح. يتحول النداء الفاشل إلى صف يحمل error، ويُحتسب كعدم إنذار. ولا يتعطل أبدًا.
  • الحد نفسه للجميع. p_attack ≥ 0.5 يقرّر لـ Jev وLLM والغابة. لا ضبط لكل كاشف.

صغير بما يكفي للقراءة

تنزيل الأداة