The protojson.Unmarshal function can enter an infinite loop when unmarshaling certain forms of invalid JSON. This condition can occur when unmarshaling into a message which contains a google.protobuf.Any value, or when the UnmarshalOptions.DiscardUnknown option is set.
CVE-2024-24786 - Medium Severity Vulnerability
Vulnerable Library - github.com/protocolbuffers/protobuf-go-v1.27.1
Go support for Google's protocol buffers
Library home page: https://proxy.golang.org/github.com/protocolbuffers/protobuf-go/@v/v1.27.1.zip
Path to dependency file: /go.mod
Path to vulnerable library: /go.mod
Dependency Hierarchy: - github.com/googleapis/google-api-go-client-v0.26.0 (Root Library) - github.com/grpc/grpc-go-v1.33.2 - :x: **github.com/protocolbuffers/protobuf-go-v1.27.1** (Vulnerable Library)
Found in HEAD commit: b855cec5559a8daf1ed5e7e1c654fd5c4d5a3fa7
Found in base branch: master
Vulnerability Details
The protojson.Unmarshal function can enter an infinite loop when unmarshaling certain forms of invalid JSON. This condition can occur when unmarshaling into a message which contains a google.protobuf.Any value, or when the UnmarshalOptions.DiscardUnknown option is set.
Publish Date: 2024-03-05
URL: CVE-2024-24786
CVSS 3 Score Details (6.5)
Base Score Metrics: - Exploitability Metrics: - Attack Vector: Network - Attack Complexity: Low - Privileges Required: None - User Interaction: Required - Scope: Unchanged - Impact Metrics: - Confidentiality Impact: None - Integrity Impact: None - Availability Impact: High
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: https://pkg.go.dev/vuln/GO-2024-2611
Release Date: 2024-03-05
Fix Resolution: v1.33.0
Step up your Open Source Security Game with Mend here