CyberRota Analysis
AI-GeneratedA soundness bug in the OwnedView<V> type of the Buffa Protocol Buffers implementation prior to version 0.7.0 allows safe Rust code to trigger a use-after-free vulnerability, leading to potential memory corruption and information disclosure. This flaw permits dangling references to outlive the OwnedView, which can be exploited for cross-thread misuse. Developers using affected versions should prioritize upgrading to version 0.7.0 to mitigate these risks.
Public Exploit Signal
A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.
Note: these links are listed for security research and verification purposes only.
Original NVD 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.