Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
mcp-server-attestation — تعزيز سلسلة التوريد من الطبقة الثانية لخوادم MCP — بيانات الأداة الموقعة بـ Ed25519، إثبات الاستدعاء في وقت التشغيل، منقي الوسائط برفض افتراضي. يدافع ضد تسميم السوق + CVE-2025-69256 + CVE-2025-61591. | Kitploit
أدوات/GitHubGitHub/studiomeyer-io/mcp-server-attestation
التحليل الثابتتحليل الثغرات الأمنيةتحليل الكودالتشفيرالقيادة والسيطرةأمن سلسلة التوريد
GitHubstudiomeyer-io/mcp-server-attestation

mcp-server-attestation

تعزيز سلسلة التوريد من الطبقة الثانية لخوادم MCP — بيانات الأداة الموقعة بـ Ed25519، إثبات الاستدعاء في وقت التشغيل، منقي الوسائط برفض افتراضي. يدافع ضد تسميم السوق + CVE-2025-69256 + CVE-2025-61591.

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
عرض المستودع
41منذ 7 أياملم تتم المراجعة بعد
مشاركة
<!-- studiomeyer-mcp-stack-banner:start -->
> **جزء من [مجموعة أدوات StudioMeyer MCP](https://studiomeyer.io)** — بُنِي في مايوركا 🌴 · ⭐ إذا استخدمته
<!-- studiomeyer-mcp-stack-banner:end -->

# mcp-server-attestation


<!-- badges -->
[![npm version](https://img.shields.io/npm/v/mcp-server-attestation?style=flat-square&color=cb3837&logo=npm&label=npm)](https://www.npmjs.com/package/mcp-server-attestation)
[![npm downloads](https://img.shields.io/npm/dm/mcp-server-attestation?style=flat-square&color=cb3837&logo=npm&label=installs/mo)](https://www.npmjs.com/package/mcp-server-attestation)
![License](https://img.shields.io/github/license/studiomeyer-io/mcp-server-attestation?style=flat-square&color=22c55e&label=license)
![Last commit](https://img.shields.io/github/last-commit/studiomeyer-io/mcp-server-attestation?style=flat-square&color=88c0d0&label=updated)
![GitHub stars](https://img.shields.io/github/stars/studiomeyer-io/mcp-server-attestation?style=flat-square&color=ffd700&logo=github&label=stars)
<!-- /badges -->تقوية سلسلة التوريد من المستوى الثاني لخوادم بروتوكول سياق النموذج (MCP). بيانات أدوات موقعة بـ Ed25519، توثيق وقت التشغيل للـ spawn، مصفف وسائط رفض افتراضي.

رد مباشر على:
- **تسمم سوق OX Security، أبريل 2026** — 9 من أصل 11 سجلًا لـ MCP قبلوا خوادم ضارة. موقف Anthropic المنشور: "سلوك متوقع".
- **CVE-2025-69256** — تنفيذ أوامر عن بعد في Serverless Framework MCP عبر حقن أوامر `child_process.exec()`.
- **CVE-2025-61591** — تنفيذ أوامر عن بعد في Cursor MCP عبر خادم ضار مثبت عبر OAuth مع اختطاف spawn.

توفر هذه الحزمة ما اختارت Anthropic ألا توفره: التحقق المشفر من أي الأدوات يُسمح للخادم بعرضها وأي استدعاءات spawn يُسمح له بفعلها. إنها تبعية جاهزة للاستخدام (drop-in)، وليست بديلًا لوقت التشغيل.

## ملاحظة منا

لقد بنينا أدوات وأنظمة لأنفسنا خلال العامين الماضيين. حقيقة أن هذا المستودع صغير وله نجوم قليلة ليست لأنه جديد. بل لأننا قررنا للتو مشاركة ما بنيناه. إنها ليست تجربة جديدة، إنها قصة طويلة مع إيداع حديث.

نحن نحب بناء الأشياء ومشاركتها. لا نحب تكتيكات وسائل التواصل الاجتماعي، أو حيل النمو، أو مطاردة النجوم والمتابعين. لذا هذا المستودع صغير. الكود حقيقي، يُستخدم، والأسئلة تُجاب. احكم بنفسك.

إذا ساعدك، فإن المشاركة والاختبار والتعليقات تساعدنا. إذا كان يمكن أن يكون أفضل، فالتقرير (issue) أكثر فائدة. إذا بنيت شيئًا به، أخبرنا على [email protected]. ذلك يسعد يومنا حقًا.

من استوديو صغير في بالما دي مايوركا.

## الحزم (npm workspaces)

| الحزمة | الغرض |
| --- | --- |
| `mcp-server-attestation` (`packages/lib`) | المكتبة: التوقيع/التحقق بـ Ed25519، مخطط البيان (manifest schema)، المصفف، مصدق spawn، مخزن الثقة TOFU. |
| `mcp-attest-cli` (`packages/cli`) | واجهة الأوامر `mcp-attest`: `keygen`، `sign`، `verify`، `inspect`، `fingerprint`، `check-pin`. |
| `mcp-attest-demo` (`packages/demo-server`) | خادم MCP مرجعي (stdio، مواصفات 2025-06-18) يعرض 5 أدوات توضح المكتبة. |

## التثبيت

```bash
npm install mcp-server-attestation
# CLI:
npm install -g mcp-attest-cli
# Reference MCP server:
npx mcp-attest-demo
```

يتطلب Node 20+. لا تبعيات تشفير خارجية — يستخدم أوليات `node:crypto` Ed25519.

## بداية سريعة بخمسة أسطر

```ts
import { verifyManifestStrict, attestSpawnStrict, type SignedManifest } from "mcp-server-attestation";
import signed from "./signed/manifest.json" assert { type: "json" };

// 1. At startup: prove the manifest you ship is the manifest you signed.
verifyManifestStrict(signed);

// 2. Before every child_process.spawn:
attestSpawnStrict(signed as SignedManifest, { command, args });
```

هذا هو التكامل بأكمله. استدعاء دالتين، لا SaaS، لا خفيّ.

إذا كنت تفضل إعادة التحقق من التوقيع عند كل spawn (دفاع متعمق ضد بيان غير موثوق أو مستبدل يصل إلى البوابة)، استخدم استدعاء الأمان الواحد بدلاً من ذلك — فهو يتحقق *ثم* يوثق:

```ts
import { attestSpawnVerified, type SignedManifest } from "mcp-server-attestation";
attestSpawnVerified(signed as SignedManifest, { command, args });
```

## الأدوات (الخادم المرجعي `mcp-attest-demo`)

| # | الاسم | readOnlyHint | destructiveHint |
| - | ---- | ------------ | --------------- |
| 1 | `attest_verify_manifest` | true | false |
| 2 | `attest_inspect_spawn` | true | false |
| 3 | `attest_generate_manifest_template` | true | false |
| 4 | `attest_sign_manifest` | false | false |
| 5 | `attest_keygen` | false | false |

التعليقات صادقة: `attest_sign_manifest` و `attest_keygen` يكتبان ملفات على القرص لذا فهما ليسا للقراءة فقط، لكنهما لا يدمران البيانات الموجودة لذا يظل `destructiveHint` false. انظر `docs/THREAT-MODEL.md` لجدول القدرات حسب الأداة.

## واجهة الأوامر

```bash
mcp-attest keygen --out-dir ./keys --name prod
mcp-attest sign --manifest manifest.json --private-key keys/prod.key --out signed.json
mcp-attest verify --signed signed.json --pin                  # TOFU pin
mcp-attest verify --signed signed.json --sigstore             # opt-in Rekor cross-ref
mcp-attest inspect --signed signed.json --command /usr/bin/echo --arg "hello"
mcp-attest fingerprint --public-key keys/prod.pub
mcp-attest check-pin --server my-server --signed signed.json
```

`verify` يخرج برمز 2 عند توقيع سيئ، ورمز 3 عند عدم تطابق الدبوس (pin).

## توافق مواصفات MCP

| إصدار المواصفات | الحالة |
| --- | --- |
| 2024-11-05 | قابل للتحليل في البيان، ليس هدف الخادم المرجعي |
| 2025-03-26 | قابل للتحليل في البيان، ليس هدف الخادم المرجعي |
| 2025-06-18 | الهدف الكامل |

المكتبة مستقلة عن النقل. الخادم المرجعي يعمل بـ stdio فقط.

## نموذج الأمان

- **الثقة عند أول استخدام (Trust-on-First-Use)** هي الافتراضي. في المرة الأولى التي تتحقق فيها من خادم، يتم تثبيت مفتاحه العام في `~/.mcp-attest/trust.json` (تجاوز: `MCP_ATTEST_TRUST_FILE`). عمليات التحقق اللاحقة ترفض أي مفتاح جديد لنفس اسم الخادم مع خطأ `TRUST_PIN_MISMATCH`. هذا يصدّ ناقل التحديث الضار المشابه لـ Cursor.
- **لا توجد قائمة مفاتيح موثوقة مدمجة.** هذه الحزمة لا تعمل كحارس بوابة. إذا كنت تريد ضمانًا أقوى، اختر `--sigstore` للتحقق المتبادل من بصمة المفتاح العام مقابل سجل شفافية Sigstore Rekor.
- **مصفف وسائط رفض افتراضي.** `shellSafeString` يمنع كل الأحرف الخاصة بقذيفة ASCII، NUL، CR، LF، VT، FF، NEL، أحرف العرض الصفري، BOM، تجاوزات RTL/LTR، معزولات Trojan-Source، والمتشابكات اللاتينية كاملة العرض. السلوك المسموح يتطلب أنواع القواعد الصريحة `regex` / `enum` / `prefix` / `literal`.
- **قواعد `regex` آمنة من هجمات ReDoS.** نمط قاعدة `regex` موقع من المؤلف، لكن قيمة الوسيطة يتحكم فيها المهاجم. يكتشف المصفف بشكل ثابت الأنماط المعرضة للتراجع (مثل المعاملات غير المحدودة المتداخلة `(a+)+`) ويرفض تشغيلها، لذا لا يمكن لوسيطة واحدة مصممة بعناية تجميد مسار spawn الساخن. تحمل قواعد `regex` أيضًا حدًا أقصى للإدخال `maxLength` (الافتراضي 4096).
- **قواعد `prefix` آمنة من الاجتياز.** ترفض قواعد `prefix` مكونات المسار `..` افتراضيًا (`denyTraversal: true`، بما في ذلك الشكل المشفر `%2e%2e`)، لذا يتم حظر `/safe/../../etc/passwd` حتى لو استوفى `prefix: "/safe/"`.
- **تحقق ثم توثيق.** تقوم `attestSpawnVerified` بالتحقق من توقيع البيان قبل توثيق spawn في استدعاء واحد آمن — استخدمها بدلاً من `attestSpawnStrict` إلا إذا قمت بقياس زمن التحقق Ed25519 لكل spawn خارج حلقة ساخنة حقًا.
- **JSON المتعارف عليه (Canonical JSON)** هو السطح الموقع. لا يمكن لإعادة التسلسل تغيير البايتات الموقعة.

ما لا تفعله هذه الحزمة (خارج النطاق):
- عزل أو حاويات عملية الخادم.
- تقوية تدفق OAuth (بناء منفصل `mcp-oauth-shield`).
- التحكم في الخروج الشبكي.
- تصحيح الخوادم الحالية تلقائيًا.

## الاختبارات

```bash
npm install
npm run typecheck
npm test
```

تتضمن مجموعة الاختبار مخلّفات إعادة تشغيل CVE (`packages/lib/tests/fixtures/cve-2025-69256-payloads.json`، `cve-2025-61591-payloads.json`). البناء هو فحص تراجعي: يجب حظر كل حمولة.

## التوزيع

- نشر npm عبر GitHub Actions OIDC مع `--provenance`.
- الخادم المرجعي مُقدم إلى mcp.so ودليل FastMCP.
- المكتبة منشورة بشكل منفصل كـ `mcp-server-attestation`.

## حول StudioMeyer

[StudioMeyer](https://studiomeyer.io) هو استوديو AI وتصميم مقره في بالما دي مايوركا، يعمل مع عملاء حول العالم. نبني مواقع ويب مخصصة وبنية تحتية للذكاء الاصطناعي للشركات الصغيرة والمتوسطة. كومة الإنتاج على Claude Agent SDK و MCP و n8n، مع Sentry و Langfuse و LangGraph للمراقبة وطبقة حماية داخلية.

## الترخيص

MIT، حقوق النشر 2026 Matthias Meyer (StudioMeyer). انظر `LICENSE`.
تنزيل الأداة