Buffa: Use-After-Free in OwnedView via Unsound 'static Lifetime Promotion in Deref
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| anthropics | buffa | affected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Anthropics | Buffa |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-9pwq-gcrx-wghh | Buffa has a Use-After-Free in OwnedView via Unsound 'static Lifetime Promotion in Deref |
No CVSS v3.1
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.193% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Anthropics
Anthropics buffa |
|
| Vendors & Products |
Anthropics
Anthropics buffa |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Buffa is a pure-Rust Protocol Buffers implementation with first-class protobuf editions support. Prior to 0.7.0, a soundness bug in the OwnedView<V> type allowed safe Rust code to trigger a use-after-free: the OwnedView::decode constructor transmuted a borrowed slice to &'static [u8], and the Deref implementation exposed the promoted 'static lifetime on borrowed view fields (such as &'static str and &'static [u8]) to callers, so the borrow checker permitted those references to outlive the OwnedView; once the OwnedView was dropped and its backing buffer freed, the references became dangling, enabling memory corruption, information disclosure of freed heap contents, and cross-thread misuse without any unsafe code in the calling application. This issue is fixed in version 0.7.0. | |
| Title | Buffa: Use-After-Free in OwnedView via Unsound 'static Lifetime Promotion in Deref | |
| Weaknesses | CWE-200 CWE-416 |
|
| References |
| |
| Metrics |
cvssV4_0
|