Skip to content

GHSA-f962-qm93-mj4c CVE-2026-55079 GO-2026-5911

Coder's unbounded memory allocation in provisioner file upload allows authenticated denial of service

Medium Go
Severity
4.9 / 10
Medium · CVSS 3.1
Exploit chance (EPSS)
0.61%
Chance of exploitation in the next 30 days. Higher than 49.26% of scored vulnerabilities.
Known exploited
No
Not in CISA's catalog
Weakness
CWE-789 Memory Allocation with Excessive Size Value
Fix
2.34.2
Upgrade github.com/coder/coder/v2 to this version or later

Description

Summary

NewDataBuilder in provisionersdk/proto/dataupload.go allocated a byte slice using the client-supplied FileSize from a DataUpload message without an upper-bound check. Although the DRPC wire limit is 4 MiB, the FileSize value itself was unconstrained

Impact

An authenticated user able to reach the provisioner daemon serve endpoint could send a roughly 50-byte message declaring a huge FileSize (for example 1 TiB), triggering an unrecoverable Go out-of-memory abort that terminates coderd. This is a single-message denial of service affecting the entire deployment.

Patches

The fix validates FileSize against an upper bound (MaxFileSize = 100 MiB) before allocation.

The fix was backported to all supported release lines:

Release line Patched version
2.34 v2.34.2
2.33 v2.33.8
2.32 v2.32.7
2.29 (ESR) v2.29.17

Workarounds

Restrict access to the provisioner daemon serve endpoint to trusted provisioner daemon service accounts.

Resources

  • Fix: #25710

Credits

Coder would like to thank Anthropic's Security Team (ANT-2026-22442) for independently disclosing this issue!

Affected versions

Go

PackageVulnerableFixed in
github.com/coder/coder
all versions
No fix yet
github.com/coder/coder/v2
>= 2.34.0, < 2.34.2
2.34.2
github.com/coder/coder/v2
>= 2.33.0, < 2.33.8
2.33.8
github.com/coder/coder/v2
>= 2.30.0, < 2.32.7
2.32.7
github.com/coder/coder/v2
>= 2.24.0, < 2.29.17
2.29.17
github.com/coder/coder/v2
>= 2.24.0, < 2.29.17
>= 2.30.0, < 2.32.7
>= 2.33.0, < 2.33.8
>= 2.34.0, < 2.34.2
2.29.17
2.32.7
2.33.8
2.34.2

How to fix

Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.

github.com/coder/coder/v2 Go → 2.34.2

go
go get github.com/coder/coder/v2@v2.34.2 && go mod tidy

Severity breakdown

CVSS 3.1 4.9

CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:N/A:H

Attack vector
Network
Attack complexity
Low
Privileges required
High
User interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Weakness

CWE-789: Memory Allocation with Excessive Size Value

The product allocates memory based on an untrusted, large size value, but it does not ensure that the size is within expected limits, allowing arbitrary amounts of memory to be allocated.

How to prevent it
  • Implementation, Architecture and Design: Perform adequate input validation against any value that influences the amount of memory that is allocated. Define an appropriate strategy for handling requests that exceed the limit, and consider supporting a configuration option so that the administrator can extend the amount of memory to be used if necessary.
  • Operation: Run your program using system-provided resource limits for memory. This might still cause the program to crash or exit, but the impact to the rest of the system will be minimized.

References

Timeline

  1. Published
  2. Last updated by the source
  3. Latest EPSS score
AdvisorySeverityWhy it's related
GHSA-h58c-xccx-75m3
Coder: Stored HTML injection via unescaped ApplicationName and LogoURL appearance settings
Medium Also affects github.com/coder/coder
GHSA-8fxq-53rx-ph5f
Coder: Login endpoint user enumeration via timing-defense placeholder in password comparison
Medium Also affects github.com/coder/coder
GHSA-qrwj-vh9x-gw5v
Coder's workspace agent API insecure redirect handling allowed cross-agent file read and write
High Also affects github.com/coder/coder
GHSA-5wg6-jmq2-53pw
Coder's workspace app CORS origin check can be bypassed via UUID-based subdomain spoofing
Medium Also affects github.com/coder/coder
GHSA-7qw2-f75v-62f7
Coder vulnerable to stored HTML injection via workspace agent logs in AgentLogLine component
Medium Also affects github.com/coder/coder
GHSA-84rm-42xw-mx52
Coder's AI Bridge Proxy skips TLS certificate verification in default configuration
High Also affects github.com/coder/coder
GHSA-wqxv-w64v-5wh6
Suspended Coder users retain access to AI Bridge LLM proxy endpoints
Medium Also affects github.com/coder/coder
GHSA-f5vp-w269-392g
Coder vulnerable to denial of service via unbounded request body in AI Bridge provider endpoints
Medium Also affects github.com/coder/coder
Is this in your code?

MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.

Check your repos with MergeHarbor