Program crash via incorrect LR restoration tracking
Published Apr 5, 2024 · Updated Dec 4, 2024
Code-generation error in LLVM before 18.1.3 allows attackers to crash affected ARM programs through corrupted return control flow. The ARM load/store optimizer marks LR as restored after examining only the return instruction it changes, rather than every return in the function, so later register allocation can overwrite an unspilled return address. Exploitation requires a susceptible function to be compiled with the ARM backend; the resulting program usually crashes on valid inputs, although the corrupted return can form a jump-oriented-programming gadget.
Summary
What happened
Code-generation error in LLVM before 18.1.3 allows attackers to crash affected ARM programs through corrupted return control flow. The ARM load/store optimizer marks LR as restored after examining only the return instruction it changes, rather than every return in the function, so later register allocation can overwrite an unspilled return address. Exploitation requires a susceptible function to be compiled with the ARM backend; the resulting program usually crashes on valid inputs, although the corrupted return can form a jump-oriented-programming gadget.
The record
- CVE
- CVE-2024-31852
- Published
- Apr 5, 2024
- Updated
- Dec 4, 2024
- Vendor
- Unknown vendor
- Product
- Unknown product
- Classifications
- Unavailable
- Attack vector
- network
- Privileges
- unauthenticated
Timeline
How it unfolded
- Apr 5, 2024CVE publishedPublication date reported by the CVE source.
- Dec 4, 2024Record updatedLatest update available in the CVE record.
Exploitability
Present is not the same as exploitable
Compare your product and version with the public record. A matching version still requires validation against your environment.
Is a vulnerable build present?
What conditions does exploitation require?
What is affected?
Affected products and versions are unavailable in this record.
Published CVSS scores
CVSS describes severity. EPSS estimates exploitation probability.
Attacks
What attackers are doing with it
Daily unique IPs observed by Shadowserver honeypots for known exploited vulnerabilities (KEVs). Missing observations do not establish an absence of attacks.
Weakness, pattern, technique
No sourced classifications are available.
Public exploit references
- ARM LR corruption reproducerproof of concept · demonstrated
Labels summarize the accepted research assessment. They do not indicate a test against your environment.
Technologies
Your stack
See the directory against your own environment.
Your stack
Check the software in your environment
Book a demo to see how Hinoki identifies affected software and validates exploitability in your environment.
Book a demo