{"id":"CVE-2026-50125","summary":"MKP: Unbounded Pod Log Read via Attacker-Controlled `limitBytes`/`tailLines` Causes Memory Exhaustion","details":"MKP is a Model Context Protocol server for Kubernetes. Prior to 0.4.1, cmd/server/main.go exposes the default HTTP endpoint and pkg/mcp/server.go registers the unauthenticated get_resource tool, which accepts attacker-controlled limitBytes and tailLines values for the pods logs subresource. buildPodLogOpts() in pkg/k8s/subresource.go parses those values as unbounded int64 parameters, and defaultGetPodLogs() copies the returned Kubernetes log stream through io.Copy into an in-memory bytes.Buffer without an application-side cap. A remote attacker who can reach the default port 8080 MCP endpoint and select a pod with sufficiently large accumulated logs can send one tools/call request that causes large allocations and additional response copies, while the request-frequency limiter does not constrain per-request volume. This can exhaust process memory, terminate the MKP server, and deny the MCP service; observed testing showed more than one GiB of RSS growth while handling a 128 MiB requested stream. This issue is fixed in version 0.4.1.","aliases":["GHSA-qw5r-ppcg-f8rj","GO-2026-5978"],"modified":"2026-09-19T03:46:21.198080231Z","published":"2026-09-17T19:52:37.550Z","related":["openSUSE-SU-2026:21483-1"],"database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/50xxx/CVE-2026-50125.json","cna_assigner":"GitHub_M","cwe_ids":["CWE-400"]},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/50xxx/CVE-2026-50125.json"},{"type":"ADVISORY","url":"https://github.com/StacklokLabs/mkp/security/advisories/GHSA-qw5r-ppcg-f8rj"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-50125"},{"type":"FIX","url":"https://github.com/StacklokLabs/mkp/commit/37bf6bac862aa3b1c71b8aa1b8364eae7818962d"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/stackloklabs/mkp","events":[{"introduced":"0"},{"fixed":"37bf6bac862aa3b1c71b8aa1b8364eae7818962d"}],"database_specific":{"source":["AFFECTED_FIELD","REFERENCES"],"extracted_events":[{"introduced":"0"},{"fixed":"0.4.1"}]}}],"versions":["v0.4.0","v0.3.0","v0.2.4","v0.2.3","v0.2.2","v0.2.1","v0.2.0","v0.1.0","v0.0.10","v0.0.9","v0.0.8","v0.0.7","v0.0.6","v0.0.5","v0.0.4","v0.0.3","v0.0.2","v0.0.1"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-50125.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}]}