ترجمة آلية لم تُراجَع بعد. النص الإنجليزي هو المرجع في حال الاختلاف.
الملخص
Functype هي عائلة من مكتبات البرمجة الوظيفية بلغة TypeScript. قبل الإصدار 1.4.4، تقبل أداة MCP المسماة `set_functype_version` في `functype-mcp-server` سلسلة `version` غير مقيدة تستخدم تحقق `z.string()` فقط في `packages/mcp-server/src/index.ts` وتدمجها في `functype@<version>` للأمر `pnpm add`. يمكن لبنى الأسماء المستعار للححزمة مثل `file:` أو `npm:` أو عناوين URLs أو المسارات أن تتسبب في تثبيت حزمة محلية أو عن بُعد عشوائية باعتبارها functype. بعد ذلك مباشرة، تقوم وظيفة `initDocsData(true)` في `packages/mcp-server/src/lib/docs/data.ts` بحل `functype/cli` واستيراد الوحدة المثبتة حديثًا ديناميكيًا، مما يؤدي إلى تنفيذ شيفرة JavaScript يسيطر عليها المهاجم بصلاحيات عملية خادم MCP. يمكن لأي عميل MCP قادر على إرسال طلب `tools/call` يستפי/يستدعي الأداة استغلال الثغرة؛ وتكون الأداة ممكّنة افتراضيًا دون مصادقة في وضع `stdio`. ويمكن أيضًا دفع مساعد ذكاء اصطناعي متصل والمعرض لحقن التوجيه غير المباشر إلى استدعائها من مستند ضار أو صفحة ويب. في عمليات النشر غير الافتراضية `TRANSPORT_TYPE=httpStream`، لا يحتاج المهاجم القابل للوصول عبر الشبكة إلى وصول محلي. يمكن للتنفيذ الناجح قراءة أسرار العمليات، أو تعديل الملفات، أو إنهاء الخادم. تم إصلاح هذه المشكلة في الإصدار 1.4.4.
المعالجة
المراجع
- تحذيرhttps://github.com/advisories/GHSA-wcjj-9m6g-2fr2
- مرجعhttps://github.com/jordanburke/functype/security/advisories/GHSA-wcjj-9m6g-2fr2
- مرجعhttps://github.com/jordanburke/functype/commit/c0d58ad9c2a7d15c6117bd3adbbd75de37317dcf
- مرجعhttps://github.com/jordanburke/functype/releases/tag/v1.4.4
- مرجعhttps://nvd.nist.gov/vuln/detail/CVE-2026-59176