
Cybersecurity AI (CAI)، إطار أمن الذكاء الاصطناعي
CAI)الإصدار الاحترافي مع رموز alias1 غير محدودة | 📊 عرض المعايير | 🚀 معرفة المزيد
🔓 الإصدار المجتمعي بحث وتعلم · مثالي للباحثين والطلاب pip install cai-framework
✅ مجاني للبحث 🤖 أكثر من 300 نموذج ذكاء اصطناعي 🌍 يحركه المجتمع 📚 مفتوح المصدر 🔧 إطار قابل للتوسيع
🚀 الإصدار الاحترافي مؤسسات وإنتاج · 350 يورو/شهر · رموز alias1 غير محدودة
→ ترقية إلى PRO
⚡ نموذج alias1 - ∞ رموز غير محدودة 🚫 صفر رفض - ذكاء اصطناعي غير مقيد 🏆 يتفوق على GPT-5 في معايير CTF 🛡️ دعم احترافي مضمن 🇪🇺 سيادة البيانات الأوروبية
الذكاء الاصطناعي للأمن السيبراني (CAI) هو إطار عمل خفيف ومفتوح المصدر يمكّن متخصصي الأمن من بناء ونشر أتمتة هجومية ودفاعية مدعومة بالذكاء الاصطناعي. CAI هو الإطار الفعلي لأمن الذكاء الاصطناعي، ويستخدم بالفعل من قبل آلاف المستخدمين الأفراد ومئات المؤسسات. سواء كنت باحثًا أمنيًا، أو مخترقًا أخلاقيًا، أو متخصصًا في تكنولوجيا المعلومات، أو مؤسسة تتطلع إلى تعزيز وضعك الأمني، فإن CAI يوفر اللبنات الأساسية لإنشاء وكلاء ذكاء اصطناعي متخصصين يمكنهم المساعدة في التخفيف، واكتشاف الثغرات، والاستغلال، وتقييم الأمان.
CAI_LICENSE_OFF)يمكن تشغيل CAI بدون ALIAS_API_KEY (أي بدون ترخيص Alias Robotics) عن طريق تعيين متغير البيئة CAI_LICENSE_OFF=1.
عند تعيين CAI_LICENSE_OFF إلى 1 أو true أو yes:
ALIAS_API_KEY.cai-framework العامة على PyPI بدلاً من فهرس حزم Alias الخاص.CAI_MODEL ومفتاح API الخاص بالمزود المقابل.بداية سريعة بدون ترخيص:```bash export CAI_LICENSE_OFF=1 cai
أو مضمنًا:```bash
CAI_LICENSE_OFF=1 cai
ملاحظة: لا يزال نموذج
alias1يتطلب مفتاحALIAS_API_KEYصالحًا.CAI_LICENSE_OFFيتجاوز فقط بوابة الترخيص الخاصة بالإطار — فهو لا يمنح حق الوصول إلى النماذج المستضافة على Alias.
الميزات الرئيسية:
[!ملاحظة] اقرأ التقرير الفني: CAI: ذكاء اصطناعي مفتوح وجاهز لمكافآت الثغرات في الأمن السيبراني نسخة قراءة HTML مع الأشكال والمراجع تُصان بواسطة مختبر أمن الروبوتات السيبراني.
[!تحذير] ⚠️ CAI قيد التطوير النشط، لذا لا تتوقع أن يعمل بشكل لا تشوبه شائبة. بدلاً من ذلك، ساهم عن طريق فتح مشكلة أو إرسال طلب سحب.
الوصول إلى هذه المكتبة واستخدام المعلومات أو المواد (أو أجزاء منها) ليس مقصودًا، ومحظور، حيث ينتهك هذا الوصول أو الاستخدام القوانين أو اللوائح المعمول بها. لا يشجع المؤلفون بأي حال من الأحوال العبث غير المصرح به بالأنظمة قيد التشغيل. قد يتسبب هذا في ضرر بشري جسيم وأضرار مادية.
لا يشجع مؤلفو CAI بأي حال من الأحوال العبث غير المصرح به بأنظمة الحوسبة. من فضلك لا تستخدم الكود المصدري هنا في الجرائم الإلكترونية. اختبر الاختراق من أجل الخير بدلاً من ذلك. بتنزيل أو استخدام أو تعديل هذا الكود المصدري، فإنك توافق على شروط
LICENSEوالقيود الموضحة في ملفDISCLAIMER.
CAI)Cybersecurity AICAI.envريادة الأمن السيبراني المدعوم بـ LLM مع PentestGPT، ووضع الأساس لمجال بحث Cybersecurity AI
تأسيس خط بحث Cybersecurity AI بـ 8 أوراق بحثية وتقارير فنية، مع تعاون بحثي نشط
Cybersecurity AIإصدارات قراءة HTML موسعة: CAI · CAIBench · الروبوتات البشرية كناقلات هجوم · الأمن السيبراني لروبوت بشري · اختراق روبوتات المستهلكين في عصر الذكاء الاصطناعي
CAI مع alias0 في هجمات حقن رسائل ROS على روبوت MiR-100 | CAI مع alias0 في اكتشاف ثغرات API في Mercado Libre |
|---|---|
| CAI على JWT@PortSwigger CTF — الذكاء الاصطناعي للأمن السيبراني | CAI على HackableII Boot2Root CTF — الذكاء الاصطناعي للأمن السيبراني |
|---|---|
المزيد من دراسات الحالة وPoCs متاحة على https://aliasrobotics.com/case-studies-robot-cybersecurity.php.
يشهد مشهد الأمن السيبراني تحولاً جذرياً مع تزايد دمج الذكاء الاصطناعي في العمليات الأمنية. نتوقع أنه بحلول عام 2028، ستفوق أدوات الاختبار الأمني المدعومة بالذكاء الاصطناعي عدد مختبري الاختراق البشريين. يمثل هذا التحول تغييراً أساسياً في كيفية تعاملنا مع تحديات الأمن السيبراني. الذكاء الاصطناعي ليس مجرد أداة أخرى - بل أصبح ضرورياً لمعالجة الثغرات الأمنية المعقدة والبقاء في صدارة التهديدات المتطورة. مع مواجهة المؤسسات لهجمات سيبرانية أكثر تقدماً، سيكون الاختبار الأمني المعزز بالذكاء الاصطناعي حاسماً للحفاظ على دفاعات قوية.
يبني هذا العمل على الجهود السابقة[^4] ونعتقد بالمثل أن إضفاء الطابع الديمقراطي على الوصول إلى أدوات الذكاء الاصطناعي المتقدمة في الأمن السيبراني أمر حيوي لمجتمع الأمن بأكمله. لهذا السبب نقوم بإصدار Cybersecurity AI (CAI) كإطار مفتوح المصدر. هدفنا هو تمكين باحثي الأمن والمخترقين الأخلاقيين والمؤسسات من بناء ونشر أدوات أمنية قوية مدعومة بالذكاء الاصطناعي. من خلال جعل هذه الإمكانيات متاحة بشكل مفتوح، نهدف إلى تكافؤ الفرص وضمان عدم حصر تكنولوجيا الذكاء الاصطناعي المتطورة في الأمن السيبراني على الشركات الخاصة الممولة جيداً أو الجهات الحكومية.
أصبحت برامج مكافآت الثغرات حجر الزاوية في الأمن السيبراني الحديث، حيث توفر آلية حاسمة للمؤسسات لتحديد وإصلاح الثغرات في أنظمتها قبل أن يتم استغلالها. أثبتت هذه البرامج فعاليتها العالية في تأمين البنية التحتية العامة والخاصة على حد سواء، حيث يكتشف الباحثون ثغرات حرجة قد تظل دون أن يلاحظها أحد. تم تصميم CAI خصيصاً لتعزيز هذه الجهود من خلال توفير إطار خفيف ومريح لبناء وكلاء ذكاء اصطناعي متخصصين يمكنهم المساعدة في مختلف جوانب صيد مكافآت الثغرات - من الاستطلاع الأولي إلى التحقق من الثغرات وإعداد التقارير. يهدف إطارنا إلى تعزيز الخبرة البشرية بقدرات الذكاء الاصطناعي، مما يساعد الباحثين على العمل بكفاءة وشمولية أكبر في سعيهم لجعل الأنظمة الرقمية أكثر أماناً.
قد تتساءل عما إذا كان إصدار CAI في البرية نظراً لقدراته وآثاره الأمنية هو أمر أخلاقي. قرارنا بجعل هذا الإطار مفتوح المصدر يسترشد بمبدأين أخلاقيين أساسيين:
إضفاء الطابع الديمقراطي على الذكاء الاصطناعي في الأمن السيبراني: نعتقد أن أدوات الذكاء الاصطناعي المتقدمة في الأمن السيبراني يجب أن تكون متاحة لمجتمع الأمن بأكمله، وليس فقط للشركات الخاصة الممولة جيداً أو الجهات الحكومية. من خلال إصدار CAI كإطار مفتوح المصدر، نهدف إلى تمكين باحثي الأمن والمخترقين الأخلاقيين والمؤسسات من بناء ونشر أدوات أمنية قوية مدعومة بالذكاء الاصطناعي، مما يكفل تكافؤ الفرص في الأمن السيبراني.
الشفافية في قدرات الذكاء الاصطناعي الأمنية: بناءً على نتائج أبحاثنا وفهمنا للتكنولوجيا وتشريح أفضل التقارير الفنية، نجادل بأن بائعي LLM الحاليين يقللون من قدراتهم في الأمن السيبراني. هذا أمر خطير ومضلل للغاية. من خلال تطوير CAI بشكل مفتوح، نقدم معياراً شفافاً لما يمكن لأنظمة الذكاء الاصطناعي فعله بالفعل في سياقات الأمن السيبراني، مما يتيح اتخاذ قرارات أكثر استنارة حول المواقف الأمنية.تم بناء CAI على المبادئ الأساسية التالية:
phoenix، أداة التتبع والتسجيل مفتوحة المصدر لنماذج اللغات الكبيرة. يوفر هذا للمستخدم إمكانية تتبع مفصلة للوكلاء وتنفيذهم.Claude 3.7, Claude 3.5, Claude 3, Claude 3 OpusO1, O1 Mini, O3 Mini, , الذكاء الاصطناعي للأمن السيبراني هو مجال حاسم، ومع ذلك فإن العديد من المجموعات تسعى إليه بشكل مضلل من خلال أساليب مغلقة المصدر لتحقيق عائد اقتصادي بحت، مستفيدة من تقنيات مماثلة وبناءً على نماذج موجودة مغلقة المصدر (غالبًا ما تكون مملوكة لطرف ثالث). لا يؤدي هذا النهج إلى إهدار الموارد الهندسية القيمة فحسب، بل يمثل أيضًا هدرًا اقتصاديًا ويؤدي إلى جهود مكررة، حيث ينتهي بهم الأمر غالبًا إلى إعادة اختراع العجلة. فيما يلي بعض المبادرات مغلقة المصدر التي نتابعها والتي تحاول الاستفادة من الذكاء الاصطناعي التوليدي والأطر الوكيلة في الذكاء الاصطناعي للأمن السيبراني:
CAI[!NOTE]
التقرير الفني لطلاقة CAI (arXiv:2508.13588) يؤسس أطرًا تعليمية رسمية لمحو الأمية في الذكاء الاصطناعي للأمن السيبراني.
[!NOTE] مستخدمو الإصدار الاحترافي من CAI: إذا كان لديك اشتراك نشط في CAI Pro، فإننا نقدم أدلة تثبيت مخصصة للإصدارين 0.5 و 0.6. الدعم الرسمي متاح لنظام Ubuntu 24.04 (x86_64). يتم توفير تعليمات التثبيت لأنظمة التشغيل الأخرى كما هي دون دعم رسمي:
pip install cai-framework
احرص دائمًا على إنشاء بيئة افتراضية جديدة لضمان تثبيت التبعيات بشكل صحيح عند تحديث CAI.
تقدم الأقسام الفرعية التالية دليلاً تفصيليًا أكثر حول أنظمة التشغيل الشائعة المختارة. ارجع إلى قسم [التطوير](#development) للحصول على تعليمات التثبيت الخاصة بالمطورين.
للتحقق من بناء جملة env لمفاتيح API، راجع وثائق litellm. [وثائق LiteLLM](https://docs.litellm.ai/docs/tutorials/installation)
### OS X```bash
brew update && \
brew install git [email protected]
# Create virtual environment
python3.12 -m venv cai_env
# Install the package from the local directory
source cai_env/bin/activate && pip install cai-framework
# Generate a .env file and set up with defaults
echo -e 'OPENAI_API_KEY="sk-1234"\nANTHROPIC_API_KEY=""\nOLLAMA=""\nPROMPT_TOOLKIT_NO_CPR=1\nCAI_STREAM=false' > .env
# Launch CAI
cai # first launch it can take up to 30 seconds
sudo apt-get update &&
sudo apt-get install -y git python3-pip python3.12-venv
python3.12 -m venv cai_env
source cai_env/bin/activate && pip install cai-framework
echo -e 'OPENAI_API_KEY="sk-1234"\nANTHROPIC_API_KEY=""\nOLLAMA=""\nPROMPT_TOOLKIT_NO_CPR=1\nCAI_STREAM=false' > .env
cai # first launch it can take up to 30 seconds
### Ubuntu 20.04```bash
sudo apt-get update && \
sudo apt-get install -y software-properties-common
# Fetch Python 3.12
sudo add-apt-repository ppa:deadsnakes/ppa && sudo apt update
sudo apt install python3.12 python3.12-venv python3.12-dev -y
# Create the virtual environment
python3.12 -m venv cai_env
# Install the package from the local directory
source cai_env/bin/activate && pip install cai-framework
# Generate a .env file and set up with defaults
echo -e 'OPENAI_API_KEY="sk-1234"\nANTHROPIC_API_KEY=""\nOLLAMA=""\nPROMPT_TOOLKIT_NO_CPR=1\nCAI_STREAM=false' > .env
# Launch CAI
cai # first launch it can take up to 30 seconds
اذهب إلى صفحة مايكروسوفت: https://learn.microsoft.com/en-us/windows/wsl/install. ستجد هنا جميع التعليمات لتثبيت WSL
من Powershell اكتب: wsl --install```bash
sudo apt-get update &&
sudo apt-get install -y git python3-pip python3-venv
python3 -m venv cai_env
source cai_env/bin/activate && pip install cai-framework
echo -e 'OPENAI_API_KEY="sk-1234"\nANTHROPIC_API_KEY=""\nOLLAMA=""\nOLLAMA_API_BASE="http://Your.Host.Ip.Here:11434"\nPROMPT_TOOLKIT_NO_CPR=1\nCAI_STREAM=false' > .env
cai # first launch it can take up to 30 seconds
قد تواجه مشكلات في تشغيل cai على Ubuntu لأن بعض الوكلاء يفترضون أنهم يعملون على مثيل Kali ولا يمكنهم العثور على الأدوات المطلوبة. لذا كبديل يمكنك استخدام ملف docker compose الموجود في المجلد dockerized بدلاً من ذلك. يعمل هذا أيضًا من داخل wsl إذا كان docker مثبتًا. في هذه الحالة، قم بجلب المجلد dockerized (لا حاجة للمستودع بأكمله) وقم بتشغيله من داخله. بالنسبة لبناء متغيرات البيئة لمفاتيح API، راجع وثائق LiteLLM. [LiteLLM Documentation](https://docs.litellm.ai/docs/tutorials/installation)```bash
#build and run docker compose Build takes around 20 min.
docker compose build && docker compose up -d
#access cai
docker compose exec cai cai
نوصي بوجود 8 جيجابايت من ذاكرة الوصول العشوائي على الأقل:
أولاً، قم بتثبيت userland https://play.google.com/store/apps/details?id=tech.ula&hl=es
قم بتثبيت Kali minimal في الخيارات الأساسية (مجانًا). [أو أي خيار آخر من Kali إذا كان مفضلاً]
قم بتحديث مفاتيح apt كما في هذا المثال: https://superuser.com/questions/1644520/apt-get-update-issue-in-kali، داخل محطة Kali في UserLand، نفّذ```bash
wget http://http.kali.org/kali/pool/main/k/kali-archive-keyring/kali-archive-keyring_2024.1_all.deb
sudo dpkg -i kali-archive-keyring_2024.1_all.deb && rm kali-archive-keyring_2024.1_all.deb
sudo apt-get update
sudo apt-get update && sudo apt-get install -y git python3-pip build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev pkg-config wget https://www.python.org/ftp/python/3.12.4/Python-3.12.4.tar.xz tar xf Python-3.12.4.tar.xz cd ./configure --enable-optimizations sudo make altinstall # This command takes long to execute
git clone https://github.com/aliasrobotics/cai && cd cai
python3.12 -m venv cai_env
source cai_env/bin/activate && pip3 install -e .
cp .env.example .env # edit here your keys/models
cai
### :nut_and_bolt: إعداد ملف `.env`
يستخدم CAI ملف `.env` لتحميل التكوين عند التشغيل. لتسهيل الإعداد، يوفر المستودع ملف [` .env.example`](https://github.com/aliasrobotics/cai/blob/HEAD/.env.example) نموذجيًا يوفر قالبًا لتكوين إعداد CAI ومفاتيح API الخاصة بـ LLM للعمل مع نماذج LLM المطلوبة.
:warning: مهم:
لا يوفر CAI مفاتيح API لأي نموذج افتراضيًا. لا تطلب منا توفير المفاتيح، استخدم مفاتيحك الخاصة أو استضف نماذجك الخاصة.
:warning: ملاحظة:
يجب ألا يُترك OPENAI_API_KEY فارغًا. يجب أن يحتوي إما على "sk-123" (كعنصر نائب) أو مفتاح API الفعلي الخاص بك. انظر https://github.com/aliasrobotics/cai/issues/27.
:warning: ملاحظة:
إذا كنت تستخدم نموذج alias1، فتأكد من أن إصدار CAI >0.4.0 وإليك مثال على ملف .env لتتمكن من استخدامه.```bash
OPENAI_API_KEY="sk-1234"
OLLAMA=""
ALIAS_API_KEY="<sk-your-key>" # note, add yours
CAI_STREAM=False
CAI_MODEL="alias1"
يدعم CAI تكوين عنوان URL أساسي مخصص لواجهة OpenAI API عبر متغير البيئة OPENAI_BASE_URL. يتيح ذلك للمستخدمين إعادة توجيه استدعاءات API إلى نقطة نهاية مخصصة، مثل وكيل أو خدمة متوافقة مع OpenAI تستضيف ذاتيًا.
مثال على تكوين إدخال .env:```
OLLAMA_API_BASE="https://custom-openai-proxy.com/v1"
أو مباشرة من سطر الأوامر:```bash
OLLAMA_API_BASE="https://custom-openai-proxy.com/v1" cai
تركز CAI على جعل التنسيق و التنفيذ لعوامل الأمن السيبراني خفيف الوزن، عالي التحكم، ومفيد للبشر. ولتحقيق ذلك، تعتمد على 8 ركائز: Agents و Tools و Handoffs و Patterns و Turns و Tracing و Guardrails و HITL.```
┌───────────────┐ ┌───────────┐
│ HITL │◀─────-───▶│ Turns │
└───────┬───────┘ └───────────┘
│
▼
┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐
│ Patterns │◀──-──▶│ Handoffs │◀──-─▶ │ Agents │◀──-─▶│ LLMs │
└───────────┘ └─────┬─────┘ └─────┬─────┘ └───────────┘
│ │
│ ▼
┌────────────┐ ┌────┴──────┐ ┌───────────┐ ┌────────────┐
│ Extensions │◀────▶ │ Tracing │ │ Tools │◀──▶ │ Guardrails │
└────────────┘ └───────────┘ └───────────┘ └────────────┘
│
┌─────────────┬─────┴────┬─────────────┐
▼ ▼ ▼ ▼
┌───────────┐┌───────────┐┌────────────┐┌───────────┐
│ LinuxCmd ││ WebSearch ││ Code ││ SSHTunnel │
└───────────┘└───────────┘└────────────┘└───────────┘
إذا كنت ترغب في التعمق في الكود، تحقق من الملفات التالية كنقطة بداية لاستخدام CAI:
* [__init__.py](https://github.com/aliasrobotics/cai/blob/main/src/cai/__init__.py)
* [cli.py](https://github.com/aliasrobotics/cai/blob/main/src/cai/cli.py) - نقطة الدخول لواجهة سطر الأوامر
* [util.py](https://github.com/aliasrobotics/cai/blob/main/src/cai/util.py) - دوال مساعدة
* [agents](https://github.com/aliasrobotics/cai/blob/main/src/cai/agents) - تطبيقات الوكيل
* [internal](https://github.com/aliasrobotics/cai/blob/main/src/cai/internal) - دوال CAI الداخلية (نقاط النهاية، المقاييس، التسجيل، إلخ.)
* [prompts](https://github.com/aliasrobotics/cai/blob/main/src/cai/prompts) - قاعدة بيانات أوامر الوكيل
* [repl](https://github.com/aliasrobotics/cai/blob/main/src/cai/repl) - جماليات وأوامر CLI
* [sdk](https://github.com/aliasrobotics/cai/blob/main/src/cai/sdk) - حزمة SDK لأوامر CAI
* [tools](https://github.com/aliasrobotics/cai/tree/main/src/cai/tools) - أدوات الوكيل
### 🔹 Agent
في جوهره، يجرّد CAI سلوكه في الأمن السيبراني عبر `Agents` وأنماط وكيلية `Patterns`. الوكيل هو *نظام ذكي يتفاعل مع بعض البيئة*. بشكل أكثر تقنية، نتبنى في CAI تعريفًا مرتكزًا على الروبوتات حيث الوكيل هو أي شيء يمكن النظر إليه كنظام يدرك بيئته من خلال المستشعرات، ويستدل على أهدافه ويتصرف وفقًا لذلك في تلك البيئة من خلال المشغلات (*مقتبس* من Russel & Norvig، AI: A Modern Approach). في الأمن السيبراني، يتفاعل `Agent` مع الأنظمة والشبكات، مستخدمًا الأجهزة الطرفية وواجهات الشبكة كمستشعرات، ويستدل وفقًا لذلك ثم ينفذ إجراءات الشبكة كما لو كانت مشغلات. وفقًا لذلك، في CAI، تطبق `Agent`s نموذج الوكيل `ReACT` (الاستدلال والعمل)[^3]. لمزيد من المعلومات، راجع [المثال هنا](https://github.com/aliasrobotics/cai/blob/main/examples/basic/hello_world.py) للحصول على كود التنفيذ الكامل، وراجع هذا [الدفتر التعليمي](https://github.com/aliasrobotics/cai/blob/main/fluency/my-first-hack/my_first_hack.ipynb) للحصول على برنامج تعليمي حول كيفية استخدامه.```python
from cai.sdk.agents import Agent, Runner, OpenAIChatCompletionsModel
import os
from openai import AsyncOpenAI
from dotenv import load_dotenv
load_dotenv()
agent = Agent(
name="Custom Agent",
instructions="""You are a Cybersecurity expert Leader""",
model=OpenAIChatCompletionsModel(
model=os.getenv('CAI_MODEL', "openai/gpt-4o"),
openai_client=AsyncOpenAI(),
)
)
message = "Tell me about recursion in programming."
result = await Runner.run(agent, message)
Tools تسمح لعوامل الأمن السيبراني باتخاذ إجراءات من خلال توفير واجهات لتنفيذ أوامر النظام، وإجراء فحوصات أمنية، وتحليل الثغرات، والتفاعل مع الأنظمة المستهدفة وواجهات برمجة التطبيقات - فهي القدرات الأساسية التي تمكن عوامل CAI من أداء المهام الأمنية بفعالية؛ في CAI، تشمل الأدوات أدوات مساعدة مدمجة للأمن السيبراني (مثل LinuxCmd لتنفيذ الأوامر، وWebSearch لجمع معلومات OSINT، وCode لتنفيذ البرامج النصية ديناميكيًا، وSSHTunnel للوصول عن بُعد الآمن)، وآليات استدعاء الوظائف التي تسمح بدمج أي وظيفة Python كأداة أمنية، ووظيفة agent-as-tool التي تمكّن عوامل أمنية متخصصة (مثل عوامل الاستطلاع أو الاستغلال) من أن تُستخدم بواسطة عوامل أخرى، مما يُنشئ سير عمل تعاوني قوي للأمن دون الحاجة إلى تسليم رسمي بين العوامل. لمزيد من المعلومات، يُرجى الرجوع إلى المثال هنا للحصول على التكوين الكامل للوظائف المخصصة.```python
from cai.sdk.agents import Agent, Runner, OpenAIChatCompletionsModel
from cai.tools.reconnaissance.exec_code import execute_code
from cai.tools.reconnaissance.generic_linux_command import generic_linux_command
import os from openai import AsyncOpenAI from dotenv import load_dotenv load_dotenv()
agent = Agent( name="Custom Agent", instructions="""You are a Cybersecurity expert Leader""", tools= [ generic_linux_command, execute_code ], model=OpenAIChatCompletionsModel( model=os.getenv('CAI_MODEL', "openai/gpt-4o"), openai_client=AsyncOpenAI(), ) )
message = "Tell me about recursion in programming." result = await Runner.run(agent, message)
قد تجد [أدوات](https://github.com/aliasrobotics/cai/blob/HEAD/tools) مختلفة. وهي مجمعة في 6 فئات رئيسية مستوحاة من سلسلة القتل الأمنية [^2]:
1. الاستطلاع والتسليح - *reconnaissance* (تشفير، قوائم، إلخ)
2. الاستغلال - *exploitation*
3. تصعيد الامتيازات - *escalation*
4. الحركة الجانبية - *lateral*
5. استخراج البيانات - *exfiltration*
6. القيادة والتحكم - *control*
### 🔹 Handoffs
تسمح `Handoffs` لـ `Agent` بتفويض المهام إلى وكيل آخر، وهو أمر حاسم في عمليات الأمن السيبراني حيث تكون الخبرة المتخصصة مطلوبة لمراحل مختلفة من المهمة. في إطار عملنا، يتم تنفيذ `Handoffs` كأدوات لـ LLM، حيث تُمكّن **وظيفة التسليم/التحويل** مثل `transfer_to_flag_discriminator` الـ `ctf_agent` من تمرير التحكم إلى `flag_discriminator_agent` بمجرد اعتقاده أنه وجد العلم. يؤدي هذا إلى إنشاء سلسلة تحقق أمني حيث يتعامل الوكيل الأول مع الاستغلال واكتشاف العلم، بينما يتخصص الوكيل الثاني في التحقق من العلم، مما يضمن الفصل السليم للواجبات والاستفادة من القدرات المتخصصة لنماذج مختلفة لمهام أمنية مميزة. لمزيد من المعلومات، يرجى الرجوع إلى [المثال هنا](https://github.com/aliasrobotics/cai/blob/main/examples/cai/agent_patterns/handoffs.py) للحصول على كود التنفيذ الكامل.```python
from cai.sdk.agents import function_tool
from cai.tools.common import run_command
from cai.sdk.agents import Agent, OpenAIChatCompletionsModel, HandoffInputData, Runner, function_tool, handoff, trace
from cai.sdk.agents.extensions import handoff_filters
import os
from openai import AsyncOpenAI
from dotenv import load_dotenv
load_dotenv()
@function_tool
def execute_cli_command(command: str) -> str:
return run_command(command)
flag_discriminator = Agent(
name="Flag discriminator",
description="Agent focused on extracting the flag from the output",
instructions="You are an agent tailored to extract the flag from a given output.",
model=OpenAIChatCompletionsModel(
model=os.getenv('CAI_MODEL', "qwen2.5:14b"),
openai_client=AsyncOpenAI(),
)
)
ctf_agent = Agent(
name="CTF agent",
description="Agent focused on conquering security challenges",
instructions="You are a Cybersecurity expert Leader facing a CTF",
tools=[
execute_cli_command,
],
model=OpenAIChatCompletionsModel(
model= os.getenv('CAI_MODEL', "qwen2.5:14b"),
openai_client=AsyncOpenAI(),
),
handoffs = [flag_discriminator]
)
الـ Pattern الوكيل هو نموذج تصميم منظم في أنظمة الذكاء الاصطناعي حيث تعمل الكيانات المستقلة أو شبه المستقلة ضمن إطار تفاعل محدد (النمط) لتحقيق هدف. تحدد هذه Patterns تنظيم وتنسيق وطرق التواصل بين الكيانات، وتوجيه اتخاذ القرارات، وتنفيذ المهام، والتفويض.
يمكن تعريف النمط الوكيل (AP) رسميًا على أنه صف (tuple):
\[ AP = (A, H, D, C, E) \]
حيث:
عند بناء Patterns، نصنفها عمومًا ضمن إحدى الفئات التالية، على الرغم من وجود فئات أخرى:
لمزيد من المعلومات والأمثلة على الأنماط الوكيلة الشائعة، انظر مجلد الأمثلة.
أثناء التدفق الوكيل (المحادثة)، نميز بين التفاعلات و الأدوار.
Agent في CAI يطبق عمومًا نموذج العامل ReACT[^3]، فإن كل تفاعل يتكون من 1) خطوة تفكير عبر استدلال LLM و 2) فعل عن طريق استدعاء صفر إلى n من Tools. يتم تعريف هذا في process_interaction() في core.py.Agent (أو Pattern) المنفذ None، محددًا أنه لا توجد إجراءات أخرى يتخذها. يتم تعريف هذا في run()، انظر core.py.[!NOTE] لا ترتبط عوامل CAI بـ Assistants في واجهة برمجة تطبيقات Assistants. تم تسميتها بشكل مماثل للتيسير، لكنها غير مرتبطة تمامًا. تعمل CAI بالكامل من خلال واجهة برمجة تطبيقات Chat Completions وبالتالي فهي بلا حالة بين الاستدعاءات.
تطبق CAI مراقبة الذكاء الاصطناعي من خلال اعتماد معيار OpenTelemetry وللقيام بذلك، تستفيد من Phoenix الذي يوفر قدرات تتبع شاملة من خلال أدوات تستند إلى OpenTelemetry، مما يسمح لك بمراقبة وتحليل عمليات الأمن الخاصة بك في الوقت الفعلي. يتيح هذا التكامل رؤية مفصلة لتفاعلات العوامل، استخدام الأدوات، ونواقل الهجوم خلال سير عمل اختبار الاختراق، مما يسهل تصحيح سلاسل الاستغلال المعقدة، تتبع عمليات اكتشاف الثغرات، وتحسين أداء العامل لتقييمات أمنية أكثر فعالية.

توفر Guardrails طبقة أمان حرجة لعوامل CAI، تحمي من هجمات حقن المطالبات وتمنع تنفيذ الأوامر الخطيرة. تعمل هذه القضبان الواقية بالتوازي مع العوامل، لتحقق من صحة الإدخال والإخراج لضمان التشغيل الآمن. يتضمن الإطار:
CAI_GUARDRAILS.للحصول على تنفيذ مفصل، انظر docs/guardrails.md و docs/cai_prompt_injection.md.
┌─────────────────────────────────┐
│ │
│ Cybersecurity AI (CAI) │
│ │
│ ┌─────────────────┐ │
│ │ Autonomous AI │ │
│ └────────┬────────┘ │
│ │ │
│ │ │
│ ┌────────▼─────────┐ │
│ │ HITL Interaction │ │
│ └────────┬─────────┘ │
│ │ │
└────────────────┼────────────────┘
│
│ Ctrl+C (cli.py)
│
┌───────────▼───────────┐
│ Human Operator(s) │
│ Expertise | Judgment │
│ Teleoperation │
└───────────────────────┘
يقدم CAI إطارًا لبناء ذكاءات اصطناعية للأمن السيبراني مع تركيز قوي على التشغيل *شبه المستقل*، حيث أن الواقع هو أن أنظمة الأمن السيبراني **المستقلة بالكامل** لا تزال مبكرة وتواجه تحديات كبيرة عند التعامل مع المهام المعقدة. بينما يستكشف CAI القدرات المستقلة، فإننا ندرك أن عمليات الأمن الفعالة لا تزال تتطلب تحكمًا بشريًا عن بُعد يوفر الخبرة والحكم والإشراف في عملية الأمن.
وفقًا لذلك، تعد وحدة الإنسان في الحلقة (`HITL`) مبدأ تصميم أساسيًا لـ CAI، مع الاعتراف بأن التدخل البشري والتحكم عن بُعد هما مكونان أساسيان للاختبار الأمني المسؤول. من خلال واجهة `cli.py`، يمكن للمستخدمين التفاعل بسلاسة مع الوكلاء في أي نقطة أثناء التنفيذ بمجرد الضغط على `Ctrl+C`. يتم تنفيذ ذلك عبر [core.py](https://github.com/aliasrobotics/cai/blob/HEAD/cai/core.py) وأيضًا في تجريدات REPL [REPL](https://github.com/aliasrobotics/cai/blob/HEAD/cai/repl).
## :rocket: البدء السريع
لبدء CAI بعد تثبيته، ما عليك سوى كتابة `cai` في واجهة سطر الأوامر:```bash
└─# cai
CCCCCCCCCCCCC ++++++++ ++++++++ IIIIIIIIII
CCC::::::::::::C ++++++++++ ++++++++++ I::::::::I
CC:::::::::::::::C ++++++++++ ++++++++++ I::::::::I
C:::::CCCCCCCC::::C +++++++++ ++ +++++++++ II::::::II
C:::::C CCCCCC +++++++ +++++ +++++++ I::::I
C:::::C +++++ +++++++ +++++ I::::I
C:::::C ++++ ++++ I::::I
C:::::C ++ ++ I::::I
C:::::C + +++++++++++++++ + I::::I
C:::::C +++++++++++++++++++ I::::I
C:::::C +++++++++++++++++ I::::I
C:::::C CCCCCC +++++++++++++++ I::::I
C:::::CCCCCCCC::::C +++++++++++++ II::::::II
CC:::::::::::::::C +++++++++ I::::::::I
CCC::::::::::::C +++++ I::::::::I
CCCCCCCCCCCCC ++ IIIIIIIIII
Cybersecurity AI (CAI), vX.Y.Z
Bug bounty-ready AI
CAI>
That should initialize CAI and provide a prompt to execute any security task you want to perform. The navigation bar at the bottom displays important system information. This information helps you understand your environment while working with CAI.
Here's a quick demo video to help you get started with CAI. We'll walk through the basic steps — from launching the tool to running your first AI-powered task in the terminal. Whether you're a beginner or just curious, this guide will show you how easy it is to begin using CAI.
From here on, type on CAI and start your security exercise. Best way to learn is by example:
For using private models, you are given a .env.example file. Copy it and rename it as .env. Fill in your corresponding API keys, and you are ready to use CAI.
List of Environment Variables
The Cybersecurity AI (CAI) platform offers seamless integration with OpenRouter, a unified interface for Large Language Models (LLMs). This integration is crucial for users who wish to leverage advanced AI capabilities in their cybersecurity tasks. OpenRouter acts as a bridge, allowing CAI to communicate with various LLMs, thereby enhancing the flexibility and power of the AI agents used within CAI.
To enable OpenRouter support in CAI, you need to configure your environment by adding specific entries to your .env file. This setup ensures that CAI can interact with the OpenRouter API, facilitating the use of sophisticated models like Meta-LLaMA. Here’s how you can configure it:```bash
CAI_AGENT_TYPE=redteam_agent
CAI_MODEL=openrouter/meta-llama/llama-4-maverick
OPENROUTER_API_KEY= # note, add yours
OPENROUTER_API_BASE=https://openrouter.ai/api/v1
### Azure OpenAI
تتكامل منصة الذكاء الاصطناعي للأمن السيبراني (CAI) بسلاسة مع Azure OpenAI، مما يمكّن المؤسسات من تشغيل CAI ضد النماذج المستضافة على مستوى المؤسسة (مثل gpt-4o). يُعد هذا المسار مثاليًا للفرق التي يجب أن تعمل ضمن حوكمة Azure مع الاستفادة من قدرات النماذج المتقدمة.
لتفعيل دعم Azure OpenAI في CAI، قم بتكوين بيئتك عن طريق إضافة الإدخالات التالية إلى ملف `.env`. يضمن هذا أن CAI يمكنه الوصول إلى نقطة نهاية نشر Azure الخاصة بك والمصادقة بشكل صحيح.```bash
CAI_AGENT_TYPE=redteam_agent
CAI_MODEL=azure/<model-name-deployed>
# Required: keep non-empty even when using Azure
OPENAI_API_KEY=dummy
# Azure credentials and endpoint
AZURE_API_KEY=<your-azure-openai-key>
AZURE_API_BASE=https://<resource>.openai.azure.com/openai/deployments/<deployment-name>/chat/completions?api-version=2025-01-01-preview
يدعم CAI بروتوكول السياق النموذجي (MCP) لدمج الأدوات والخدمات الخارجية مع وكلاء الذكاء الاصطناعي. يتم دعم MCP عبر آليتي نقل:
2. **STDIO (Standard Input/Output)** - للاتصال المحلي بين العمليات:```bash
CAI>/mcp load stdio myserver python mcp_server.py
بمجرد الاتصال، يمكنك إضافة أدوات MCP إلى أي وكيل:```bash CAI>/mcp add burp redteam_agent Adding tools from MCP server 'burp' to agent 'Red Team Agent'... Adding tools to Red Team Agent ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃ Tool ┃ Status ┃ Details ┃ ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ │ send_http_request │ Added │ Available as: send_http_request │ │ create_repeater_tab │ Added │ Available as: create_repeater_tab │ │ send_to_intruder │ Added │ Available as: send_to_intruder │ │ url_encode │ Added │ Available as: url_encode │ │ url_decode │ Added │ Available as: url_decode │ │ base64encode │ Added │ Available as: base64encode │ │ base64decode │ Added │ Available as: base64decode │ │ generate_random_string │ Added │ Available as: generate_random_string │ │ output_project_options │ Added │ Available as: output_project_options │ │ output_user_options │ Added │ Available as: output_user_options │ │ set_project_options │ Added │ Available as: set_project_options │ │ set_user_options │ Added │ Available as: set_user_options │ │ get_proxy_http_history │ Added │ Available as: get_proxy_http_history │ │ get_proxy_http_history_regex │ Added │ Available as: get_proxy_http_history_regex │ │ get_proxy_websocket_history │ Added │ Available as: get_proxy_websocket_history │ │ get_proxy_websocket_history_regex │ Added │ Available as: get_proxy_websocket_history_regex │ │ set_task_execution_engine_state │ Added │ Available as: set_task_execution_engine_state │ │ set_proxy_intercept_state │ Added │ Available as: set_proxy_intercept_state │ │ get_active_editor_contents │ Added │ Available as: get_active_editor_contents │ │ set_active_editor_contents │ Added │ Available as: set_active_editor_contents │ └───────────────────────────────────┴────────┴─────────────────────────────────────────────────┘ Added 20 tools from server 'burp' to agent 'Red Team Agent'. CAI>/agent 13 CAI>Create a repeater tab
يمكنك سرد جميع اتصالات MCP النشطة وأنواع النقل الخاصة بها:```bash
CAI>/mcp list
https://github.com/user-attachments/assets/386a1fd3-3469-4f84-9396-2a5236febe1f
يتم تسهيل التطوير عبر بيئات تطوير VS Code. لتجربة بيئة التطوير الخاصة بنا، قم باستنساخ المستودع، افتح VS Code وأدخل وضع الحاوية التطويرية:

إذا كنت ترغب في المساهمة في هذا المشروع، استخدم Pre-commit قبل طلب الدمج (MR) الخاص بك.```bash pip install pre-commit pre-commit # files staged pre-commit run --all-files # all files
### المتطلبات الاختيارية: caiextensions
حاليًا، الإضافات غير متاحة للعموم نظرًا لأن الجهد الهندسي المطلوب للحفاظ عليها كبير. بدلاً من ذلك، نقوم بتوفير إضافات caiextensions مختارة مصممة خصيصًا للشركات الشريكة عبر التعاونات.
### :information_source: جمع بيانات الاستخدام
يتم توفير CAI مجانًا للباحثين. لتحسين دقة اكتشاف CAI، وتطوير أبحاث الأمان المفتوحة، وتطوير وتدريب النماذج المستقبلية، نطلب منك المساهمة في مجتمع CAI من خلال السماح بجمع بيانات الاستخدام. تساعدنا هذه البيانات في تحديد مجالات التحسين، وفهم كيفية استخدام الإطار، وتحديد أولويات الميزات الجديدة، ودعم جهود تدريب النماذج وتقييمها.
الأساس القانوني لجمع البيانات هو بموجب المادة 6 (1)(f) من اللائحة العامة لحماية البيانات (GDPR) — المصالح المشروعة لـ CAI في الحفاظ على أدوات الأمان والبحث وتحسينها وتطويرها — مع تطبيق ضمانات المادة 89 لأغراض البحث.
تشمل البيانات التي يتم جمعها:
- معلومات أساسية عن النظام (نوع نظام التشغيل، إصدار بايثون)
- معلومات اسم المستخدم وعنوان IP
- أنماط استخدام الأداة ومقاييس الأداء
- تفاعلات النماذج وإحصائيات استخدام الرموز
نأخذ خصوصيتك على محمل الجد ولا نجمع سوى ما هو ضروري لتحسين CAI، ودعم البحث، وتدريب وتقييم النماذج بمسؤولية. لمزيد من المعلومات، اتصل بـ research@aliasrobotics.com. يمكنك تعطيل بعض ميزات جمع البيانات عبر متغير البيئة `CAI_TELEMETRY`، على الرغم من أننا نشجعك على إبقائه ممكّنًا للمساهمة في البحث المستمر وتطوير النماذج:```bash
CAI_TELEMETRY=False cai
لمحاكاة خط أنابيب CI/CD، يمكنك تشغيل ما يلي في أجهزة Gitlab runner:```bash
docker run --rm -it
--privileged
--network=exploitflow_net
--add-host="host.docker.internal:host-gateway"
-v /cache:/cache
-v /var/run/docker.sock:/var/run/docker.sock:rw
registry.gitlab.com/aliasrobotics/alias_research/cai:latest bash
## الأسئلة الشائعة
OLLAMA يعطيني أخطاء 404
واجهة برمجة تطبيقات Ollama في وضع OpenAI تستخدم `/v1/chat/completions` بينما مكتبة `openai` تستخدم `base_url` + `/chat/completions`.
نعتمد الخيار الأخير للتوافق العام مع مجتمع الذكاء الاصطناعي التوليدي ونعزز الخيار الأول من خلال السماح للمستخدمين بإضافة `v1` بأنفسهم عبر:```bash
OLLAMA_API_BASE=http://IP:PORT/v1
انظر المشكلات التالية التي تعالج هذا الموضوع بمزيد من التفاصيل:
أين كل caiextensions?
انظر all caiextensions
كيف أقوم بتثبيت ملحق التقرير caiextension?
كيف أقوم بإعداد الوصول عبر SSH لـ Gitlab?
أنشئ مفتاح SSH جديد```bash ssh-keygen -t ed25519
أضف المفتاح إلى وكيل SSH```bash
ssh-add ~/.ssh/id_ed25519
أضف المفتاح العام إلى Gitlab انسخ المفتاح وأضفه إلى Gitlab تحت الرابط https://gitlab.com/-/user_settings/ssh_keys```bash cat ~/.ssh/id_ed25519.pub
للتحقق من ذلك:```bash
ssh -T [email protected]
Welcome to GitLab, @vmayoral!
كيف يمكنني مسح ذاكرة التخزين المؤقت لـ Python؟```bash find . -name "*.pyc" -delete && find . -name "pycache" -delete
إذا كان host networking لا يعمل مع ollama، فتحقق مما إذا كان قد تم تعطيله في Docker لأنك غير مسجل الدخول
يتصرف Docker في OS X بشكل غريب أحيانًا. تحقق مما إذا ظهرت الرسالة التالية:
*تم تعطيل شبكة المضيف لأنك غير مسجل الدخول. يرجى تسجيل الدخول لتفعيلها*.
تأكد من معالجة هذا الأمر، وأيضًا من أن Dev Container لا يقوم بتوجيه منفذ 8000 (انقر على x إذا لزم الأمر في قسم المنافذ).
للتحقق من الاتصال، من داخل VSCode devcontainer:```bash
curl -v http://host.docker.internal:8000/api/version
تشغيل CAI ضد أي هدف
cai-004-first-message
مطالبة المستخدم الابتدائية في هذه الحالة هي: Target IP: 192.168.3.10, perform a full network scan.
بدأ الوكيل في إجراء فحص nmap. يمكنك إما التفاعل مع الوكيل وإعطائه تعليمات إضافية، أو تركه يعمل ليرى ما سيكتشفه بعد ذلك.
كيف يمكنني التفاعل مع الوكيل؟ اضغط على CTRL + C مرتين
cai-005-ctrl-c
إذا كنت ترغب في استخدام وضع HITL، يمكنك القيام بذلك بالضغط على Ctrl + C مرتين.
سيسمح لك هذا بالتفاعل (تقديم مطالبة) مع الوكيل متى شئت. لن يفقد الوكيل السياق السابق، حيث يتم تخزينه في متغير history، والذي يتم تمريره إليه وإلى أي وكيل يتم استدعاؤه. وهذا يمكن أي وكيل من استخدام المعلومات السابقة ليكون أكثر دقة وكفاءة.
هل يمكنني تغيير النموذج أثناء تشغيل CAI؟ /model
استخدم /model لتغيير النموذج.
cai-007-model-change
كيف يمكنني سرد جميع الوكلاء المتاحين؟ /agent
استخدم /agent لسرد جميع الوكلاء المتاحين.
cai-010-agents-menu
أين يمكنني سرد جميع متغيرات البيئة؟ /env
cai-008-config
كيف يمكنني مراقبة استخدام الرموز والتكاليف؟
استخدم /cost في REPL لمعرفة إنفاق الجلسة وإحصائيات الرموز، و /compact عندما تصبح المحادثات طويلة، و (في وضع TUI) مؤشرات التكلفة والنموذج لكل محطة في واجهة المستخدم.```bash
CAI> /cost
انظر إلى [مرجع أوامر CLI](https://github.com/aliasrobotics/cai/blob/HEAD/docs/cli/commands_reference.md) للحصول على قائمة الأوامر الكاملة.
كيف تعرف المزيد عن CLI؟ /help
cai-006-help
كيف يمكنني تتبع التنفيذ بالكامل؟
يسمح متغير البيئة `CAI_TRACING` للمستخدم بتعيينه على `CAI_TRACING=true` لتفعيل التتبع، أو `CAI_TRACING=false` لتعطيله.
عند تشغيل CAI لأول مرة، يتم توفير مسارين للمستخدم: سجل التنفيذ وسجل التتبع.
cai-009-logs
هل يمكنني توسيع قدرات CAI باستخدام سجلات التشغيل السابقة؟
نعم. يعمل CAI بشكل أفضل اليوم بالاعتماد على التعلم السياقي (ICL). بدلاً من بناء مخازن طويلة الأمد، فإن سير العمل الموصى به هو تحميل السجلات السابقة ذات الصلة مباشرةً في الجلسة الحالية ليتمكن النموذج من التفكير فيها ضمن السياق.
استخدم الأمر `/load` لجلب سجلات JSONL إلى سياق CAI (وهذا يحل محل أداة تحميل الذاكرة القديمة):```bash
CAI>/load logs/cai_20250408_111856.jsonl # Load into current agent
CAI>/load <file> agent <name> # Load into a specific agent
CAI>/load <file> all # Distribute across all agents
CAI>/load <file> parallel # Match to configured parallel agents
# Tip: if you omit <file>, /load uses `logs/last`. Alias: /l
CAI يطبع مسار سجل JSONL للتشغيل الحالي عند بدء التشغيل (مظلل باللون البرتقالي)، والذي يمكنك تمريره إلى /load:
cai-009-logs
ملاحظات قديمة: آليات "تمديد الذاكرة" السابقة (المخازن العرضية/الدلالية والتغذية غير المتصلة) محتفظ بها للرجوع إليها فقط. راجع src/cai/agents/memory.py للحصول على الخلفية والتفاصيل القديمة. توجهنا الحالي يعطي الأولوية لـ ICL على الذاكرة المستمرة.
هل يمكنني توسيع قدرات CAI باستخدام البرامج النصية أو معلومات إضافية؟
حاليًا، يدعم CAI المعلومات النصية. يمكنك إضافة أي معلومات إضافية عن الهدف الذي تواجهه عن طريق نسخها ولصقها مباشرة في موجه النظام أو المستخدم.
كيف؟ عن طريق إضافتها إلى موجه النظام (system_master_template.md) أو موجه المستخدم (user_master_template.md). يمكنك دائمًا توجيه المسار مباشرة إلى النموذج، وسيقوم بـ cat له.
كيف تعمل ترخيص CAI؟
لا يقيد الترخيص الحالي لـ CAI الاستخدام لأغراض البحث. أنت حر في استخدام CAI لتقييمات الأمان (اختبارات الاختراق)، وتطوير ميزات إضافية، ودمجها في أنشطتك البحثية، طالما أنك تلتزم بالقوانين المحلية.
إذا بدأت أنت أو مؤسستك في الاستفادة تجاريًا من CAI (على سبيل المثال، تقديم خدمات اختبار الاختراق مدعومة بـ CAI)، فسيكون ترخيص تجاري مطلوبًا للمساعدة في استدامة المشروع.
CAI نفسها ليست مبادرة تهدف للربح. هدفنا هو بناء مشروع مفتوح المصدر مستدام. نطلب ببساطة من أولئك الذين يستفيدون من CAI أن يساهموا ويدعموا تطويرنا المستمر.
أحصل على Unable to locate package python3.12-venv عند تثبيت المتطلبات الأساسية على نظامي القائم على دبيان!
أسهل طريقة لتجاوز ذلك هي ببساطة تثبيت python3.12 من المصدر.
@article{mayoral2025cai, title={CAI: An Open, Bug Bounty-Ready Cybersecurity AI}, author={Mayoral-Vilches, V{'\i}ctor and Navarrete-Lozano, Luis Javier and Sanz-G{'o}mez, Mar{'\i}a and Espejo, Lidia Salas and Crespo-{'A}lvarez, Marti{~n}o and Oca-Gonzalez, Francisco and Balassone, Francesco and Glera-Pic{'o}n, Alfonso and Ayucar-Carbajo, Unai and Ruiz-Alcalde, Jon Ander and Rass, Stefan and Pinzger, Martin and Gil-Uriarte, Endika}, journal={arXiv preprint arXiv:2504.06017}, year={2025} }
@article{mayoral2025automation, title={Cybersecurity AI: The Dangerous Gap Between Automation and Autonomy}, author={Mayoral-Vilches, V{'\i}ctor}, journal={arXiv preprint arXiv:2506.23592}, year={2025} }
@article{mayoral2025fluency, title={CAI Fluency: A Framework for Cybersecurity AI Fluency}, author={Mayoral-Vilches, V{'\i}ctor and Wachter, Jasmin and Chavez, Crist{'o}bal RJ and Schachner, Cathrin and Navarrete-Lozano, Luis Javier and Sanz-G{'o}mez, Mar{'\i}a}, journal={arXiv preprint arXiv:2508.13588}, year={2025} }
@article{mayoral2025hacking, title={Cybersecurity AI: Hacking the AI Hackers via Prompt Injection}, author={Mayoral-Vilches, V{'\i}ctor and Rynning, Per Mannermaa}, journal={arXiv preprint arXiv:2508.21669}, year={2025} }
@article{mayoral2025humanoid, title={Cybersecurity AI: Humanoid Robots as Attack Vectors}, author={Mayoral-Vilches, V{'\i}ctor}, journal={arXiv preprint arXiv:2509.14139}, year={2025} }
@article{balassone2025evaluation, title={Cybersecurity AI: Evaluating Agentic Cybersecurity in Attack/Defense CTFs}, author={Balassone, Francesco and Mayoral-Vilches, V{'\i}ctor and Rass, Stefan and Pinzger, Martin and Perrone, Gaetano and Romano, Simon Pietro and Schartner, Peter}, journal={arXiv preprint arXiv:2510.17521}, year={2025} }
@article{mayoral2025caibench, title={CAIBench: A Meta-Benchmark for Evaluating Cybersecurity AI Agents}, author={Mayoral-Vilches, V{'\i}ctor and Balassone, Francesco and Navarrete-Lozano, Luis Javier and Sanz-G{'o}mez, Mar{'\i}a and Crespo-{'A}lvarez, Marti{~n}o and Rass, Stefan and Pinzger, Martin}, journal={arXiv preprint arXiv:2510.24317}, year={2025} }
## شكر وتقدير
تم تطوير CAI في البداية بواسطة [Alias Robotics](https://aliasrobotics.com) وتم تمويله مشاركةً من مشروع RIS (GA 101161136) التابع لمسرع EIC الأوروبي - دعوة HORIZON-EIC-2023-ACCELERATOR-01. المبادئ العاملية الأصلية مستوحاة من مكتبة [`swarm`](https://github.com/openai/swarm) الخاصة بـ OpenAI وتم ترجمتها إلى نماذج أولية أحدث. يستخدم هذا المشروع أيضًا مكونات بناء مفتوحة المصدر أخرى ذات صلة بما في ذلك [`LiteLLM`](https://github.com/BerriAI/litellm) و [`phoenix`](https://github.com/Arize-ai/phoenix).
### التعاونات الأكاديمية
يستفيد CAI من التعاونات البحثية المستمرة مع المؤسسات الأكاديمية. يجب على الباحثين المهتمين بالمشاريع التعاونية أو الوصول إلى مجموعات البيانات أو التراخيص الأكاديمية الاتصال بـ [email protected]. نوفر دعمًا خاصًا لـ:
- مشاريع بحث الدكتوراه
- دراسات المقارنة المعيارية الأكاديمية
- مبادرات التعليم الأمني
- المساهمات مفتوحة المصدر من المختبرات البحثية
[^1]: يمكن القول إن نمط العاملية المتسلسل (Chain-of-Thought) هو حالة خاصة من نمط العاملية الهرمي.
[^2]: Kamhoua, C. A., Leslie, N. O., & Weisman, M. J. (2018). النمذجة النظرية للألعاب للتهديدات المستمرة المتقدمة في إنترنت الأشياء. Journal of Cyber Security and Information Systems.
[^3]: Yao, S., Zhao, J., Yu, D., Du, N., Shafran, I., Narasimhan, K., & Cao, Y. (2023, January). رياكت: تآزر التفكير والتصرف في نماذج اللغة. In International Conference on Learning Representations (ICLR).
[^4]: Deng, G., Liu, Y., Mayoral-Vilches, V., Liu, P., Li, Y., Xu, Y., ... & Rass, S. (2024). {PentestGPT}: تقييم وتسخير نماذج اللغة الكبيرة لاختبار الاختراق الآلي. In 33rd USENIX Security Symposium (USENIX Security 24) (pp. 847-864).
الروبوتاتOT - CAI وalias1 على: Dragos OT CTF 2025 |
|---|
IT (مكافآت الثغرات) - CAI على: منصة HackerOne | OT - CAI وalias0 على: مضخات الحرارة Ecoforest |
|---|
الروبوتات - CAI وalias0 على: الروبوتات الصناعية المتنقلة (MiR) | IT (الويب) - CAI وalias0 على: التجارة الإلكترونية Mercado Libre |
|---|
OTIT (الويب) - CAI وalias0 على: أكاديمية PortSwigger لأمن الويب |
|---|
إضفاء الطابع الديمقراطي على أبحاث الثغرات المدعومة بالذكاء الاصطناعي: يتيح CAI لكل من الخبراء غير المتخصصين في مجال الأمن والباحثين ذوي الخبرة إجراء اكتشاف أكثر كفاءة للثغرات، مما يوسع مجتمع أبحاث الأمن مع تمكين المؤسسات الصغيرة والمتوسطة من إجراء تقييمات أمنية مستقلة
تقييم منهجي لنماذج اللغات الكبيرة عبر كل من البنيات المملوكة ومفتوحة الأوزان، مما يكشف عن فجوات كبيرة بين قدرات البائعين المبلغ عنها ومقاييس الأداء التجريبية في الأمن السيبراني
مبادرات بحثية تعاونية مع مؤسسات أكاديمية دولية تركز على تطوير مناهج تعليم الأمن السيبراني ومنهجيات التدريب
المساهمة في إطار دفاع شامل ضد حقن التعليمات في وكلاء الأمن بالذكاء الاصطناعي: تطوير والتحقق التجريبي من نظام دفاع متعدد الطبقات يعالج مشكلات حقن التعليمات المحددة
استكشاف الأمن السيبراني للروبوتات البشرية باستخدام CAI وتحديد ناقلات هجوم جديدة تُظهر كيف أنه (أ) يعمل في نفس الوقت كعقدة مراقبة خفية و(ب) يمكن استخدامه كمنصة عمليات سيبرانية نشطة
| CAI, An Open, Bug Bounty-Ready Cybersecurity AI | The Dangerous Gap Between Automation and Autonomy | CAI Fluency, A Framework for Cybersecurity AI Fluency | Hacking the AI Hackers via Prompt Injection |
|---|
| Humanoid Robots as Attack Vectors | The Cybersecurity of a Humanoid Robot | Evaluating Agentic Cybersecurity in Attack/Defense CTFs | CAIBench: A Meta-Benchmark for Evaluating Cybersecurity AI Agents |
|---|
GPT-4oGPT-4.5 PreviewDeepSeek V3, DeepSeek R1Qwen2.5 72B, Qwen2.5 14B, وغيرها| الوصف | الإنجليزية | الإسبانية |
|---|
| الحلقة 0: ما هو CAI؟ | شرح الذكاء الاصطناعي للأمن السيبراني (CAI) | ![]() | ![]() |
الحلقة 1: إطار عمل CAI | الرؤية والأخلاقيات - استكشف الدافع الأساسي وراء CAI وتعمق في المبادئ الأخلاقية الحاسمة التي توجه تطويره. افهم الدافع وراء CAI وكيف يمكنك المساهمة بنشاط في مستقبل الأمن السيبراني وإطار عمل CAI. | ![]() | |
| الحلقة 2: من الصفر إلى بطل إلكتروني | اقتحام مجال الأمن السيبراني باستخدام الذكاء الاصطناعي - دليل شامل للمبتدئين تمامًا ليصبحوا ممارسين للأمن السيبراني باستخدام CAI وأدوات الذكاء الاصطناعي. تعلم كيفية الاستفادة من الذكاء الاصطناعي لتسريع رحلة تعلم الأمن السيبراني، من فهم مفاهيم الأمان الأساسية إلى إجراء تقييمات أمنية واقعية، دون الحاجة إلى خبرة سابقة في الأمن السيبراني. | ![]() | |
| الحلقة 3: برنامج تعليمي للقرصنة بالأجواء | "أول اختراق لي" - دليل القرصنة بالأجواء للمبتدئين. نوضح اختراقًا أمنيًا بسيطًا للويب باستخدام وكيل افتراضي ونظهر كيفية الاستفادة من الأدوات وتفسير مخرجات CAI بمساعدة API لـ CAI بلغة بايثون. ستتعلم أيضًا مقارنة نماذج LLM المختلفة للعثور على الأنسب لمساعيك في الاختراق. | ![]() | ![]() |
| الحلقة 4: مقدمة عن ReAct | تطور نماذج اللغات الكبيرة - تعلم كيف تطورت نماذج اللغات الكبيرة من نماذج لغوية أساسية إلى أنظمة ذكاء اصطناعي متعددة الوكلاء متقدمة. من نماذج LLM الأساسية إلى سلسلة الأفكار ونماذج LLM المنطقية وصولاً إلى ReAct والهندسات المعمارية متعددة الوكلاء. تعرف على المصطلحات الأساسية | ![]() | |
| الحلقة 5: CAI في تحديات CTF | انغمس في مسابقات التقاط العلم (CTF) باستخدام CAI. تعلم كيفية الاستفادة من الوكلاء الذكيين لحل تحديات الأمن السيبراني المختلفة بما في ذلك استغلال الويب والتشفير والهندسة العكسية والطب الشرعي الرقمي. اكتشف كيفية تكوين CAI لسيناريوهات الاختراق التنافسية وتعظيم أدائك في CTF من خلال الأتمتة الذكية. | ![]() | ![]() |
الملحق 1: إصدار CAI 0.5.x | تقديم الإصدار 0.5 من CAI بما في ذلك وظائف متعددة الوكلاء جديدة، وأوامر جديدة مثل /history و /compact و /graph أو /memory ودراسة حالة توضح كيف وجد CAI ثغرة أمنية حرجة في مضخات OT منتشرة حول العالم. | ![]() | ![]() |
الملحق 2: إصدار CAI 0.4.x و alias0 | تقديم الإصدار 0.4 من CAI مع البث المباشر وتحسين دعم MCP. نقدم أيضًا alias0، الذكاء الاصطناعي للأمن السيبراني الذي يركز على الخصوصية، وهو ذكاء نموذج من نماذج يطبق بنية تصميم تراعي الخصوصية ويحقق نتائج متطورة في معايير الأمن السيبراني. | ![]() | |
| الملحق 3: الاجتماع المجتمعي للذكاء الاصطناعي للأمن السيبراني رقم 1 | الاجتماع المجتمعي الأول للذكاء الاصطناعي للأمن السيبراني (CAI)، حيث اجتمع أكثر من 40 مشاركًا من الأوساط الأكاديمية والصناعة والدفاع لمناقشة البنية التحتية مفتوحة المصدر وراء CAI - وهو مشروع مصمم لبناء أنظمة ذكاء اصطناعي وكيلة للأمن السيبراني تكون مفتوحة ونموذجية وجاهزة لمكافأة الثغرات. | ![]() | |
الملحق 4: إثبات المفهوم لـ CAI PRO | عرض توضيحي قصير لإثبات المفهوم لقدرات CAI PRO يعرض الإصدار الاحترافي مع رموز alias1 غير محدودة، وذكاء اصطناعي غير مقيد، وميزات اختبار أمني على مستوى المؤسسات. | ![]() | |
الملحق 5: إثبات المفهوم لـ CAI | عرض توضيحي قصير لإثبات المفهوم لإصدار CAI المجتمعي يعرض القدرات الأساسية للإطار مفتوح المصدر للاختبار الأمني المدعوم بالذكاء الاصطناعي واكتشاف الثغرات. | ![]() | |
الملحق 6: CAI في Jaula del N00B | CAI (الأمن السيبراني بالذكاء الاصطناعي) لويخايت في جاولا ديل نوب - عرض ومناقشة لقدرات إطار عمل CAI في البودكاست/البرنامج الإسباني الشهير للأمن السيبراني. | ![]() |
فئات Pattern الوكيلة | الوصف |
|---|
Swarm (لا مركزي) | العوامل تشارك المهام وتعيين المسؤوليات ذاتيًا بدون منسق مركزي. يحدث التسليم ديناميكيًا. مثال على نمط وكيل نظير لنظير هو CTF Agentic Pattern، الذي يتضمن فريقًا من العوامل يعملون معًا لحل تحدي CTF مع تسليم ديناميكي. |
Hierarchical | عامل على مستوى عليا (مثل "PlannerAgent") يخصص المهام عبر تسليمات منظمة إلى عوامل فرعية متخصصة. بدلاً من ذلك، يتم تشفير بنية العوامل بشكل ثابت في النمط الوكيل مع تسليمات محددة مسبقًا. |
Chain-of-Thought (سير عمل متسلسل) | خط أنابيب منظم حيث العامل A ينتج مخرجات، يسلمها للعامل B لإعادة الاستخدام أو التحسين، وهكذا. التسليمات تتبع تسلسلاً خطيًا. مثال على نمط وكيل سلسلة التفكير هو ReasonerAgent، الذي يتضمن LLM من نوع التفكير يوفر سياقًا للعامل الرئيسي لحل تحدي CTF بتسلسل خطي.[^1] |
Auction-Based (تخصيص تنافسي) | العوامل "تزايد" على المهام بناءً على الأولوية أو القدرة أو التكلفة. عامل القرار يقيم العروض ويسلم المهام للعامل الأكثر ملاءمة. |
Recursive | عامل واحد يحسن مخرجاته باستمرار، ويعامل نفسه كمنفذ ومقيم، مع تسليمات (داخلية أو خارجية) لنفسه. مثال على نمط وكيل تكراري هو CodeAgent (عند استخدامه كعامل تكراري)، الذي يحسن مخرجاته باستمرار عن طريق تنفيذ الكود وتحديث تعليماته الخاصة. |
| Variable | Description |
|---|
| CTF_NAME | Name of the CTF challenge to run (e.g. "picoctf_static_flag") |
| CTF_CHALLENGE | Specific challenge name within the CTF to test |
| CTF_SUBNET | Network subnet for the CTF container |
| CTF_IP | IP address for the CTF container |
| CTF_INSIDE | Whether to conquer the CTF from within container |
| CAI_MODEL | Model to use for agents |
| CAI_DEBUG | Set debug output level (0: Only tool outputs, 1: Verbose debug output, 2: CLI debug output) |
| CAI_BRIEF | Enable/disable brief output mode |
| CAI_MAX_TURNS | Maximum number of turns for agent interactions |
| CAI_TRACING | Enable/disable OpenTelemetry tracing |
| CAI_AGENT_TYPE | Specify the agents to use (boot2root, one_tool...) |
| CAI_STATE | Enable/disable stateful mode |
| CAI_MEMORY | Enable/disable memory mode (episodic, semantic, all) |
| CAI_MEMORY_ONLINE | Enable/disable online memory mode |
| CAI_MEMORY_OFFLINE | Enable/disable offline memory |
| CAI_ENV_CONTEXT | Add dirs and current env to llm context |
| CAI_MEMORY_ONLINE_INTERVAL | Number of turns between online memory updates |
| CAI_PRICE_LIMIT | Price limit for the conversation in dollars |
| CAI_REPORT | Enable/disable reporter mode (ctf, nis2, pentesting) |
| CAI_SUPPORT_MODEL | Model to use for the support agent |
| CAI_SUPPORT_INTERVAL | Number of turns between support agent executions |
| CAI_WORKSPACE | Defines the name of the workspace |
| CAI_WORKSPACE_DIR | Specifies the directory path where the workspace is located |
| CAI_GUARDRAILS | Enable/disable guardrails for prompt injection protection (default: true) |