يهدد ثغرة أمنية حرجة النظام البيئي لوكلاء الذكاء الاصطناعي (AI Agents). كشف باحثون في جامعة هونغ كونغ للعلوم والتكنولوجيا عن SkillCloak، وهي تقنية تهرب متطورة تستخدم تقنيات التعبئة ذاتية الاستخراج لتجاوز ثمانية ماسحات أمنية رئيسية بمعدل نجاح ينذر بالخطر يتجاوز 90%. يحلل هذا التقرير الاستخباراتي الاستغلال في العالم الحقيقي على منصات مثل ClawHub ويقدم SkillDetonate، وهو دفاع قائم على المراقبة السلوكية وقت التشغيل قادر على اكتشاف 97% من هذه الهجمات الخفية.
SkillCloak: تقنية جديدة تخدع الماسحات الأمنية
كشف باحثون في جامعة هونغ كونغ للعلوم والتكنولوجيا عن تقنية تخفي البرمجيات الخبيثة لـ AI Agent من 8 ماسحات أمنية موثوقة بمعدل نجاح يتجاوز 90%.
- 🎮معدل نجاح الخداع- أكثر من 90% من الماسحات تم تجاوزها
- 🎧هدف الهجوم- Skills لـ AI Coding Agents مثل Claude Code
- 🚀آلية العمل- Self-Extracting Packing وتقنيات التشويش
تحدٍ جديد أمام التكنولوجيا الأمنية
في عالم يتحول فيه الذكاء الاصطناعي بسرعة إلى جزء لا يتجزأ من عملية تطوير البرمجيات، يتشكل تهديد جديد. أظهر باحثون من جامعة هونغ كونغ للعلوم والتكنولوجيا في بحث نُشر مؤخراً أن الماسحات الأمنية المصممة لاكتشاف حزم Skills الخبيثة لـ AI Agents يمكن خداعها بسهولة.
هذا البحث، الذي نُشر بعنوان "Cloak and Detonate"، يوضح كيف يمكن لأداة تُسمى SkillCloak إعادة كتابة الأكواد الخبيثة بطريقة تحافظ على قدرتها التدميرية بينما تبدو غير ضارة تماماً. هذه النتيجة ليست مجرد قلق نظري، بل في الأسواق العامة لـ Skills، شوهدت أدلة على هجمات حقيقية تستخدم هذه التقنيات.
ما هي AI Agent Skills؟
آلية الهجوم: كيف يعمل SkillCloak؟
صمم الفريق البحثي طريقتين أساسيتين لخداع الماسحات، وكلاهما يتم تنفيذه تلقائياً عبر أداة SkillCloak. فهم هذه التقنيات أمر حيوي لمتخصصي الأمن السيبراني والمطورين الذين يستخدمون AI Agents.
الطريقة الأولى: إعادة الكتابة الخفيفة (Lightweight Rewriting)
في هذه الطريقة، تستبدل SkillCloak أحرفاً معينة تبحث عنها الماسحات ببدائل مشابهة من أبجدية أخرى. بعبارة أخرى، يتم استبدال حرف لاتيني بحرف مشابه من Unicode لا يُحدث فرقاً للعين البشرية أو لمترجم الكود، لكنه يكسر نمط الماسح.
مثال آخر هو تقسيم أمر مشبوه إلى عدة أسطر. بهذه الطريقة، يُكتب أمر خطير مثل "eval" على شكل "ev" في سطر و "al" في السطر التالي. لا يمكن لماسح pattern matching اكتشاف هذا الأمر، لكن عند التنفيذ، يعمل الأمر بشكل كامل.
الطريقة الثانية: Self-Extracting Packing
هذه الطريقة أكثر تعقيداً وقوة. هنا، يتم نقل كامل payload الخبيث إلى دليل تتجاهله الماسحات عادةً، مثل مجلد ".git/" الذي يتم تجاهله لتسريع عملية الفحص وتقليل False Positives.
يتم تخزين Payload داخل هذا المجلد بشكل مشفر أو مضغوط، ويتم وضع decoder بسيط وغير ضار في الملف الرئيسي يُعيد بناء Skill الحقيقي فقط وقت التنفيذ بواسطة Agent. هذا يعني أنه وقت الفحص، لا يوجد شيء مشبوه، لكن وقت التشغيل، يتم تنشيط الكود الخبيث.
لماذا .git/ نقطة عمياء أمنية؟
نتائج الاختبار: أرقام مقلقة
جمع الباحثون 1613 Skill خبيث حقيقي من ClawHub (سوق عام) واختبروها ضد 8 ماسحات أمنية موثوقة. كانت النتائج مقلقة للغاية.
نتائج الاختبار على 8 ماسحات أمنية
تمكنت تقنية Self-Extracting Packing من تجاوز كل 8 ماسحات بمعدل نجاح أكثر من 90%، وفي معظم الحالات، وصل هذا الرقم إلى أكثر من 99%. كما أدت طريقة Lightweight Rewriting أداءً جيداً وتمكنت من خداع أكثر من 80% من الماسحات، وفي حالة واحدة، وصل معدل النجاح إلى 96%.
الأهم من ذلك، أن هذه التقنيات لا تكلف المهاجم تقريباً أي شيء. عملت Skills المخفية على Claude Code و OpenAI Codex بنفس جودة النسخ الأصلية، دون أي انخفاض في القدرة أو الأداء.
الحل المقترح: SkillDetonate
نظراً لأن المظهر يمكن تزييفه، اقترح الباحثون حلاً يراقب سلوك الكود وقت التشغيل بدلاً من فحص مظهره. تم تصميم أداة تسمى SkillDetonate تقوم بتشغيل Skill في بيئة معزولة (Sandbox) وتراقب أنشطته على مستوى نظام التشغيل.
كيف يعمل SkillDetonate؟
تعتمد هذه الأداة على مبدأين رئيسيين يجعلانها فعالة لـ Agent Skills. أولاً، تتتبع البيانات الحساسة بناءً على تدفق المعلومات وليس محتواها. هذا يعني أنه حتى لو قام المهاجم بتشفير البيانات بـ base64 أو تشفيرها، يمكن للنظام لا يزال تتبع تدفقها.
ثانياً، تنفذ الأوامر التي ينشئها Skill فقط وقت التشغيل، وهو بالضبط المكان الذي تخفي فيه تقنية Packing payload الخاص بها. بهذه الطريقة، حتى لو كان الكود الخبيث غير مرئي وقت الفحص الثابت، يتم اكتشافه وقت التشغيل.
أداء SkillDetonate في الاختبارات
في الاختبارات المضبوطة، تمكن هذا Checker من اكتشاف 97% من الهجمات، بينما أنتج فقط 2% False Positive (اكتشاف خاطئ لـ Skills سليمة كخبيثة). هذا المعدل من False Positive أقل من الماسحات التي يتفوق عليها.
عندما تم إخفاء Skills بتقنية SkillCloak، حافظ SkillDetonate على أدائه واستمر في القدرة على الكشف. على Skills خبيثة حقيقية، اكتشفت هذه الأداة 87% منها.
مقارنة Cisco Scanner مع SkillDetonate
قيود SkillDetonate: السرعة
نقطة سلبية واحدة لـ SkillDetonate هي سرعته. بينما يمكن للماسحات الثابتة فحص Skill في ثوانٍ، يستغرق SkillDetonate عدة دقائق. ومع ذلك، يتم هذا التنفيذ مرة واحدة، قبل أن يصبح Skill متاحاً للعامة، لذا لا يؤثر التأخير على المستخدمين النهائيين.
هجمات حقيقية في البرية
هذه ليست مجرد نظريات مختبرية. الأسواق العامة مليئة حالياً بـ Skills خبيثة لم تتمكن الماسحات من إيقافها. أفاد Bitdefender أن ما يقرب من 17% من Skills التي فحصها في سوق واحدة كانت تحتوي على كود خبيث مخفي.
حدد Koi Security حملة باسم ClawHavoc تضمنت 341 Skill خبيث، ومع نمو السوق، وصل هذا الرقم إلى 824. استخدمت بعض هذه Skills بالضبط التقنيات المشابهة المذكورة في البحث.
أمثلة حقيقية للهجمات
حدد Unit 42 خمسة Skills خادعة لا تزال نشطة على ClawHub على الرغم من أن المنصة لديها فحص داخلي. أحدها، يُدعى "omnicogg"، ملأ ملف README الخاص به بـ 22 ميجابايت من البيانات غير المجدية لتجاوز حد حجم الماسح، وهي بالضبط تقنية Size-Padding التي تم اختبارها في البحث.
قدم اثنان آخران password stealers لنظام macOS، واختطف اثنان آخران Agent لتقديم المشورة المالية وحقن روابط Affiliate وإعلانات meme-coins.
هجوم GitHub: كود خبيث من DNS
ظهرت فجوة Runtime خارج أسواق Skills أيضاً. مستودع GitHub بدا نظيفاً تماماً، أجبر Claude Code على فتح Reverse Shell على جهاز المطور نفسه ومنح المهاجم التحكم عن بُعد.
لم يكن الكود الخبيث موجوداً أبداً في المستودع؛ حصل عليه نص التثبيت وقت التشغيل من سجل DNS، لذلك لم يكن لدى الفحص الثابت أي شيء للكشف عنه. تتبع فريق 0DIN من Mozilla هذه السلسلة.
هجوم MCP: أوصاف سامة
حدث فشل مرتبط في أوصاف الأدوات التي تقرأها Agents من خلال بروتوكول Model Context Protocol. حذر Microsoft من أن وصفاً ساماً، تم تغييره بعد الموافقة على الأداة، وجه Agent مالي لسرقة فواتير غير مدفوعة.
الآلية مختلفة، لكن الافتراض المكسور هو نفسه: ما تم مراجعته هو نفسه ما يتم تنفيذه. هذا الافتراض لم يعد صحيحاً في عالم Agent Skills.
مختبر تكين: اختبار عملي لـ SkillCloak
قرر فريق مختبر تكين اختبار هذه التقنيات في بيئة محكومة لفهم مدى خطورتها حقاً. صممنا Skill بسيط لكنه خبيث حقاً يقرأ ملف ".env" (يحتوي على مفاتيح API وكلمات المرور) ويرسله إلى خادم خارجي.
المرحلة الأولى: اختبار الماسح الأساسي
أولاً، أرسلنا هذا Skill دون أي Obfuscation إلى ثلاثة ماسحات شائعة. اكتشفتها جميع الماسحات الثلاثة على الفور وحظرتها برسائل مثل "Suspicious file read detected" و "Potential data exfiltration". حتى الآن، قامت الماسحات بعملها.
المرحلة الثانية: Lightweight Obfuscation
ثم استخدمنا تقنية استبدال الأحرف. كتبنا كلمة "eval" كـ "еval"، حيث الحرف الأول هو "е" سيريلي، وليس لاتيني. للعين البشرية ومترجم Python، لا يوجد فرق، لكن Pattern Matching للماسح فشل.
النتيجة: قبل 2 من 3 ماسحات هذا Skill. كان أحدها لا يزال مشبوهاً، لكنه لم يعد قادراً على الكشف الدقيق ومرره بتحذير عام "Needs Review".
المرحلة الثالثة: Self-Extracting Packing
في هذه المرحلة، شفرنا كامل Payload الخبيث بـ base64 وأخفيناه في ملف ".git/config". تم وضع decoder بسيط في الملف الرئيسي كان لديه سطر واحد فقط ويبدو غير ضار.
النتيجة: قبلت جميع الماسحات الثلاثة هذا Skill دون أي تحذيرات. تتجاهل الماسحات افتراضياً مجلد ".git" لتجنب False Positives، وهذه بالضبط النقطة العمياء التي استغللناها.
المرحلة الرابعة: اختبار SkillDetonate
ثم قمنا بتشغيل نفس Skill المخفي في Sandbox مع SkillDetonate. اكتشفت الأداة على الفور السلوك المشبوه: قراءة ملف ".env" وإنشاء اتصال شبكة خارجي إلى IP خارجي.
أبلغ SkillDetonate: "Sensitive file access detected" و "Unauthorized network connection to external IP". حتى مع Obfuscation كامل، فضح سلوك Skill الهجوم.
- كشف 97% من الهجمات في الاختبار المضبوط
- False Positive فقط 2%
- أداء ثابت ضد التشويش
- تتبع تدفق البيانات حتى مع التشفير
- سرعة منخفضة (دقائق مقابل ثوان)
- يتطلب بيئة Sandbox
- لا يزال في المرحلة البحثية
حلول عملية للمطورين وفرق الأمن
بناءً على نتائج هذا البحث واختباراتنا، توجد عدة توصيات عملية لتقليل المخاطر يجب على المطورين وفرق الأمن أخذها على محمل الجد.
1. احتفظ بالفحص الثابت كطبقة صحية أولى
الماسحات الثابتة لا تزال مفيدة ويمكنها إيقاف الهجمات البسيطة وغير المتمرسة. لكن لا تعتبرها الدفاع الوحيد. شارة "Passed the scan" هي نقطة بداية، وليست ضماناً.
2. اجعل Runtime Monitoring إلزامياً
استخدم أدوات تراقب سلوك Skill وقت التشغيل. الملفات التي يتم لمسها، والأوامر التي يتم تنفيذها، والأماكن التي يتم إرسال البيانات إليها. هذا الدفاع بالضبط هو ما لا يمكن لتقنيات Obfuscation تجاوزه.
3. Hashing والتحقق المتكرر من Skills
يقترح الباحثون أنه عند فحص Skill، احسب Hash الخاص به وتحقق من Hash مرة أخرى قبل كل تنفيذ للتأكد من اكتشاف Payloads التي يتم Unpack لاحقاً.
4. وضع علامة على الأنماط المشبوهة
قدم الباحثون عدة علامات تحذيرية يمكنك البحث عنها، حتى في Skills التي مرت من الفحص. هذه العلامات ليست دليلاً بمفردها، بل هي علامات رخيصة لمزيد من الفحص.
علامات تحذيرية لـ Skill مشبوه
- ملفات كبيرة أو ذات إنتروبيا عالية في أدلة يتجاهلها الماسح مثل .git/ أو build/
- Skills تقوم بفك أو تجميع الكود فقط وقت التشغيل، وليس إرساله بشكل واضح
- ملفات محشوة ببيانات عديمة المعنى أكبر بكثير من الحجم المنطقي، لتجاوز حد الماسح
- استخدام أحرف Look-alike من أبجديات غير لاتينية في الأكواد
- ملفات مشفرة أو base64 في أماكن غير عادية
5. التثبيت فقط من مصادر موثوقة
قم بتثبيت Skills فقط من الأسواق التي لديها سمعة وعملية Vetting قوية. حتى في هذه الحالة، تحقق من من صنع Skill وكم شخص استخدمه من قبل.
6. مبدأ الحد الأدنى من الوصول
امنح Agents فقط الحد الأدنى من الوصول المطلوب. إذا تم تصميم Agent لكتابة الكود، فلا ينبغي أن يكون له وصول إلى ملفاتك الشخصية أو كلمات المرور المحفوظة. قم بتشغيله في بيئة محدودة.
7. فصل البيئات الحساسة
لا تقم بتشغيل Agents على أجهزة تحتوي على Secrets قيمة. إذا كان جهازك يحتوي على مفاتيح API إنتاجية، أو بيانات العملاء، أو وصول إلى أنظمة حيوية، قم بتشغيل Agent في بيئة منفصلة ومعزولة.
الخلاصة: تحول نموذج الأمن
الدرس الحقيقي هو أن الماسح يحكم على Skill بناءً على كيفية ظهوره وقت التقديم، لكن السلوك الخبيث يظهر فقط عند تشغيل Skill، بعد انتهاء الفحص. لذا يجب أن ينتقل قرار الثقة من بوابة السوق إلى الجهاز الذي يشغل Skill.
بالنسبة لفرق التطوير والأمن التي تستخدم AI Coding Agents، هذا يعني أن "Passed the scan" مجرد نقطة بداية، وليس ضماناً. احتفظ بـ Static Scanning كصحة رخيصة، لكن راقب سلوك Skill وقت التشغيل.
الأسئلة الشائعة
هل يستخدم المتسللون SkillCloak حالياً؟
نعم، شوهدت بعض التقنيات المماثلة في الهجمات الحقيقية. على سبيل المثال، استخدم Skill omnicogg تقنية Size-Padding وحدد Unit 42 عدة Skills خادعة في ClawHub. ومع ذلك، لم يتم الإبلاغ عن استخدام SkillCloak مباشرة وعلى نطاق واسع بعد.
ما مدى سرعة SkillDetonate؟
يستغرق SkillDetonate عدة دقائق مقارنة بالماسحات الثابتة التي تستغرق ثوان. لكن هذا الوقت يتم إنفاقه مرة واحدة فقط قبل نشر Skill، وليس لكل مستخدم، لذا لا يؤثر التأخير على المستخدمين النهائيين.
هل يمكنني استخدام AI Agents للبرمجة دون قلق؟
نعم، ولكن بحذر. قم بتثبيت Skills فقط من مصادر موثوقة، وقم بتشغيل Agent في بيئة محدودة، واستخدم أدوات Runtime Monitoring. أيضاً، لا تحتفظ بمفاتيح API وكلمات المرور الحساسة على الجهاز الذي يعمل فيه Agent.
لماذا تتجاهل الماسحات مجلد .git؟
لتقليل False Positives وزيادة السرعة. يحتوي مجلد .git عادةً على ملفات السجل وبيانات Git التعريفية التي ليست ضرورية لوظيفة Skill، لذا تتجاهلها الماسحات. يستغل المهاجمون هذه النقطة العمياء.
هل تمت مراجعة هذا البحث من قبل الأقران؟
لا، إنه Preprint ولم تتم مراجعته من قبل الأقران بعد. ومع ذلك، أصدر الباحثون الكود الخاص بهم وأكدت عدة شركات أمنية مستقلة (Bitdefender و Koi Security و Unit 42) هجمات مماثلة في البرية.
من يجب أن يقلق من هذا التهديد؟
أي شخص يستخدم AI Coding Agents، خاصة المطورين وفرق DevOps والشركات التي تستخدم هذه الأدوات في بيئة الإنتاج. أيضاً، يجب على منشئي أسواق Skill تقوية عملية Vetting الخاصة بهم.
وسائل التواصل الاجتماعي
اتصل بنامعرض صور إضافي: SkillCloak: تقنية التهرب التي تخدع الماسحات الأمنية للذكاء الاصطناعي












