MKP: Unbounded Pod Log Read via Attacker-Controlled `limitBytes`/`tailLines` Causes Memory Exhaustion
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-400.
Summary
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| StacklokLabs | mkp | before 0.4.1 | 0.4.1 | Patch available | CNA |
| — | github.com/StacklokLabs/mkp (Go) | before 0.4.1 | 0.4.1 | Patch available | GHSA-qw5r-ppcg-f8rj |
- mkp VendorStacklokLabs Affected before 0.4.1 Fixed in 0.4.1 Patch available CNA
- github.com/StacklokLabs/mkp (Go) Vendor— Affected before 0.4.1 Fixed in 0.4.1 Patch available GHSA-qw5r-ppcg-f8rj
Remediation
- Fix · CNA mkp (StacklokLabs) Fixed in 0.4.1
- Fix · GHSA-qw5r-ppcg-f8rj github.com/StacklokLabs/mkp (Go) Fixed in 0.4.1 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-50125
- 2026-10-03 Alias added: GHSA-qw5r-ppcg-f8rj
References
Sources
- CVE-2026-50125 · CVE Program
- CVE-2026-50125 · NVD
- FIRST EPSS
- GHSA-qw5r-ppcg-f8rj · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences