HochCVE-2026-104850

    Modelcontextprotocol Typescript-sdk: unzureichende Prüfung der Datenauthentizität (CVE-2026-104850)

    Veröffentlicht Zuletzt geändert Quellen: OSV, CVE.org, Hersteller

    Teilen

    Was ist betroffen, was ist zu tun

    Das offizielle TypeScript SDK für Model Context Protocol-Server und -Clients ist das MCP TypeScript SDK. Ab Version 1.12.0 und bis zu den Versionen 1.31.0 und 2.2.0 erlaubte die OAuth-Client-Unterstützung des SDKs dem MCP-Server, zu entscheiden, welcher Autorisierungsserver die OAuth-Anmeldedaten des Clients erhält.

    Ein Exploit ist öffentlich verfügbar. Die vorliegenden Quellen nennen keine Fix-Version. Prüfen Sie die Herstellerhinweise in den Referenzen unten.

    Betroffen
    • Modelcontextprotocol Typescript-sdk gte 1.12.0, < 1.31.0..*

    Unklar, ob und wie Sie betroffen sind? Frage zu dieser Schwachstelle stellen

    Metriken

    7,5

    Priorität

    XIEM Effective CVSS: höchste verfügbare CVSS-Bewertung aus NVD- und Herstellerangaben.

    Quelle: Hersteller (CNA), CVSS v3

    7,5

    CVSS v3

    Schweregrad Hoch auf der Skala von 0 bis 10.

    Quelle: OSV, CVE.org, Hersteller

    0,2 %

    EPSS-Score

    Niedrig – Modell schätzt < 1 % Ausnutzungs-Wahrscheinlichkeit.

    Quelle: FIRST EPSS, Perzentil 13,3

    Alle Metriken anzeigen
    Schweregrad
    Hoch
    Priorität (0–325)

    Der Priorisierungs-Score ist eine zusammengeführte Kennzahl, die mehrere Einzelsignale zu einer einzigen, handlungsleitenden Rangfolge verdichtet: technische Schwere (CVSS), Ausnutzungswahrscheinlichkeit (EPSS), der Status als bekannt ausgenutzt (KEV) und der Kontext des betroffenen Assets. Ziel ist die Antwort auf die einzig wirklich wichtige Frage im Schwachstellenmanagement: Was zuerst?

    Im Glossar lesen
    68.91 Methodik
    Exploit-Reife

    Ein Exploit ist Code oder eine Technik, die eine konkrete Schwachstelle gezielt ausnutzt, um ein unbeabsichtigtes Verhalten zu erzwingen — etwa Code auszuführen oder Rechte auszuweiten. Er ist das Werkzeug, das aus einer theoretischen Lücke einen praktischen Angriff macht.

    Im Glossar lesen
    PoC (öffentlich gemeldet)
    XIEM Effective CVSS

    XIEM® ist das gestufte Managed-Security-Betriebsmodell von NEOSEC und eine eingetragene Marke der NEOSEC GmbH. Es erweitert klassisches SIEM — die zentrale Sammlung, Normalisierung und Korrelation sicherheitsrelevanter Ereignisse — um Endpunkt-Forensik, Netzwerk-Sichtbarkeit und Täuschungstechnik und führt diese zu drei aufeinander aufbauenden Stufen zusammen: Sentry, Orchestrate und Command.

    Im Glossar lesen
    7,5 Methodik
    CVSS v3

    CVSS ist der weltweit verbreitete, offene Standard zur Bewertung der technischen Schwere einer Schwachstelle auf einer Skala von 0 bis 10. Er beschreibt, wie leicht eine Lücke ausnutzbar ist und welchen Schaden sie anrichten kann — nicht jedoch, wie wahrscheinlich ihre tatsächliche Ausnutzung ist. CVSS und das ergänzende EPSS beantworten bewusst unterschiedliche Fragen.

    Im Glossar lesen
    7,5
    EPSS-Score

    Der EPSS-Score ist der absolute Modell-Output für eine einzelne Schwachstelle: die geschätzte Wahrscheinlichkeit einer realen Ausnutzung in den nächsten 30 Tagen, ausgedrückt als Wert zwischen 0 und 1 (bzw. 0 % bis 100 %). Ein Score von 0,42 bedeutet „das Modell schätzt eine 42-prozentige Chance auf reale Ausnutzung binnen 30 Tagen“.

    Im Glossar lesen
    0,2 %
    Niedrig – Modell schätzt < 1 % Ausnutzungs-Wahrscheinlichkeit.
    EPSS-Perzentil

    Das EPSS-Perzentil ist die relative Einordnung einer Schwachstelle innerhalb aller EPSS-bewerteten CVEs, ausgedrückt als Wert zwischen 0 und 1. Ein Perzentil von 0,90 bedeutet „diese CVE hat einen höheren EPSS-Score als 90 % aller anderen bewerteten CVEs“. Anders als der EPSS-Score ist es keine Wahrscheinlichkeit — sondern eine Positionierung im Ranking.

    Im Glossar lesen
    13,3
    Erhöht – CVE ist relevanter als mindestens 10 % der heute bewerteten CVEs.
    KEV-Status

    Der KEV-Katalog ist eine von der US-Behörde CISA gepflegte Liste von Schwachstellen, für die eine aktive Ausnutzung in der Praxis nachgewiesen ist. Er beantwortet nicht die Frage „wie schwer?“, sondern „wird es bereits angegriffen?“ — und priorisiert damit das Patchen scharf.

    Im Glossar lesen
    —
    Veröffentlicht
    CISA-Bewertung (SSVC)
    Ausnutzung: keine bekannt · automatisierbar · Auswirkung: teilweise
    Quelle: CISA Vulnrichment, Stand 6. Oktober 2026
    CWE

    CWE ist ein Katalog typischer Schwächen-Arten in Software und Hardware — etwa fehlerhafte Eingabevalidierung, unsichere Speicherbehandlung oder mangelhafte Authentisierung. Während eine CVE eine konkrete Schwachstelle in einem konkreten Produkt benennt, beschreibt eine CWE die zugrunde liegende Fehlerklasse.

    Im Glossar lesen
    CWE-345, CWE-522

    Erkennungsregeln

    Für diese Schwachstelle liegt noch keine NEOSEC-Erkennungsregel vor.

    Einordnung nach NIS2 und CRA

    Regelbasierte Einordnung aus Ausnutzungsstatus und Schweregrad. Sie ersetzt keine Prüfung im Einzelfall.

    NIS2

    NIS2 ist die EU-Richtlinie (EU) 2022/2555 zur Erhöhung des Cybersicherheitsniveaus in der Union. Sie weitet Pflichten gegenüber der ersten NIS-Richtlinie deutlich aus: mehr Sektoren, verbindliches Risikomanagement, gestufte Meldepflichten und persönliche Verantwortung der Geschäftsleitung.

    Im Glossar lesen
    Hohe technische Schwere: Bewerten und beheben Sie die Schwachstelle im Schwachstellenmanagement nach Art. 21 Abs. 2 lit. e NIS2 und dokumentieren Sie die Entscheidung.
    CRA

    Der CRA ist die EU-Verordnung (EU) 2024/2847 mit horizontalen Cybersicherheitsanforderungen an „Produkte mit digitalen Elementen“ — von Industriesteuerungen über Software bis zu vernetzten Verbrauchergeräten. Erstmals müssen Hersteller Sicherheit über den gesamten Produktlebenszyklus gewährleisten, Schwachstellen behandeln und Sicherheitsupdates bereitstellen.

    Im Glossar lesen
    Ab dem 11.12.2027 verpflichtet Anhang I Teil II CRA Hersteller betroffener Produkte mit digitalen Elementen, Schwachstellen unverzüglich zu behandeln und Sicherheitsupdates bereitzustellen.
    ISO/IEC 27001

    ISO/IEC 27001 ist der international führende Standard für ein Informationssicherheits-Managementsystem (ISMS). Er beschreibt einen risikobasierten, prozessorientierten Rahmen, um Informationssicherheit systematisch zu planen, umzusetzen, zu überprüfen und zu verbessern.

    Im Glossar lesen
    Maßnahme A.8.8, Management technischer Schwachstellen: Relevanz für Ihre Systeme bewerten, Behebung einplanen und nachweisen.

    Beschreibung

    Das offizielle TypeScript SDK für Model Context Protocol-Server und -Clients ist das MCP TypeScript SDK. Ab Version 1.12.0 und bis zu den Versionen 1.31.0 und 2.2.0 erlaubte die OAuth-Client-Unterstützung des SDKs dem MCP-Server, zu entscheiden, welcher Autorisierungsserver die OAuth-Anmeldedaten des Clients erhält. Die gespeicherten und vorab bereitgestellten Anmeldedaten waren nicht an den Autorisierungsserver gebunden, zu dem sie gehörten. Ein böswilliger oder kompromittierter MCP-Server könnte seinen eigenen Autorisierungsserver in den Metadaten seiner geschützten Ressource angeben. Ohne jegliche Benutzerinteraktion würde der Client den `refresh_token` und `client_secret`, die aus einem früheren Anmelden gespeichert wurden (1.x), oder den konfigurierten `client_secret` oder die signierte Assertion eines gebündelten nicht-interaktiven Anbieters (1.x und 2.x) an diesen Server senden. Betroffen sind nur die Anwendungen, die das SDK als MCP-Client über HTTP mit einem `authProvider`: Ihrem eigenen `OAuthClientProvider`, oder dem gebündelten `ClientCredentialsProvider`, `PrivateKeyJwtProvider`, `StaticPrivateKeyJwtProvider` oder (2.x) `CrossAppAccessProvider` verwenden und möglicherweise eine Verbindung zu einem MCP-Server herstellen, dessen Besitzer nicht vollständig vertraut werden kann, während sie Anmeldedaten für einen legitimen Autorisierungsserver besitzen. `@modelcontextprotocol/sdk` 1.31.0 (1.x) und `@modelcontextprotocol/client` 2.2.0 (2.x) beheben das Problem. Ein Workaround für diejenigen, die nicht aktualisieren können, ist verfügbar. 2.0.0 und 2.1.0 akzeptieren bereits `expectedIssuer`. Bei 1.x ist der einzige Workaround, OAuth-fähige Clients nur mit MCP-Servern zu verbinden, denen vertraut wird.

    Originalquelle nur englisch verfügbar, maschinell ins Deutsche übersetzt.

    Quelle: OSV (Open Source Vulnerabilities), NVD (NIST), cvelistv5, CVE.org (MITRE), GitHub Security Advisories

    Betroffene Produkte

    Betroffen sind die folgenden Versionen. Ältere Stände derselben Reihe sind ebenfalls verwundbar, sofern nicht anders angegeben.

    Betroffene Produkte
    Betroffene VersionenBehoben in
    modelcontextprotocoltypescript-sdk
    • ≥ 1.12.0, < 1.31.0
    • —
    npm@modelcontextprotocol/client
    • 2.0.0
    • —
    npm@modelcontextprotocol/sdk
    • 1.12.0
    • —

    Hersteller und Produkte

    Weakness-Klassen (CWE)

    • CWE-345Insufficient Verification of Data Authenticity

      Class

      The product does not sufficiently verify the origin or authenticity of data, in a way that causes it to accept invalid data.

      Eintrag bei MITRE CWE-345
    • CWE-522Insufficiently Protected Credentials

      Class

      The product transmits or stores authentication credentials, but it uses an insecure method that is susceptible to unauthorized interception and/or retrieval.

      Eintrag bei MITRE CWE-522

    Öffentliche Exploit-Referenzen

    Öffentlich gemeldete Proof-of-Concepts, Exploit-Module und Detection-Templates zu dieser Schwachstelle. NEOSEC verlinkt ausschließlich auf die Originalquellen und stellt keinen Exploit-Code bereit.

    Öffentliche Exploit-Referenzen
    PoC-in-GitHub (nomi-sec)mcp-oauth-discovery-prober (öffnet in neuem Tab)github.comPoC (öffentlich gemeldet)gemeldet, nicht verifiziert

    Quellen & Referenzen

    • github.commodelcontextprotocol/typescript-sdk/security/advisories/GHSA-6q…x_refsource_CONFIRM
    • github.commodelcontextprotocol/typescript-sdk/pull/2887x_refsource_MISC
    • github.commodelcontextprotocol/typescript-sdk/commit/edd12e282620ebf770d6…x_refsource_MISC
    • github.commodelcontextprotocol/typescript-sdk/releases/tag/v2.2.0x_refsource_MISC
    • github.commodelcontextprotocol/typescript-sdkpackage

    Änderungen an der CVE

    Wer diese CVE wann geändert hat: die NVD (Analyse, betroffene Produkte, CVSS), der Herausgeber der CVE (CNA) und ergänzende Stellen wie CISA (ADP).

    1. Neu erfasstGitHub

      9 Einzeländerungen im Original anzeigen
      Einzeländerungen dieses Ereignisses im Original der NVD
      ArtAktionVorherNachher
      Beschreibungergänzt
      —
      MCP TypeScript SDK is the official TypeScript SDK for Model Context Protocol servers and clients. Starting in version 1.12.0 and prior to versions 1.31.0 and 2.2.0, the SDK's OAuth client support let the MCP server a client connected to decide which authorization server received the client's OAuth credentials. Stored and pre-provisioned credentials were not bound to the authorization server they belong to. A malicious or compromised MCP server could name its own authorization server in its protected resource metadata. Without any user interaction, the client would send that server the `refresh_token` and `client_secret` stored from an earlier sign-in (1.x), or the configured `client_secret` or signed assertion of a bundled non-interactive provider (1.x and 2.x). Only those applications that use the SDK as an MCP client over HTTP with an `authProvider`: your own `OAuthClientProvider`, or the bundled `ClientCredentialsProvider`, `PrivateKeyJwtProvider`, `StaticPrivateKeyJwtProvider` or (2.x) `CrossAppAccessProvider` and that may connect to an MCP server the owners does not fully trust while holding credentials for a legitimate authorization server are affected. `@modelcontextprotocol/sdk` 1.31.0 (1.x) and `@modelcontextprotocol/client` 2.2.0 (2.x) patch the issue. A workaround for those who cannot upgrade is available. 2.0.0 and 2.1.0 already accept `expectedIssuer`. On 1.x, the only workaround is to connect OAuth-enabled clients only to MCP servers you trust.
      CVSSergänzt
      —
      AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
      Schwachstellentyp (CWE)ergänzt
      —
      CWE-345
      Schwachstellentyp (CWE)ergänzt
      —
      CWE-522
      Betroffene Versionen (Herausgeber)ergänzt
      —
      New affected value received. <a href="https://github.com/CVEProject/cvelistV5/blob/main/cves/2026/104xxx/CVE-2026-104850.json">CVE-2026-104850</a>
      Referenzergänzt
      —
      https://github.com/modelcontextprotocol/typescript-sdk/commit/edd12e282620ebf770d67316f19cf91d4112a1bd
      Referenzergänzt
      —
      https://github.com/modelcontextprotocol/typescript-sdk/pull/2887
      Referenzergänzt
      —
      https://github.com/modelcontextprotocol/typescript-sdk/releases/tag/v2.2.0
      Referenzergänzt
      —
      https://github.com/modelcontextprotocol/typescript-sdk/security/advisories/GHSA-6qxp-vccf-f47h

      Kennung der Quelle: security-advisories@github.com

    2. Eintrag geändertCISA ADP

      CISA-Einschätzung (SSVC): Ausnutzung: keine bekannt, automatisierbar: ja

      Einzeländerung im Original anzeigen
      Einzeländerungen dieses Ereignisses im Original der NVD
      ArtAktionVorherNachher
      SSVC-Einschätzungergänzt
      —
      {"id":"CVE-2026-104850","role":"CISA Coordinator","options":[{"exploitation":"none"},{"automatable":"yes"},{"technicalImpact":"partial"}],"version":"2.0.3","timestamp":"2026-10-06T16:28:43.638595Z"}

      Kennung der Quelle: 134c704f-9b21-4f2e-91b3-4a467353bcc0

    Badge einbetten

    Zeigen Sie Schweregrad und KEV-Status dieser Schwachstelle auf Ihrer Seite – mit Link hierher. Das Bild wird stündlich aktualisiert.

    Badge-Vorschau für CVE-2026-104850
    <a href="https://intel.neosec.eu/cve/CVE-2026-104850"><img src="https://intel.neosec.eu/badge/cve/CVE-2026-104850.svg" alt="CVE-2026-104850 – NEOSEC Intel" height="20"></a>