
SecureAI-Scan v0.3.1
SecureAI-Scan هي أداة سطر أوامر تفحص قواعد كود TypeScript وJavaScript بحثًا عن مشكلات أمنية خاصة بالتطبيقات المدعومة بالذكاء الاصطناعي — حقن الأوامر، إساءة استخدام أدوات MCP، تسميم بيانات RAG، انتهاكات الثقة في الوكلاء، وغيرها.
SecureAI-Scan
أداة CLI دون اتصال تفحص TypeScript وJavaScript وPython بحثًا عن مخاطر LLM وMCP وAgent Skill وRAG — أدلة تدفق بيانات محلولة عبر الاستيراد، صفر نتائج إيجابية خاطئة افتراضية، مرتبطة بـ OWASP LLM/ASI/MCP Top 10.
معظم الماسحات الضوئية في هذا المجال تطابق كلمة مفتاحية وتعتبرها نتيجة. يتتبع SecureAI-Scan المسار الفعلي المصدر ← التدفق ← نقطة الاستهلاك عبر كود حقيقي محلول بالاستيراد — والفحص الافتراضي يُظهر لك فقط ما يمكنه إثباته. لا حساب، لا رفع سحابي، لا شيء يغادر جهازك.
يغطي OWASP Top 10 لتطبيقات LLM 2026 الرسمي، وTop 10 للتطبيقات الوكيلة (2026)، وMCP Top 10 منذ أسبوع الإطلاق.
ابدأ خلال 30 ثانية```bash
npx --yes [email protected] scan .
لا حاجة لحساب، أو رفع سحابي، أو مترجم بايثون، أو إعدادات مطلوبة. يتم اكتشاف حزم TypeScript وJavaScript وPython وإعدادات MCP وحزم Agent Skill تلقائيًا.
**نسخة مرشحة للإصدار `0.9.0` تم قياسها:** 136/136 اختبارًا · تغطية بيانات بنسبة 88.08% · 12,676 ملفًا عبر 9 مستودعات عامة · 0 بصمة جديدة من الطبقة الافتراضية مقابل خط الأساس المراجع. [الأدلة](https://github.com/akanthed/secureai-scan/blob/main/docs/benchmarks/v0.9.0.json) · [المنهجية والقيود](https://github.com/akanthed/secureai-scan/blob/main/docs/ReleaseAssurance.md)```
▌ HIGH AI001 Prompt injection via user input
PROVEN LLM01:2026 Prompt Injection
source src/chat.ts:8 request data `req.body.input`
flow src/chat.ts:13 passed as `systemPrompt`
sink src/chat.ts:10 openai.chat.completions.create — system role (OpenAI)
fix Keep system prompts static; pass user input as a user-role message.
هل هذا مناسب لك؟ تم تصميم SecureAI-Scan بشكل متعمد ليشمل مخاطر LLM وMCP وRAG/الوكلاء — حقن المطالبات، تسميم الأدوات، التعامل غير الآمن مع المخرجات، التحكم في الوصول إلى مخازن المتجهات، تسميم مهارات الوكلاء. إنه ليس ماسحًا عامًا لـ SAST أو كاشفًا للأسرار، ولا يحاول أن يكون كذلك؛ الحزمة المعروفة بأنها خبيثة دون حمولة على شكل LLM (مثل عنوان تصدير مكتوب بشكل ثابت في استدعاء واجهة برمجة بريد إلكتروني) يتم اكتشافها عبر قائمة الاستشارات دون اتصال (DEP003)، وليس عبر قاعدة نمطية. إذا كانت قاعدة الشيفرة الخاصة بك تتواصل مع LLM أو خادم MCP أو مخزن متجهات أو تشحن مهارات وكيل، فهذه الأداة مصممة لك.
جديد: فحص إعدادات ثابتة لـ LiteLLM Proxy (config.yaml) — أسرار مكتوبة بشكل ثابت، نقاط نهاية مزود بنص عادي، غياب حواجز الحماية. انظر القواعد (LLC001–LLC003).
المحتويات
- لماذا يختلف هذا الماسح
- كيف يقارن
- ابدأ في 30 ثانية
- شاهده يعمل
- الأوامر
- إجراء GitHub
- خطاف pre-commit
- القواعد
- البنية
- خادم MCP (استخدمه من Claude)
- مهارة Claude
- ضمان الثقة والإصدار
- عقد الدقة
- الاختبار والمعايير
- خارطة الطريق
- المساهمة
لماذا يختلف هذا الماسح
- مستويات أدلة، وليس ضجيجًا. كل نتيجة هي
proven(تدفق بيانات مُتتبَّع أو حقيقة إعداد مُحلَّلة)، أوlikely(نقطة نهاية محلولة، قفزة استدلالية واحدة)، أوheuristic. الفحص الافتراضي يعرض فقط proven + likely. الاستدلالات اختيارية عبر--paranoid. - كشف قائم على حل الاستيراد. الاستدعاء لا يُعد "استدعاء LLM" إلا إذا حُلَّ إلى استيراد SDK حقيقي (
openai,@anthropic-ai/sdk,ai,@google/genai, LangChain, Bedrock, …). لن يتم وضع علامة على عميل خرائط Google الخاص بك كـ LLM مرة أخرى. - مقيّد بالدقة، ومُقيَّم بمعايير ضد مستودعات حقيقية. تؤكد مجموعة الاختبارات أن كل حالة اختبار ضعيفة تُطلق إنذارًا و أن كل حالة اختبار آمنة تبقى نظيفة — أي نتيجة إيجابية خاطئة على المجموعة الآمنة تُفشل البناء. علاوة على ذلك، يفحص
npm run regressionمستودعات عامة حقيقية (OpenAI/Anthropic/Vercel AI SDKs، خوادم MCP الرسمية، LlamaIndex) مقابل خط أساس مُلتزم به ومراجع يدويًا ويفشل عند أي نتيجة جديدة من نوعproven/likely. انظر الاختبار والمعايير للأرقام الفعلية قبل/بعد، أو ما وجدناه بفحص مستودعات حقيقية للقصة وراءها — معدل اكتشاف 6/6 على مجموعة مهارات خبيثة مُصنَّفة، ولماذا لا نسمي llama_index "ضعيفة" بسبب نتيجة صادقة على مستوى المكتبة. الكتابة للنقاش ← - SARIF لفحص شيفرة GitHub. يضع
--output report.sarifالنتائج مباشرة على طلبات السحب وفي تبويب الأمان. - AI-BOM. يبني
secureai-scan bom .جردًا مشتقًا من الصياغة لـ SDKs ومعرفات النماذج ومخازن المتجهات وأطر الوكلاء وخوادم MCP، مرتبطًا باحتياجات توثيق OWASP LLM Top 10 / EU AI Act. - فحص إعدادات MCP. يحلل
.mcp.jsonوclaude_desktop_config.jsonو.cursor/mcp.json: خوادمnpx -yغير مثبتة الإصدار، أسرار مضمّنة، نقل HTTP بنص عادي. - كشف تسميم أدوات MCP. يلتقط النمط وراء عملية سحب بساط WhatsApp MCP والباب الخلفي postmark-mcp — يونيكود غير مرئي، عبارات حقن موجهة للوكيل، وتظليل عبر الأدوات في أسماء/أوصاف الأدوات، بشكل ثابت، قبل تشغيل الخادم إطلاقًا.
- كشف حقن الأوامر في MCP. يضع علامة على
command/argsلنقل stdio في MCP المبنية من بيانات الطلب — النمط وراء كشف RCE في MCP STDIO لعام 2026. - كشف تسميم مهارات الوكلاء. نفس فحوصات يونيكود غير المرئي وعبارات الحقن والتظليل المطبقة على ملفات
SKILL.md— مهارات الوكلاء تُحمَّل في السياق بالكامل، لذا فإن المهارة المسمومة هي وصف أداة مسموم باسم آخر. - فحص مهارات مقاوم للتهرب. تُفحص حزم المهارات كـ مجلدات، وليس فقط ملف
SKILL.mdالخاص بها، وكل فحص محتوى يعمل على متغيرات مُزيلة للغموض من النص. يستهدف هذا التقنيات المنشورة — الحروف المتجانسة، التقسيم بأصفار العرض، الحمولات المخزنة في.git/أوbuild/، التصدير المخفي في ملف*.test.ts— التي تجاوزت أكثر من 90% من الماسحات التسعة التي شملها الاستطلاع في Cloak and Detonate (arXiv:2607.02357). انظر مقاومة التهرب. - استشارات حزم معروفة الضعف ومعروفة الخبث، واعية بالإصدار. يفحص كل تبعية وكل حزمة تُطلق عبر MCP مقابل لقطة استشارات مدمجة — قائمة منسقة يدويًا لبابات خلفية موثقة في البرية، بالإضافة إلى استشارات OSV عالية/حرجة لقائمة مراقبة حزم LLM/MCP/RAG، مُعاد توليدها بواسطة
scripts/sync-advisories.js. يعمل دون اتصال في كل فحص، دون الحاجة إلى علامة. لا يُطلق CVE إلا عندما يكون إصدارك المثبت مثبتًا داخل النطاق المتأثر؛ الحزمة الموثقة كخبيثة تُطلق حتى على نطاق غامض، لأن تثبيت باب خلفي لا يمكن التراجع عنه. - محلي أولًا. لا يغادر أي شيء جهازك.
كيف يقارن
SecureAI-Scan ليس بديلًا عن أداة SAST عامة أو ماسح حاويات/IaC — شغّله بجانبها، وليس بدلًا منها. إنه مصمم خصيصًا لسطح هجوم LLM/MCP/RAG ويؤكد على أدلة تدفق البيانات بدلًا من نتائج الكلمات المفتاحية المسطحة.