العودة إلى التحديثات
UpdatedAug 2, 2026

OpenAnt — Updated!

OpenAnt من Knostic هو المنتج الرائد مفتوح المصدر القائم على LLM لاكتشاف الثغرات، حيث يساعد المدافعين على اكتشاف الثغرات الأمنية المؤكدة بشكل استباقي مع تقليل كل من الإيجابيات الكاذبة والسلبيات الكاذبة. المرحلة 1 تكتشف. المرحلة 2 تهاجم. ما يصمد هو الحقيقي.

مشاركة

OpenAnt

OpenAnt

OpenAnt من Knostic هو أول منتج مفتوح المصدر لاكتشاف الثغرات الأمنية المعتمد على نماذج اللغة الكبيرة (LLM) (يُسمى الآن harness) يساعد المدافعين على اكتشاف العيوب الأمنية المُتحقَّق منها بشكل استباقي مع تقليل كل من الإيجابيات الكاذبة والسلبيات الكاذبة. المرحلة 1 تكتشف. المرحلة 2 تهاجم. ما ينجو هو الحقيقي.

ضع في اعتبارك أن هذا بدأ كمشروع بحثي، ومع تطويرنا لقدرات جديدة، غالبًا ما نطلقها كنسخة تجريبية (beta). نرحب بالمساهمات.

الورقة البحثية

يمكنك العثور على ورقتنا البحثية حول بناء OpenAnt على arXiv: OpenAnt: LLM-Powered Vulnerability Discovery Through Code Decomposition, Adversarial Verification, and Dynamic Testing، بقلم Nahum Korda و Gadi Evron.

لماذا مفتوح المصدر؟

كان هذا سؤالًا ذا صلة في ملف readme عندما أطلقنا OpenAnt لأول مرة، نظرًا لأن العديد من الـ harnesses الأخرى قد تم إطلاقها. ما زلنا نأمل أنه مع انفجار الثغرات المكتشفة بالذكاء الاصطناعي، سيساعد OpenAnt مشرفي المصادر المفتوحة على البقاء في صدارة المهاجمين، حيث يمكنهم استخدامه بأنفسهم. أو إرسال مستودعهم للفحص دون أي تكلفة.

هناك أيضًا حقيقة أن تركيز Knostic ينصب على حماية الوكلاء (agents) ومساعدي البرمجة وليس على أبحاث الثغرات أو أمن التطبيقات، ونحن نحب المصادر المفتوحة، لذا قررنا إطلاق OpenAnt تحت رخصة Apache 2. علاوة على ذلك، ربما سمعت عن Aardvark من OpenAI (المعروف الآن باسم Codex Security) و Claude Code Security من Anthropic، وليس لدينا أي نية للتنافس معهم.

التفاصيل التقنية والفحص المجاني لمشاريع المصادر المفتوحة

للتفاصيل التقنية والقيود وتكاليف الرموز (tokens)، اطلع على منشور المدونة هذا: https://knostic.ai/blog/openant

لإرسال مستودعك للفحص: https://knostic.ai/blog/oss-scan

اللغات المدعومة

  • Go
  • Python
  • C/C++
  • JavaScript/TypeScript (beta)
  • PHP (beta)
  • Ruby (beta)
  • Zig (beta)
  • Swift (beta)
  • Rust (beta)

الشكر والتقدير

المشرف والبحث: Gadi Evron

البحث الأصلي، وتوليد الأفكار، والنموذج الأولي الأصلي: Nahum Korda. التحويل الأولي إلى منتج: Alex Raihelgaus، Daniel Geyshis.

مع الشكر إلى: Michal Kamensky، Imri Goldberg، Daniel Cuthbert. Josh Grossman، و Avi Douglen.

تعرّف على Knostic

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

الإعداد المحلي

ابنِ ملف CLI التنفيذي (يتطلب Go 1.25+):

cd apps/openant-cli && make build

يقوم هذا بترجمة شيفرة Go وإخراج الملف التنفيذي إلى apps/openant-cli/bin/openant.

أنشئ رابطًا رمزيًا (symlink) له في PATH الخاص بك حتى تتمكن من تشغيل openant من أي مكان:

ln -sf "$(pwd)/apps/openant-cli/bin/openant" /usr/local/bin/openant

ملاحظة: شغّل هذا من جذر المستودع حتى يُحل $(pwd) إلى المسار المطلق الصحيح.

إعداد LLM

يوجّه OpenAnt كل مرحلة من مراحل خط الأنابيب (pipeline) عبر زوج قابل للتكوين (provider, model). أسرع مسار هو المعالج التفاعلي (wizard):

openant setup llm

