
محرك اختبار اختراق بالذكاء الاصطناعي متعدد الوكلاء ومستقل: بيئة أدوات معزولة ومحوكمة، وبوابة أدلة وتحقق غير قابلة للتغيير، وبيئة تقييم لوكلاء الأمن قابلة لإعادة الإنتاج.
محرك متعدد الوكلاء لتقييمات الأمن المصرّح بها. يفوّض المخطِّط الجذري المهام إلى وكلاء الاستطلاع والاستكشاف والهجوم (OPTIZero) والتحقق وإعداد التقارير — والمحرك نفسه يفرض نطاق العمل والاتصالات الخارجية والأدلة وسياسة الموارد بغض النظر عن النموذج الذي يقوده. تتطلب النتائج دليل تنفيذ حقيقي بالإضافة إلى تحقق مستقل؛ القصة المقنعة لا تثبت شيئًا.
يقيّم نفسه مقابل معيار السيناريوهات القابلة للاستغلال الخاص به — يحقق الحلّال الوهمي الحتمي 24/24 بنتيجة 100/100 — ويعمل بالكامل دون اتصال مع أي نموذج محلي متوافق مع OpenAI.
إصدار تجريبي مبكر، قيد التطوير النشط. قد يتغير السلوك دون إشعار؛ بعض القدرات جزئية أو متروكة عمدًا. تحقق قبل الاعتماد عليه — راجع مصفوفة الحالة.
معظم الأدوات الهجومية تثق في السلوك الجيد للنموذج. OIHK لا يفعل ذلك: حدود الأمان تكمن في المحرك وتصمد بغض النظر عما يرغب النموذج في قوله.
example.com لا يصرّح بنطاقاته الفرعية؛ يتم تثبيت المضيفين المعلَنين عبر DNS طوال التشغيل بأكمله.git clone https://github.com/Broskigx/Oihk-pentesting.git
cd Oihk-pentesting
uv sync
uv run oihk --help
uv run oihk run -t https://example.test --mode passive --scan-mode standard
على Kali Linux، تأكد من تشغيل Docker أولًا (sudo systemctl start docker).
أو افتح Baron، المساعد التفاعلي — أنت تتحدث، وهو يقود المحرك المحكوم (يستخدم الوضع السلبي افتراضيًا ما لم تصرّح بتقييم عميق):
uv run oihk start
يشغّل Baron تقييمات حقيقية، ويجيب بوصفات أدوات دقيقة من مجموعة RAG المكوّنة من 156 أداة، ويتنقل عبر OSINT (page_osint، username_osint، domain_osint، breach_osint، phone_osint)، ويتذكر كل جلسة في Redis. لا يحصل أبدًا على صدفة خام — فقط المحرك المحكوم — وكل شيء يعمل بالقوائم: /apimodel و /adaptador و /instancia تفتح منتقيات Textual تفاعلية.
تشير الإعدادات الافتراضية إلى LM Studio على http://localhost:1234/v1:
export OIHK_LLM="openai/mistral-nemo"
export OIHK_API_BASE="http://localhost:1234/v1"
export OIHK_API_KEY="lm-studio"
/apimodelيتصل أي من الإعدادات المسبقة الستة بأمر واحد؛ كل منها يتذكر مفتاحه الخاص:
/apimodel claude sk-ant-… # Anthropic
/apimodel chatgpt sk-… # OpenAI
/apimodel gemini AIza… # Google AI Studio
/apimodel grok xai-… # xAI
/apimodel deepseek sk-… # DeepSeek
/apimodel nvidia nvapi-… [model] # NVIDIA NIM
/apimodel (بدون وسائط) يفتح منتقي المنصة؛ /apimodel <plataforma> يعيد الاتصال بالمفتاح المحفوظ؛ /apimodel off يقطع الاتصال. يعمل أي مزوّد آخر متوافق مع OpenAI عبر /models base + /models key + /models use.
كما تزيل بادئتان سحابيتان كل إعداد نقطة النهاية على مستوى البيئة: deepseek/… و nvidia_build/… توجّهان إلى واجهات مزوّديهما — عيّن المفتاح، لا شيء آخر. توجّه التجاوزات لكل دور (OIHK_ROOT_LLM، OIHK_RECON_LLM، …) الأدوار المنطقية إلى نماذج مختلفة.
يعمل OIHK بشكل أفضل مع نموذج لا يرفض بشكل مفرط: المساعدون المضبوطون أمنيًا بشكل كبير يرفضون الخطوات الهجومية المشروعة والمصرّح بها ويعطّلون الوكيل في منتصف التقييم. هذا لا يقلل من أمان OIHK — لم تكن الحدود يومًا هي رفض النموذج؛ بل هي النطاق الدقيق للمحرك، والاتصالات الخارجية التي تفشل بشكل مغلق، وسطح الأدوات المحكوم، وبوابة الأدلة، التي تصمد بغض النظر عما يقوله النموذج.
يمتلك المخطِّط الجذري ScanPlan واحدًا مُنقّحًا ويفوّض الخطوات إلى الوكلاء الفرعيين. كل استدعاء أداة محكوم يجتاز أربع سلطات سياسية — الوضع/الدور، النطاق الدقيق، حاكم الموارد، اتصالات البيئة المعزولة — قبل التنفيذ، ويصبح ناتجه دليلًا غير قابل للتغيير في سجل التشغيل. فقط وكيل التحقق يمكنه تحويل ذلك الدليل إلى نتيجة؛ ولا يمكن للجذر إنهاء تشغيل بينما العمل الحرج مفتوح. تُستأنف التشغيلات من المخرجات (--resume <run-id>) وتُحفظ تحت oihk_runs/<run-id>/ (الخطة، الأدلة، التحققات، النتائج، SARIF، التقرير).
flowchart TB
OP([Operator: scope + mode]) --> ROOT[Root planner]
ROOT --> RECON[Recon]
ROOT --> DISC[Discovery]
ROOT --> ATTACK[Attack - OPTIZero]
ROOT --> VALID[Validation]
ROOT --> REPORT[Reporting]
RECON --> GATE
DISC --> GATE
ATTACK --> GATE
VALID --> GATE
subgraph GATE[Policy authorities - fail closed]
direction LR
M[Mode / role] --> S[Exact scope] --> G[Resource governor] --> BOX[Sandbox: egress allowlist]
end
GATE --> LEDGER[(Evidence ledger)]
LEDGER --> VALID
VALID --> FIND[Findings + SARIF report]
</mermaid>يجلب OPTIZero، دور attack، كتالوجًا تصريحيًا لنواقل تصعيد الامتيازات لنظامي Windows و Linux و macOS خلف محدد معدل AIMD تكيفي — ويتحكم الجذر بالأسطول بأكمله أثناء التشغيل (list_children، send_message، stop_child، broadcast). التفاصيل في ARCHITECTURE.
يعمل OIHK أيضًا كبيئة تقييم خاصة به: يعمل المحرك الحقيقي مقابل 24 سيناريو قابلًا للاستغلال مضمّنًا — الويب، وAPI، والمصادقة، والشيفرة المصدرية، والإعدادات، وتصعيد الامتيازات/التشفير/CVE المتوافقة مع AutoPenBench — ويقيّم مُتحقّق برمجي بنتيجة معيارية من 0 إلى 100 عبر صحة النتائج، وصلاحية الأدلة، واستخدام الأدوات، والكفاءة، وتجنّب الإيجابيات الكاذبة. لا يقيّم أي نموذج نفسه.
uv run oihk eval list
uv run oihk eval run-all --model mock
uv run oihk eval compare --models mock,mock:wrong_finding
يُشحن نفس الإطار كبيئة verifiers على Prime Intellect Hub
(broskigx/oihk-security-agent):
prime env install broskigx/oihk-security-agent
vf-eval oihk-security-agent -m mock
جدول السيناريوهات الكامل، وصيغة التقييم، وتعيين المعيار: EVALUATION.
oihk/ CLI, policy/governance, agents, tools, sandbox, findings
oihk/evals/ evaluation subsystem (scenarios, verifier, scoring, mock provider)
environments/ standalone verifiers environment package (Prime Intellect Hub)
containers/ sandbox image, entry point, browser driver, SBOM generation
deploy/ local-model LoRA pipeline: dataset trainer, Ollama Modelfiles
docs/ architecture, security boundary, configuration, evaluation
tests/ unit, regression, and opt-in integration tests
ToolsHelp/ RAG corpus: 156 governed-tool cards
skills/ external-agent skill packs
يولّد scripts/build_lora_dataset.py مجموعة بيانات LoRA ثنائية اللغة (الإسبانية/الإنجليزية) — 536 عيّنة لكل منهما، 336 مع استدعاءات أدوات حقيقية — من مجموعة الأدوات المحكومة والسيناريوهات الـ24 للتقييم، بما في ذلك سلوكيات الأمان (انضباط النطاق، بوابة docker، مقاومة الحقن). درّبه مقابل Qwen2.5-14B-Instruct، وصدّر Q4_K_M GGUF، وقدّمه في Ollama أو LM Studio: المسار الكامل في deploy/local-models.
للاستخدام المصرّح به فقط. يختبر OIHK بنشاط الأهداف التي تُعطى له. المشغّل مسؤول وحدها عن التصريح، والحدود الآمنة، وتوافر الهدف، والتعامل مع البيانات، والامتثال للقانون المعمول به.
للإبلاغ عن ثغرة أمنية في OIHK نفسه، راجع الإبلاغ عن ثغرة.
صدر تحت رخصة MIT — حر للاستخدام والتعديل والتوزيع، بما في ذلك تجاريًا، طالما بقي إشعار حقوق النشر ونص الترخيص في مكانهما.
| نظام التشغيل | Windows 10/11 و Linux (تم اختبار Kali). لم يتم اختبار macOS. |
| Python | 3.12+ مع uv |
| Docker | مطلوب لعزل الفحص. يعمل OSINT السلبي الخاص بـ Baron بدونه. |
| الذاكرة | 8 جيجابايت كحد أدنى، 16 جيجابايت موصى به |
| GPU | غير مطلوب من OIHK. يعمل النموذج المحلي على CPU أو GPU — متطلباته الخاصة هي متطلبات النموذج. |
| النموذج | أي نقطة نهاية متوافقة مع OpenAI (LM Studio افتراضيًا)، أو مفتاح سحابي عبر /apimodel: Claude، ChatGPT، Gemini، Grok، DeepSeek، NVIDIA NIM |
| المستند | المحتويات |
|---|
| ARCHITECTURE | رسم الوكلاء البياني، مخزن الخطة، السلطات السياسية، OPTIZero |
| SECURITY | حدود الثقة، نموذج التهديد، الإبلاغ عن ثغرة |
| STATUS-MATRIX | ما هو مُنفّذ، أو جزئي، أو متروك عمدًا |
| CONFIGURATION | مرجع متغيرات البيئة الكامل — الحوكمة، البيئة المعزولة، الذاكرة |
| EVALUATION | السيناريوهات الـ24، المُتحقّق، التقييم، تعيين AutoPenBench |
| FINDINGS | مخطط النتائج، SARIF، مخرجات المعالجة |
| PRIME-INTELLECT | بيئة Verifiers وتأطير الحوسبة |
| CHANGELOG | كل تغيير، لكل إصدار |
| .env.example | المجموعة الفرعية التشغيلية لمتغيرات البيئة |