Overview
An integer overflow and invalid input vulnerability has been discovered in rust-ffmpeg version 0.3.0. This vulnerability could allow an attacker to cause a denial of service or potentially execute arbitrary code on the target system. This issue is particularly significant because it may lead to system compromise or data leakage, and it affects a wide range of systems running the specified version of rust-ffmpeg.
Vulnerability Summary
CVE ID: CVE-2025-57614
Severity: High, CVSS score 7.5
Attack Vector: Network
Privileges Required: None
User Interaction: None
Impact: Potential system compromise or data leakage
Affected Products
A new way to communicate
Ameeba Chat is built on encrypted identity, not personal profiles.
Message, call, share files, and coordinate with identities kept separate.
- • Encrypted identity
- • Ameeba Chat authenticates access
- • Aliases and categories
- • End-to-end encrypted chat, calls, and files
- • Secure notes for sensitive information
Private communication, rethought.
Product | Affected Versions
rust-ffmpeg | 0.3.0
How the Exploit Works
The vulnerability arises from an unchecked cast in rust-ffmpeg’s cached method when dimension parameters are zero or exceed i32::MAX. This violates the underlying C function’s preconditions and triggers undefined behavior, which in turn could allow an attacker to cause a denial of service or potentially execute arbitrary code on the target system.
Conceptual Example Code
Here is a conceptual code snippet that illustrates how an attacker might exploit the vulnerability:
use std::i32;
fn main() {
let mut cache = rust_ffmpeg::Cache::new();
// Overflow the i32::MAX limit
let large_dimension = i32::MAX + 1;
// Pass the overflowed value as a dimension parameter
cache.cached_method(large_dimension, large_dimension);
}
In this example, `large_dimension` is an integer that exceeds `i32::MAX`, and it’s passed as a parameter to the `cached_method()`. This will trigger an unchecked cast in the `cached_method()`, leading to undefined behavior that an attacker could exploit to cause a denial of service or execute arbitrary code.
