MCP TypeScript SDK: Server-Bearer-Authentifizierung akzeptiert für andere Dienste ausgestellte Token
Zusammenfassung
In betroffenen Versionen des MCP TypeScript SDK bot die serverseitige Bearer-Authentifizierung keine Möglichkeit zu prüfen, ob ein Token für den jeweiligen Server ausgestellt wurde (Audience-Validierung). Wenn ein Autorisierungsserver Token für mehrere Dienste ausstellt, akzeptierte der MCP-Server auch gültige Token, die eigentlich für einen anderen Dienst bestimmt waren.
Betroffene Konfigurationen
Ein System ist betroffen, wenn:
- Der HTTP-Server
requireBearerAuth()oderverifyBearerToken()nutzt, - Der Autorisierungsserver auch Token für andere Dienste ausstellt und
- Die
verifyAccessToken()die Zielgruppe des Tokens (aud) nicht eigenständig überprüft.
Betroffene Versionen:
@modelcontextprotocol/sdk1.6.0 bis 1.31.0@modelcontextprotocol/server2.0.0 bis 2.2.0@modelcontextprotocol/express2.0.0 bis 2.0.1@modelcontextprotocol/server-legacy2.0.0 bis 2.3.0
Was zu tun ist
Aktualisieren Sie auf:
- 1.x:
@modelcontextprotocol/sdk1.32.0 oder höher - 2.x:
@modelcontextprotocol/server2.3.0 oder höher, zusammen mit@modelcontextprotocol/express2.0.2 oder höher, falls verwendet @modelcontextprotocol/server-legacy2.3.1 oder höher
Ein Upgrade allein behebt das Problem nicht. Die gepatchten Versionen fügen die Einstellung expectedResource hinzu, die standardmäßig deaktiviert ist. Um die Überprüfung zu aktivieren, müssen beide folgenden Anpassungen vorgenommen werden:
- Übergeben Sie die Zielgruppe (Audience), die Ihr Autorisierungsserver in Token für Ihren Server einfügt:
requireBearerAuth({ verifier, expectedResource: new URL('https://mcp.example.com/mcp') }). - Geben Sie die Zielgruppe des Tokens aus
verifyAccessToken()alsAuthInfo.resourcezurück, ebenfalls alsURL.
Ein Token für einen anderen Dienst erhält daraufhin 401. Wird nur die erste Änderung vorgenommen, wird jede Anfrage mit 401 beantwortet.
Workaround:
Falls ein Upgrade noch nicht möglich ist, weisen Sie jedes Token ab, dessen aud Ihren Server nicht innerhalb von verifyAccessToken() enthält. Dadurch wird das Problem in allen Versionen behoben.
Betroffene Software
Klicken Sie auf eine Technologie, um alle zugehörigen Schwachstellen anzuzeigen.
| Plattform | Paket | Anfällige Versionen | Behoben in |
|---|---|---|---|
| npm-Paket | @modelcontextprotocol/express | >= 2.0.0, < 2.0.2 | 2.0.2 |
| npm-Paket | @modelcontextprotocol/sdk | >= 1.6.0, < 1.32.0 | 1.32.0 |
| npm-Paket | @modelcontextprotocol/server | >= 2.0.0, < 2.3.0 | 2.3.0 |
| npm-Paket | @modelcontextprotocol/server-legacy | >= 2.0.0, < 2.3.1 | 2.3.1 |
Verweise
- https://github.com/modelcontextprotocol/typescript-sdk/security/advisories/GHSA-rvq5-wwqv-78pq
- https://github.com/modelcontextprotocol/typescript-sdk/commit/40f8f4e229d963cd7fd2890bda2aeebe7005299a
- https://github.com/modelcontextprotocol/typescript-sdk/commit/5a0724d14cf34a27a3b070224d2996cdd611df9f
- https://github.com/modelcontextprotocol/typescript-sdk/commit/5a1867390b91b8836f49af76c45427279f513325
- https://github.com/modelcontextprotocol/typescript-sdk
- CVSS-Vektor
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N- Schwäche (CWE)
CWE-863- Plattform
- npm
- Paket
@modelcontextprotocol/express, @modelcontextprotocol/sdk, @modelcontextprotocol/server- Veröffentlicht
- 20.10.2026
- Aktualisiert
- 20.10.2026 23:18
Quellen und Lizenzen · Von DockRay bearbeitet oder übersetzt; Rechte und Lizenzen der Quellen bleiben erhalten.
OSV / GitHub Advisory Database - GHSA-rvq5-wwqv-78pq - CC BY 4.0
Schwachstellenhistorie: @modelcontextprotocol/sdk
Alle veröffentlichten Schwachstellen dieses Pakets (npm-Paket), neueste zuerst. Zeigt, ob es ein einmaliger Ausrutscher ist oder ein Paket, das man im Auge behalten muss.
- Einträge insgesamt
- 8
- Erste → letzte
- 12.2025 10.2026
- Ohne Fix
- 0
- In Angriffen ausgenutzt
- 0
Verteilung nach Schweregrad
- Hoch 6
- Mittel 2
Veröffentlichungen pro Jahr
- 2025: 1
- 2026: 7
-
MCP TypeScript SDK: Server-Bearer-Authentifizierung akzeptiert für andere Dienste ausgestellte Token dieser Eintrag
Erkennen Sie Schwachstellen in Ihrer Anwendung
Mit der DockRay-Integration und aktivierter Softwareinventarisierung prüft DockRay gemeldete Komponentenversionen auf bekannte Schwachstellen und benachrichtigt Sie über bestätigte Treffer. Die Abdeckung hängt von der unterstützten Technologie und den verfügbaren Meldungen ab.