CVE-2024-42479CWE-123

llama.cpp allows write-what-where in rpc_server::set_tensor

Critical · published August 12, 2024

CVSS v3.1
10.0
EPSS
3%
Percentile
85.3
In the wild
Unconfirmed
What it is

🚨 An unsafe pointer in the `rpc_tensor` structure lets attackers write to arbitrary addresses! It's like giving someone the blueprints to your house and saying they can remodel without supervision! 🔥 Consider the `data` pointer like a postal service that delivers packages anywhere without checking the address. If someone hijacks that service, they can send sensitive information to any location they choose – potentially leading to serious breaches. An attacker could exploit this vulnerability to write to any memory address, potentially leading to data corruption, unauthorized access, or even complete system compromise. This is a developer's nightmare, as malicious actors could take full control of the application and wreak havoc.

Put simply

Consider the `data` pointer like a postal service that delivers packages anywhere without checking the address. If someone hijacks that service, they can send sensitive information to any location they choose – potentially leading to serious breaches. CVE-2024-42479 allows arbitrary address writing via an unsafe `data` pointer in the `rpc_tensor` structure within llama.cpp, enabling attackers to manipulate memory without proper validation.

What to do

An attacker could exploit this vulnerability to write to any memory address, potentially leading to data corruption, unauthorized access, or even complete system compromise. This is a developer's nightmare, as malicious actors could take full control of the application and wreak havoc. Patch your implementation of llama.cpp to the fixed version b3561 immediately. Review your code for any other unsafe pointer usage, and ensure rigorous validation of all memory operations. Stay vigilant about updates and best practices! You've got this! By taking these steps, you're arming your application with the protection it needs! 🛡️

The record
Technical detail
CVSS v3.1
10.0 · CRITICAL
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.02607 · 85.3th percentile
Weakness
CWE-123 · Write-what-where Condition
Published
2024-08-12T15:07Z
EPSS history
Timeline
  • 12 AUG 15:07Z
    llama.cpp allows write-what-where in rpc_server::set_tensor
    cvelistv5