Skip to content

Commit 69dcead

Browse files
jasnowpostmodern
andauthored
GHSA SYNC: 2 brand new advisories (#815)
--------- Co-authored-by: Postmodern <[email protected]>
1 parent 5e77a68 commit 69dcead

File tree

2 files changed

+105
-0
lines changed

2 files changed

+105
-0
lines changed
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
---
2+
gem: google-protobuf
3+
cve: 2024-7254
4+
ghsa: 735f-pc8j-v9w8
5+
url: https://github.com/protocolbuffers/protobuf/security/advisories/GHSA-735f-pc8j-v9w8
6+
title: protobuf-java has potential Denial of Service issue
7+
date: 2024-09-19
8+
description: |+
9+
### Summary
10+
When parsing unknown fields in the Protobuf Java Lite and Full library,
11+
a maliciously crafted message can cause a StackOverflow error and lead
12+
to a program crash.
13+
14+
Reporter: Alexis Challande, Trail of Bits Ecosystem Security
15+
16+
17+
Affected versions: This issue affects all versions of both the Java
18+
full and lite Protobuf runtimes, as well as Protobuf for Kotlin and
19+
JRuby, which themselves use the Java Protobuf runtime.
20+
21+
### Severity
22+
[CVE-2024-7254](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-7254)
23+
**High** CVSS4.0 Score 8.7 (NOTE: there may be a delay in publication)
24+
25+
This is a potential Denial of Service. Parsing nested groups as unknown
26+
fields with DiscardUnknownFieldsParser or Java Protobuf Lite parser,
27+
or against Protobuf map fields, creates unbounded recursions that can
28+
be abused by an attacker.
29+
30+
### Proof of Concept
31+
For reproduction details, please refer to the unit tests (Protobuf Java
32+
[LiteTest](https://github.com/protocolbuffers/protobuf/blob/a037f28ff81ee45ebe008c64ab632bf5372242ce/java/lite/src/test/java/com/google/protobuf/LiteTest.java)
33+
and [CodedInputStreamTest](https://github.com/protocolbuffers/protobuf/blob/a037f28ff81ee45ebe008c64ab632bf5372242ce/java/core/src/test/java/com/google/protobuf/CodedInputStreamTest.java))
34+
that identify the specific inputs that exercise this parsing weakness.
35+
36+
### Remediation and Mitigation
37+
We have been working diligently to address this issue and have released
38+
a mitigation that is available now. Please update to the latest
39+
available versions of the following packages:
40+
41+
* protobuf-java (3.25.5, 4.27.5, 4.28.2)
42+
* protobuf-javalite (3.25.5, 4.27.5, 4.28.2)
43+
* protobuf-kotlin (3.25.5, 4.27.5, 4.28.2)
44+
* protobuf-kotlin-lite (3.25.5, 4.27.5, 4.28.2)
45+
* com-protobuf [JRuby gem only] (3.25.5, 4.27.5, 4.28.2)
46+
47+
cvss_v4: 8.7
48+
patched_versions:
49+
- "~> 3.25.5"
50+
- "~> 4.27.5"
51+
- ">= 4.28.2"
52+
related:
53+
url:
54+
- https://nvd.nist.gov/vuln/detail/CVE-2024-7254
55+
- https://github.com/protocolbuffers/protobuf/security/advisories/GHSA-735f-pc8j-v9w8
56+
- https://github.com/protocolbuffers/protobuf/commit/4728531c162f2f9e8c2ca1add713cfee2db6be3b
57+
- https://github.com/protocolbuffers/protobuf/commit/850fcce9176e2c9070614dab53537760498c926b
58+
- https://github.com/protocolbuffers/protobuf/commit/9a5f5fe752a20cbac2e722b06949ac985abdd534
59+
- https://github.com/protocolbuffers/protobuf/commit/ac9fb5b4c71b0dd80985b27684e265d1f03abf46
60+
- https://github.com/protocolbuffers/protobuf/commit/cc8b3483a5584b3301e3d43d17eb59704857ffaa
61+
- https://github.com/protocolbuffers/protobuf/commit/d6c82fc55a76481c676f541a255571e8950bb8c3
62+
- https://github.com/advisories/GHSA-735f-pc8j-v9w8

gems/puma/CVE-2024-45614.yml

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
---
2+
gem: puma
3+
cve: 2024-45614
4+
ghsa: 9hf4-67fc-4vf4
5+
url: https://github.com/puma/puma/security/advisories/GHSA-9hf4-67fc-4vf4
6+
title: Puma's header normalization allows for client to clobber proxy set headers
7+
date: 2024-09-20
8+
description: |
9+
### Impact
10+
11+
Clients could clobber values set by intermediate proxies (such as
12+
X-Forwarded-For) by providing a underscore version of the same
13+
header (X-Forwarded_For).
14+
15+
Any users trusting headers set by their proxy may be affected.
16+
Attackers may be able to downgrade connections to HTTP (non-SSL)
17+
or redirect responses, which could cause confidentiality leaks
18+
if combined with a separate MITM attack.
19+
20+
### Patches
21+
v6.4.3/v5.6.9 now discards any headers using underscores if the
22+
non-underscore version also exists. Effectively, allowing the
23+
proxy defined headers to always win.
24+
25+
### Workarounds
26+
Nginx has a [underscores_in_headers](https://nginx.org/en/docs/http/ngx_http_core_module.html#underscores_in_headers)
27+
configuration variable to discard these headers at the proxy level.
28+
29+
Any users that are implicitly trusting the proxy defined headers
30+
for security or availability should immediately cease doing so
31+
until upgraded to the fixed versions.
32+
cvss_v3: 5.4
33+
patched_versions:
34+
- "~> 5.6.9"
35+
- ">= 6.4.3"
36+
related:
37+
url:
38+
- https://nvd.nist.gov/vuln/detail/CVE-2024-45614
39+
- https://github.com/puma/puma/security/advisories/GHSA-9hf4-67fc-4vf4
40+
- https://github.com/puma/puma/commit/cac3fd18cf29ed43719ff5d52d9cfec215f0a043
41+
- https://github.com/puma/puma/commit/f196b23be24712fb8fb16051cc124798cc84f70e
42+
- https://nginx.org/en/docs/http/ngx_http_core_module.html#underscores_in_headers
43+
- https://github.com/advisories/GHSA-9hf4-67fc-4vf4

0 commit comments

Comments
 (0)