Executive brief
A vulnerability in the lwext4 library, which is used to provide ext4 filesystem support for microcontrollers and embedded systems, could allow an attacker to crash an application. By providing a specially crafted, malicious filesystem image, an attacker can trigger a system crash when the software attempts to mount or process the image. This results in a denial of service, potentially impacting the availability of embedded devices or systems relying on this library for data storage.
Technical details
A divide-by-zero vulnerability exists in the ext4_block_set_lb_size function within src/ext4_blockdev.c of the lwext4 1.0.0 library. The root cause is a lack of validation for the logical block size (lb_size) parameter; when a crafted ext4 image with a zero logical block size is processed during an ext4_mount operation, the library performs arithmetic division by zero. This leads to a Floating-Point Exception (FPE) and a subsequent runtime crash. The attack requires the victim to attempt to mount or process a malicious filesystem image. As of the advisory date, the issue was reported via GitHub issues and demonstrated with a proof-of-concept (PoC) using AFL fuzzing.
Affected products
- gkostka lwext4 1.0.0
Timeline
- 2025-12-09: disclosed: Issue reported on GitHub repository
- 2026-06-03: advisory: CVE-2025-70100 published in NVD