تسمّي التكوين (مثل my-llm)، وتختار مزوّدًا لكل مرحلة من مراحل خط الأنابيب (أي من المحوّلات (adapters) المضمّنة أدناه)، وتُدخل مفتاح API الخاص به مرة واحدة لكل مزوّد (يستخدم Bedrock سلسلة بيانات اعتماد AWS بدلاً من ذلك — اترك المفتاح فارغًا)، ويختبر المعالج كل زوج فريد من المزوّد+النموذج بطلب من رمز واحد (1-token) قبل كتابة ~/.config/openant/config.json. شغّل فحصًا باستخدامه عبر --llm-config:

openant scan /path/to/repo --llm-config my-llm

تعكس الإعدادات الافتراضية للمعالج توصيات المشروع لكل مرحلة (نماذج استدلال أقوى للكشف / التحقق / مراجعة إمكانية الوصول؛ نماذج أخف للسياق والتقرير وتوليد الاختبارات) — تجاوز أي إجابة حسب رغبتك.

المحوّلات المضمّنة

نوع المزوّدمفتاح API منملاحظات
anthropicconsole.anthropic.comالمحوّل المرجعي. غير مشمول في اشتراكات Claude Pro / Max — فاتورة منفصلة.
openaiplatform.openai.comغير مشمول في اشتراكات ChatGPT / Codex — فاتورة منفصلة.
googleaistudio.google.comغير مشمول في Gemini Advanced — فاتورة منفصلة.
bedrock— (سلسلة بيانات اعتماد AWS)Claude على AWS Bedrock. لا يوجد api_key: تأتي بيانات الاعتماد من متغيرات البيئة AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY أو ملف تعريف ~/.aws، والمنطقة من AWS_REGION. معرّفات النماذج هي ملفات تعريف الاستدلال (us.anthropic.claude-sonnet-4-6، global.anthropic.claude-haiku-4-5-20251001-v1:0، ...) — فعّلها تحت "Model access" في وحدة تحكم Bedrock واعرضها عبر aws bedrock list-inference-profiles. مُتاح عبر openant setup llm (اترك مفتاح API فارغًا — سلسلة بيانات اعتماد AWS، يتم تخطي الاختبار) — الدليل الكامل: utilities/llm/providers/BEDROCK.md.
openrouteropenrouter.aiبوابة إلى العديد من المزوّدين بمفتاح واحد ورصيد مدفوع مسبقًا واحد (يقرأ أيضًا OPENROUTER_API_KEY). معرّفات النماذج هي slugs بصيغة vendor/model (anthropic/claude-sonnet-4.6، openai/gpt-4o-mini، ...) — تصفحها على openrouter.ai/models. مُتاح عبر openant setup llm (اترك عنوان URL الأساسي فارغًا لاستخدام الإعداد الافتراضي لـ OpenRouter) — الدليل الكامل: utilities/llm/providers/OPENROUTER.md.
ollama— (خادم محلي)نماذج محلية عبر Ollama. لا يوجد api_key: اتركه فارغًا (يُرسل عنصر نائب تلقائيًا)؛ عنوان URL الأساسي افتراضيًا http://localhost:11434/v1. يجب سحب النماذج أولاً (ollama pull <model>)؛ معرّفات النماذج هي بالضبط ما يعرضه ollama list. الاستدلال المحلي مجاني — تقرير تكلفة بقيمة $0. مُتاح عبر openant setup llm — الدليل الكامل: utilities/llm/providers/OLLAMA.md.

جميعها تدعم استدعاء الأدوات (tool calling)، لذا يمكن لأي منها تشغيل مرحلتي enhance و verify التي تستخدم حلقة استخدام الأدوات الوكيلية (agentic tool-use loop). بالنسبة لـ Ollama، اختر نموذجًا قادرًا على الأدوات لتلك المراحل — قد لا تتعامل النماذج المحلية الصغيرة جدًا مع استدعاءات الأدوات بشكل موثوق.

المسار السريع لإعدادات Anthropic فقط

إذا كنت تريد الإعدادات الافتراضية الحالية لـ Claude لكل مرحلة ولا شيء غير ذلك، فتجاوز المعالج:

openant set-api-key sk-ant-...
openant scan /path/to/repo

يستخدم هذا التكوين المدمج openant-default (مُجمَّع في الملف التنفيذي، لا حاجة إلى config.json) — Claude Opus 4.6 لمراحل الكشف، و Sonnet 4 للباقي.

تكوين مكتوب يدويًا

يكتب المعالج ~/.config/openant/config.json نيابة عنك، لكن يمكنك تعديله مباشرة أيضًا. يجب أن يسرد كل llm-config جميع مراحل خط الأنابيب السبع:

الفئات