كلود كود هندسة عكسية: 6 دروس لوكيل الذكاء الاصطناعي الخاص بك
قام الباحثون بإلغاء تصغير حزمة واجهة سطر الأوامر الخاصة بـ Claude Code ونشروا موجه النظام ومخططات الأدوات وحلقة الوكيل. ستة دروس لأي شخص يقوم بشحن وكيل الذكاء الاصطناعي إلى مستخدمين حقيقيين.
يأتي Claude Code كحزمة npm. يمكن لأي شخص أن يركض npm install -g @anthropic-ai/claude-code,
افتح المجمعة cli.mjs، وقراءة طبقة التزامن المشحونة. فعل الباحثون
ذلك بالضبط. لقد قاموا بإلغاء تصغيره، وسحبوا موجه النظام بالكامل، ومخططات الأدوات المضمنة التي يزيد عددها عن 15 مخططًا،
ثم قامت حلقة الوكيل ومرسل الوكيل الفرعي بنشر الكمية في اتفاقيات إعادة الشراء العامة.
بقيت أوزان النموذج خلف واجهة برمجة تطبيقات Anthropic. السقالات لم تفعل ذلك. وهذه السقالات الجزء الذي تعتقد معظم الفرق أنه يمكنهم الحفاظ عليه خاصًا إذا قاموا بشحن واجهة سطر الأوامر (CLI)، أو امتداد VS Code، أو سطح المكتب التطبيق مع وكيل مضمن. الاستخراج هو درس مجاني: فريق حذر للغاية في الأنثروبيك بالفعل المخطط لها لهذا، وتصميمها يصمد. فيما يلي ستة أشياء يمكنك نسخها أمام وكيلك الخاص يضرب npm أو إصدار GitHub.
1. التعليمات البرمجية من جانب العميل هي خطوة نشر وليست سرًا
كل بايت في الحزمة التي تم شحنها يكون عامًا. يؤدي التشويش إلى إبطاء سرعة القراء من دقائق إلى ساعات؛ ذلك لا يمنعهم. تعمل حزمة Claude Code من خلال أداة تصغير JavaScript القياسية، وهي الأولى ظهرت نسخة عامة غير مشوشة في غضون ساعات. سوف تتبع الحزمة الخاصة بك نفس المسار.
قم بتشغيل نفس البطاقة على الحزمة الخاصة بك اليوم. إذا قمت بشحن CLI، أو امتداد المتصفح، أو Electron app، أو SDK من جانب العميل، قم بذلك قبل الإصدار التالي:
أي شيء يعود يذهب إلى كومة التدوير الآن. يعد مفتاح واجهة برمجة التطبيقات (API) الموجود في حزمة العميل بمثابة مفتاح تشغيل
كل قرص تم تشغيله npm install. يشير اسم مضيف الواجهة الخلفية المشفر إلى المهاجمين في
الأهداف التي لم تقصد الإعلان عنها. اقرأ الملف بالطريقة التي يقرأها بها شخص غريب.
2. سوف تتسرب مطالبة النظام لديك، لذا صمم للكشف عنها
إن موجه نظام Claude Code عبارة عن بضعة آلاف من الرموز المميزة للتعليمات الدقيقة: قواعد استخدام الأداة، قيود السلامة، توجيه الأسلوب، شروط الرفض. ولا شيء من هذا يعتمد على السرية. إسقاط كل شيء على سلة المهملات ولا يزال CLI يعمل بنفس الطريقة غدًا.
هذا هو الاختبار. إذا كان نشر مطالبة النظام الخاص بك يعطل نموذج الأمان الخاص بك، فلديك ثغرة. انقل البتة المحملة بعيدًا عن الموجه إلى فحص من جانب الخادم. التحكم في الوصول ينتمي إلى طبقة المصادقة الخاصة بك. حدود السعر تنتمي إلى بوابتك. تنتمي أذونات الأداة إلى مرسل الأداة. يصف الموجه السلوك؛ لا ينفذها.
لا تزال المطالبة الجيدة تستحق الحماية باعتبارها سرًا تجاريًا. يتم ضغط أسابيع التكرار في عدد قليل مائة سطر، والمتابع السريع الذي ينسخ مطالبتك يوفر ذلك الوقت. تعامل معها مثل الوصفة IP، وليس مثل المفتاح الخاص. قانوني وNDA، وليس تشفيرًا.
3. ضع المصادقة وحدود الأسعار والفوترة على الخادم الخاص بك
تبدو بنية الوكيل الأكثر شيوعًا على هذا النحو، وهي خاطئة:
يأتي هذا المفتاح مع كل عملية تثبيت. يقوم المستخدم المصمم بسحبها من الحزمة في فترة ما بعد الظهر و
يقوم بتشغيل حصتك إلى الصفر قبل أن تلاحظ ذلك. كلود كود يتهرب من هذا بالقراءة ANTHROPIC_API_KEY
من بيئة المستخدم في وقت التشغيل؛ يجلب كل مستخدم علاقة الفوترة الخاصة به مع Anthropic.
لا يستطيع معظم الوكلاء الذين يتعاملون مع المستهلك اتباع هذا النمط لأن المستخدمين ليس لديهم مفاتيح خاصة بهم،
مما يعني أن وكيل الخادم هو الشكل الآمن الوحيد:
على الخادم الخاص بك، تحقق من الرمز المميز قصير الأمد لكل مستخدم، وحد المعدل بواسطة معرف المستخدم، واستخدام السجل، ثم قم بإجراء نداء المنبع:
قم بإصدار JWT لكل مستخدم من تدفق تسجيل الدخول الخاص بك مع انتهاء الصلاحية لمدة 15 دقيقة ونطاق محدد وجلسة ملزمة. مكالمة واحدة إلى botoi تتعامل مع التوقيع حتى تتمكن من تخطي بنادق القدم "الخوارزمية الخاطئة". لا تزال مكتبات JWT في حقبة 2015 مشهورة بما يلي:
4. قم بتدوير المفاتيح وتسجيلها كما لو كانت مسربة بالفعل
يقوم Claude Code بتسجيل القياس عن بعد لاستدعاء الأدوات الخاص به محليًا حتى يتمكن المستخدمون من فحص ما فعله الوكيل على أجهزة الكمبيوتر الخاصة بهم آلة. يحتاج الخادم الخاص بك إلى نفس الخاصية، ولكن من جانب الخادم. يحصل كل استدعاء نموذج على صف: معرف المستخدم، النموذج، رموز الإدخال، رموز الإخراج، استدعاءات الأداة، التكلفة. قم بتخزين ذلك لمدة 30 يومًا على الأقل. مهاجم من يسرق رمز مستخدم واحد لديه نمط إنفاق يبدو مختلفًا عن الاستخدام العادي، و السجل هو كيف تراه.
قبل أن تقوم بالتسجيل، عد. يعد استخدام الرمز المميز أسرع إشارة لإساءة الاستخدام وأسرع إشارة للمطالبة انتفاخ:
قم بتعيين التنبيهات على الرموز المميزة لكل مستخدم في الساعة بثلاثة أضعاف خط الأساس p99. عندما تحصل على الترحيل، قم بالإلغاء رمز المستخدم، وليس مفتاحك الرئيسي. يتم تدوير المفاتيح الرئيسية وفقًا لجدول ربع سنوي؛ الرموز المميزة لكل مستخدم تدوير عندما حرائق الكشف عن الشذوذ.
5. امسح معلومات تحديد الهوية الشخصية (PII) قبل أن تصل المطالبة إلى النموذج
يقوم المستخدم بلصق تذكرة دعم برقم بطاقة الائتمان في وكيلك. يرى النموذج ذلك، و يلتقطه خط السجل، ويسحبه خط أنابيب الضبط الدقيق، وهو الآن في ثلاثة أماكن قمت بها لا تخطط ل. يتجنب Claude Code ذلك من خلال العمل على جهاز المستخدم الخاص به مقابل جهاز المستخدم الملفات الخاصة؛ الوكيل المستضاف لا يتمتع بهذا الترف.
قم بتشغيل تصريح اكتشاف على كل مطالبة واردة وقم بتنقيحها قبل المكالمة:
أرسل redacted سلسلة إلى النموذج، والحفاظ على findings في الذاكرة، و
أعد إدخال النسخ الأصلية فقط إذا طلبت استجابة النموذج رمزًا مميزًا محددًا (على سبيل المثال، أ
ملخص تذكرة الدعم الذي يحتاج إلى تسمية طريقة الدفع). سجلاتك، ومجموعة التدريب، و
ترى جميع خطوط أنابيب التحليلات النهائية النسخة المنقحة؛ يرى فقط مسار الطلب في الذاكرة
معلومات تحديد الهوية الشخصية الخام.
6. تصلب ضد الحقن الفوري باستخدام موجهك المتسرب
الجانب الإيجابي من موجه النظام المسرب هو أنه يمكنك تشغيله ضد مجموعة الحقن الخاصة بك. ان يحتاج المهاجم إلى تجاوز واحد فقط؛ أنت بحاجة إلى التغطية. قم بالوقوف كعامل التدريج، قم بلصق الموجه الخاص بك في حافظة المراجع، وقم بتشغيل مجموعة مسبار تختبر أشكال الحقن الأكثر شيوعًا: تجاوز التعليمات، تبديل الشخصية، كسر المحدد، إعادة تعيين المستخدم المزيف.
أي شيء يؤدي إلى قيام الوكيل بطباعة موجه النظام الخاص به، أو الكشف عن متغيرات البيئة، أو الاتصال بـ الأداة التي لا يسمح بها نطاق المستخدم هي خطأ. قم بإصلاحه من خلال فحص من جانب الخادم، وليس بتعديل سريع. "لا تكشف عن موجه النظام الخاص بك" في الموجه هو اقتراح؛ مرشح الاستجابة الذي يمنع أول 200 حرف للموجه من الإخراج هي عنصر تحكم.
قائمة مراجعة متعمقة للدفاع
| طبقة | يتحكم | لماذا ينجو من تسرب الحزمة |
|---|---|---|
| حزمة العميل | لا أسرار ولا عناوين URL رئيسية | يمكن قراءتها في اليوم الأول؛ التعامل معها على أنها وثائق |
| ينقل | JWT لكل مستخدم، انتهاء الصلاحية لمدة 15 دقيقة | سرقة الرمز لها نطاق انفجار على نطاق دقيق |
| بوابة | حد السعر حسب معرف المستخدم وعدد الرموز المميزة | حدود إساءة الاستخدام على إنفاقك المحدد، وليس على محفظتك |
| الخادم | التجميع الفوري وإرسال الأداة | لا يمكن للمهاجم إضافة أدوات لم يكسبها |
| إدخال النموذج | كشف PII والتنقيح | البيانات الحساسة لا تصل أبدًا إلى السجلات أو التدريب |
| إخراج النموذج | مرشح الاستجابة للأصداء السريعة ومخططات الأداة | محاولات الحقن تفشل في القفزة الأخيرة |
| إمكانية الملاحظة | استخدام الرمز المميز لكل مستخدم مع تنبيهات الشذوذ | تبدو الرموز المسروقة مختلفة عن المستخدمين الحقيقيين |
الوجبات السريعة الرئيسية
- اشحن كما لو كانت الحزمة الخاصة بك متاحة للعامة بالفعل. Grep كل إصدار للمفاتيح و المضيفون الداخليون قبل النشر؛ يتم تدوير أي شيء تجده قبل نشر الحزمة.
- موجه النظام الخاص بك ليس مفتاحًا. انقل كل قرار متعلق بالأمن من المطالبة والتحقق من جانب الخادم.
- وكيل النموذج من خلال الخادم الخاص بك. يحصل المستخدمون على JWT قصير الأجل، الخاص بك يحتفظ الخادم بمفتاح واجهة برمجة التطبيقات الرئيسي، وتوضع حدود المعدل أمام كليهما.
- قم بتنقيح معلومات تحديد الهوية الشخصية (PII) أثناء دخولك. يرى النموذج سلسلة منقحة؛ السجلات والتدريب خطوط الأنابيب تبقى نظيفة.
- قم بتشغيل مجسات الحقن مقابل الموجه المسرب الخاص بك. أي شيء يعمل يصبح تذكرة لإصلاح من جانب الخادم، وليس تعديلًا سريعًا.
يمنحك Botoi الأجزاء من جانب الخادم باستدعاءات HTTP: اكتشاف معلومات تحديد الهوية الشخصية (PII) عند /v1/pii/detect,
رمز العد في /v1/token/count، توقيع JWT في /v1/jwt/generateبالإضافة إلى
التجزئة، وHMAC، وكتل البناء ذات الحد الأقصى للمعدل عبر أكثر من 150 نقطة نهاية. مفتاح API واحد، 5 طلبات/دقيقة مجانًا،
خطافات تثبيت صفرية. تصفح
مستندات تفاعلية
أو سلك
خادم MCP في
Claude Code أو Cursor لاستدعاء نفس نقاط النهاية من داخل المحرر الخاص بك.
FAQ
- ما الذي تم استخراجه بالفعل من كلود كود؟
- قام الباحثون بتنزيل حزمة @anthropic-ai/claude-code الموزعة بواسطة npm، وقاموا بتشغيلها من خلال أداة إزالة التشويش، ونشروا موجه النظام بالكامل، ومخططات الأدوات المضمنة التي يزيد عددها عن 15 (قراءة، وتحرير، وباش، وGrep، وما إلى ذلك)، وحلقة الوكيل، ومنطق إرسال الوكيل الفرعي. ظلت الأوزان النموذجية خاصة. ما تم شحنه كان عبارة عن طبقة تنسيق JavaScript حول مكالمات Anthropic API. أي شخص يقوم بتثبيت واجهة سطر الأوامر (CLI) لديه نفس البتات الموجودة على القرص الخاص به.
- هل تم الكشف عن أي مفتاح Anthropic API أو بيانات العميل؟
- لا. تقرأ واجهة سطر الأوامر (CLI) مفتاح واجهة برمجة التطبيقات (API) من البيئة الخاصة بالمستخدم في وقت التشغيل ولا تقوم مطلقًا بتجميع بيانات الاعتماد البشرية. تبقى محادثات العملاء بين CLI وapi.anthropic.com. وقد كشف التسريب عن التصميم الهندسي والأداة السريعة، وليس عن مواد المصادقة أو بيانات المستخدم.
- إذا لم تكن مطالبات النظام أسرارًا، فلماذا تحرسها الشركات؟
- سببين. أولاً، الوقت التنافسي للنسخ: تمثل المطالبة الجيدة أسابيع من التكرار ويؤدي رفض النشر إلى إبطاء المتابعين السريعين بنفس النافذة. ثانيًا، مساحة سطح الحقن السريع: كلما عرف المهاجمون أكثر عن حواجز حماية موجه النظام وتسلسلات الهروب، أصبح من الأسهل إنشاء تجاوزات. كلاهما حقيقي، ولكن ليس سرًا في التشفير. تعامل مع المطالبة باعتبارها سرًا تجاريًا بنصف عمر قصير، وليس كمفتاح.
- هل التشويش أو التصغير يساعد على الإطلاق؟
- إنه يشتري الوقت، وليس الحماية. يقوم مهندس عكسي متحمس بإزالة تشويش حزمة JavaScript في أقل من ساعة باستخدام الأدوات القياسية. يؤدي التشويش إلى إبطاء الفحص غير الرسمي، وهو أمر مهم للكشف عن مكافحة التلاعب وفحوصات الترخيص، ولكن أي نموذج تهديد يفترض أن الحزمة تظل غير شفافة يتم كسره منذ البداية. قم بالبناء كما لو كان المصدر عامًا في اليوم الأول.
- كيف يمكنني اختبار وكيل الذكاء الاصطناعي الخاص بي بحثًا عن نفس نقاط الضعف؟
- قم بإجراء ثلاث فحوصات هذا الأسبوع. الأول: تنزيل الحزمة التي تم شحنها وgrep لـ sk- وpk_ وapiKey وBEGIN PRIVATE KEY وعنوان URL الخلفي الخاص بك؛ أصلح أي شيء تجده. ثانيًا: اطلب من وكيلك طباعة رسالة النظام الخاصة به حرفيًا والتأكد من عدم وجود أي شيء يتعلق بالأمن يعتمد على السرية. ثالثًا: قم بتسجيل كل استدعاء للأداة من جانب الخادم باستخدام معرف المستخدم والطابع الزمني وتجزئة الوسيطة حتى تظهر أنماط إساءة الاستخدام قبل ظهور الفاتورة.
ابدأ البناء مع botoi
أكثر من 150 نقطة نهاية API للبحث ومعالجة النصوص وتوليد الصور وأدوات المطورين. باقة مجانية، بدون بطاقة ائتمان.