Low, CVSS 2.1GoPublished
opentelemetry-go's Schema ParseFile leaks file descriptors on each parse
CVE-2026-45287 · GHSA-995v-fvrw-c78m
- Affected
- Go go.opentelemetry.io/otel/schema/v1.0 <= 0.0.16
- Fixed in
- 0.0.17· Vendor fix available
- Issue
- go.opentelemetry.io/otel/schema/v1.0 and go.opentelemetry.io/otel/schema/v1.1 leaks one file descriptor on each successful ParseFile call. ParseFile opens the schema file and passes it to Parse without closing it; repeated parsing in a long-running process can exhaust the process file descriptor limit and cause denial of service. The severity is low because exploitation depends on a consuming application exposing repeated schema parsing to an attacker-controlled path. Introduced in commit: e72a235 Details In schema/v1.0/parser.go:41-47, ParseFile opens the requested schema path with os.Open and then returns Parse(file) without a defer file.Close() or other close path: The validation evidence also identifies schema/v1.0/parser.go:50-73: Parse accepts an io.Reader, decodes from it, and does not close it. Ownership of the opened file is therefore not transferred to Parse, leaving the descriptor open until the Go runtime eventually finalizes the file object. With repeated…
Recommended action: Upgrade to 0.0.17 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.