Dynatrace-oss Dynatrace-mcp: SQL-Injection (CVE-2026-123810)
Veröffentlicht Zuletzt geändert Quellen: EUVD, CVE.org, OSV
Was ist betroffen, was ist zu tun
Aktualisieren Sie Dynatrace-oss Dynatrace-mcp auf Version 2.1.1.
- Betroffen
- Dynatrace-oss Dynatrace-mcp
lt *..2.1.1
- Dynatrace-oss Dynatrace-mcp
- Behoben in
- Dynatrace-oss Dynatrace-mcp
2.1.1
- Dynatrace-oss Dynatrace-mcp
Unklar, ob und wie Sie betroffen sind? Frage zu dieser Schwachstelle stellen
Metriken
4,3
XIEM Effective CVSS
Höchste verfügbare CVSS-Bewertung aus NVD- und Herstellerangaben.
Quelle: Hersteller (CNA), CVSS v3
4,3
CVSS v3
Schweregrad Mittel auf der Skala von 0 bis 10.
Quelle: EUVD, CVE.org, OSV
0,2 %
EPSS-Score
Niedrig – Modell schätzt < 1 % Ausnutzungs-Wahrscheinlichkeit.
Quelle: FIRST EPSS, Perzentil 13,8
Alle Metriken anzeigen
- Schweregrad
- Mittel
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- 53.02 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- kein öffentlicher PoC bekannt
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- 4,3 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- 4,3
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,8
- 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: Proof of Concept · nicht automatisierbar · Auswirkung: teilweise
- Quelle: CISA Vulnrichment, Stand 10. November 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-89
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- Behandeln Sie die Schwachstelle im regulären Schwachstellenmanagement nach Art. 21 Abs. 2 lit. e NIS2.
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
Zusammenfassung
Eine Schwachstelle durch DQL-Injektion in mehreren Lese-Tools ermöglicht es einem Aufrufer, die dokumentierten Feld-Scope, Zeitfenster und Anzeige-Beschränkungen der Tools zu umgehen, indem er über Parameter, die als Identifikatoren eingegeben werden, DQL-Pipeline-Stufen injiziert.
Details
Mehrere Tools interpolieren von Aufrufern bereitgestellte Parameter direkt in DQL-Abfragezeichenfolgen ohne Anführungszeichen oder Escape-Sequenzen. Die betroffenen Parameter sind in ihren Zod-Schemas als Identifikatoren oder eingeschränkte Abkürzungen dokumentiert (wie z.B. Zeitrahmenwerte "24h" oder Kubernetes-UIDs) und nicht als DQL-Ausdrücke. Diese Interpolation ermöglicht es einem Aufrufer, aus Zeichenketten-Literalen auszubrechen, willkürliche DQL-Pipeline-Stufen anzuhängen und //-Zeilenkommentare (dokumentiert in der Dynatrace DQL-Sprachreferenz) zu verwenden, um den Rest der beabsichtigten Abfrage zu verwerfen.
Die Grenze für minimale Privilegien ist niedrig, da das Token des Operators auch execute_dql mit vollständigem DQL-Zugriff freigibt. Was die Injektion gewährt, ist die Fähigkeit, den Vertrag der betroffenen Tools zu umgehen: die Anmerkung readOnlyHint: true, die MCP-Klienten als Signal zur automatischen Genehmigung behandeln können, die Feldauswahl pro Tool (z.B. | fields id, name, type), die Anzeige-Beschränkungen (maxProblemsToDisplay, maxVulnerabilitiesToDisplay, maxEntitiesToDisplay) und die Zeitfenster-Grenzen.
Die anfälligen Interpolationen sind:
| Datei | Zeile | Parameter | Interpolation |
|---|---|---|---|
src/capabilities/find-monitored-entity-by-name.ts | 23 | entityNames[] | `fetch ${entityType} | search "*${entityNames.join('*" OR "*')}*" | fieldsAdd entity.type | expand tags` |
src/capabilities/find-monitored-entity-by-name.ts | 41 | entityNames[] | `smartscapeNodes "*" | search "*${entityNames.join('*" OR "*')}*" | fields id, name, type` |
src/capabilities/list-problems.ts | 27 | timeframe | `fetch dt.davis.problems, from: now()-${timeframe}, to: now()` |
src/capabilities/list-vulnerabilities.ts | 19 | timeframe | `fetch security.events, from: now()-${timeframe}, to: now()` |
src/capabilities/list-exceptions.ts | 11 | timeframe | `fetch user.events, from: now()-${timeframe}, to: now()` |
src/capabilities/get-events-for-cluster.ts | 20 | timeframe | `fetch events, from: now()-${timeframe}, to: now()` |
src/capabilities/get-events-for-cluster.ts | 27 | clusterId, kubernetesEntityId | `| filter k8s.cluster.uid == "${clusterId}" or dt.entity.kubernetes_cluster == "${kubernetesEntityId}"` |
Alle Zod-Schemas für diese Parameter verwenden z.string() oder z.array(z.string()) ohne Musterüberprüfung.
PoC
clusterId - Ausbrechen und Kommentieren. Mit clusterId = 'x" or 1==1 //' wird die konstruierte Abfrage:
| filter k8s.cluster.uid == "x" or 1==1 //" or dt.entity.kubernetes_cluster == ""
Das erste Anführungszeichen schließt das Zeichenketten-Literal, or 1==1 neutralisiert den Filter, um jede Zeile zu übereinstimmen, und // verwirft den Rest der Zeile einschließlich des kubernetesEntityId-Schutzes.
entityNames - Injektion von Pipeline-Stufen. Mit entityNames = ['svc" | fields id, name, tags //'] wird die konstruierte Smartscape-Abfrage:
smartscapeNodes "*" | search "*svc" | fields id, name, tags //*" | fields id, name, type
Nach dem Zeilenkommentar // ist die effektive Abfrage smartscapeNodes "*" | search "*svc" | fields id, name, tags. Die ursprüngliche Stufe | fields id, name, type wird unterdrückt und durch die Feldauswahl des Angreifers ersetzt - das Tool gibt das Feldset zurück, das der Angreifer anfordert (einschließlich solcher, die nicht im dokumentierten Ausgabe-Vertrag des Tools enthalten sind).
timeframe - Präfix-Injektion. Mit timeframe = '30d, to: now() | fieldsAdd internal_secret //' wird die Abfrage für Probleme:
fetch dt.davis.problems, from: now()-30d, to: now() | fieldsAdd internal_secret //, to: now()
| filter isNull(dt.davis.is_duplicate) OR not(dt.davis.is_duplicate)
...
Eine neue Pipeline-Stufe wird vor der beabsichtigten | filter-Stufe des Tools injiziert und der Rest der Abfrage wird kommentiert.
Das eigene Tool verify_dql des Servers kann verwendet werden, um zu bestätigen, dass ein spezifisches Injektions-Payload als gültiger DQL analysiert wird.
Auswirkungen
- Ein Aufrufer (typischerweise über Prompt-Injektion eines LLMs, das Zugriff auf die betroffenen Tools hat) kann die Feld-Scope, Zeitfenster und Anzeige-Beschränkungen der Tools umgehen.
- Die betroffenen Tools sind mit
readOnlyHint: trueannotiert, was einige MCP-Klienten als Signal zur automatischen Genehmigung behandeln. Die Injektion verwandelt ein "sicheres" Lese-Tool in eine willkürliche DQL-Oberfläche. - Kein neuer Datenzugriff über das hinaus, was
execute_dqlbereits bietet - die marginale Auswirkung ist der Auto-Zustimmungs-Weg und der gebrochene Tool-Vertrag, nicht jedoch eine Privilegserhöhung.
Originalquelle nur englisch verfügbar, maschinell ins Deutsche übersetzt.
Quelle: ENISA EUVD, cvelistv5, NVD (NIST), OSV (Open Source Vulnerabilities)
Betroffene Produkte
Betroffen sind die folgenden Versionen. Ältere Stände derselben Reihe sind ebenfalls verwundbar, sofern nicht anders angegeben.
| Betroffene Versionen | Behoben in | ||
|---|---|---|---|
| dynatrace-oss | dynatrace-mcp |
|
|
| npm | @dynatrace-oss/dynatrace-mcp-server |
|
|
Hersteller und Produkte
Weakness-Klassen (CWE)
CWE-89Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
Base
The product constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component. Without sufficient removal or quoting of SQL syntax in user-controllable inputs, the generated SQL query can cause those inputs to be interpreted as SQL instead of ordinary user data.
Eintrag bei MITRE CWE-89
Quellen & Referenzen
- github.comdynatrace-oss/dynatrace-mcp/security/advisories/GHSA-pqh8-p93p-…x_refsource_CONFIRM, web, euvd
- github.comdynatrace-oss/dynatrace-mcp/commit/15d3546c0618ffbaeaeca477337e…x_refsource_MISC, web, euvd
- github.comdynatrace-oss/dynatrace-mcp/releases/tag/v2.1.1x_refsource_MISC, web, euvd
- github.comdynatrace-oss/dynatrace-mcp/pull/562web
- github.comdynatrace-oss/dynatrace-mcppackage
Ä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).
Eintrag geändertCISA ADP
CISA-Einschätzung (SSVC): Ausnutzung: Proof of Concept, automatisierbar: nein
2 Einzeländerungen im Original anzeigen
Einzeländerungen dieses Ereignisses im Original der NVD Art Aktion Vorher Nachher Referenz ergänzt —https://github.com/dynatrace-oss/dynatrace-mcp/security/advisories/GHSA-pqh8-p93p-2rx7SSVC-Einschätzung ergänzt —{"id":"CVE-2026-123810","role":"CISA Coordinator","options":[{"exploitation":"poc"},{"automatable":"no"},{"technicalImpact":"partial"}],"version":"2.0.3","timestamp":"2026-11-10T16:13:39.050926Z"}Kennung der Quelle: 134c704f-9b21-4f2e-91b3-4a467353bcc0
Neu erfasstGitHub
CVSS V3.1: AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
Schwachstellentyp: CWE-89
Beschreibung erfasst oder geändert
7 Einzeländerungen im Original anzeigen
Einzeländerungen dieses Ereignisses im Original der NVD Art Aktion Vorher Nachher Beschreibung ergänzt —Dynatrace MCP Server is an MCP server for Dynatrace Observability. Prior to 2.1.1, several read capabilities interpolate caller-controlled values into DQL without sufficient validation or escaping. The src/capabilities/find-monitored-entity-by-name.ts capability embeds entityNames in string searches, src/capabilities/list-problems.ts, src/capabilities/list-vulnerabilities.ts, and src/capabilities/list-exceptions.ts embed timeframe values, and src/capabilities/get-events-for-cluster.ts embeds timeframe, clusterId, and kubernetesEntityId. Crafted values can close string literals, append pipeline stages, or comment out the remaining intended query, allowing callers to bypass field selection, time-window, and result-display limits in tools marked readOnlyHint. The issue does not grant data access beyond the configured token's existing execute_dql capability, but it breaks the narrower auto-approved tool contract. This issue is fixed in version 2.1.1.CVSS ergänzt —AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:NSchwachstellentyp (CWE) ergänzt —CWE-89Betroffene Versionen (Herausgeber) ergänzt —New affected value received. <a href="https://github.com/CVEProject/cvelistV5/blob/main/cves/2026/123xxx/CVE-2026-123810.json">CVE-2026-123810</a>Referenz ergänzt —https://github.com/dynatrace-oss/dynatrace-mcp/commit/15d3546c0618ffbaeaeca477337e08e92f2151bcReferenz ergänzt —https://github.com/dynatrace-oss/dynatrace-mcp/releases/tag/v2.1.1Referenz ergänzt —https://github.com/dynatrace-oss/dynatrace-mcp/security/advisories/GHSA-pqh8-p93p-2rx7Kennung der Quelle: security-advisories@github.com
Badge einbetten
Zeigen Sie Schweregrad und KEV-Status dieser Schwachstelle auf Ihrer Seite – mit Link hierher. Das Bild wird stündlich aktualisiert.
<a href="https://intel.neosec.eu/cve/CVE-2026-123810"><img src="https://intel.neosec.eu/badge/cve/CVE-2026-123810.svg" alt="CVE-2026-123810 – NEOSEC Intel" height="20"></a>