Integer Overflow in embedded-graphics Library
An integer overflow vulnerability in the embedded-graphics library (up to version 0.8.2) allows remote attackers to trigger memory corruption via a manipulated width argument in ImageRaw::draw_sub_image.
CVE search metadata
CVE search record: CVE-2026-90593. Severity: high. CVSS: 7.3. KEV: no. Product: embedded-graphics (<= 0.8.2). Brief: Integer Overflow in embedded-graphics Library. Brief link: https://feed.craftedsignal.io/briefs/2026-09-13-embedded-graphics-integer-overflow/
The embedded-graphics library, widely used in Rust-based embedded systems development, contains an integer overflow vulnerability in the ImageRaw::draw_sub_image function located in src/image/image_raw.rs. This vulnerability affects all versions up to 0.8.2. An attacker can exploit this flaw by providing a specially crafted width argument during the drawing process. This manipulation triggers an integer overflow, which can lead to memory corruption or undefined behavior within the device's memory space. Because this library is commonly used in low-level firmware and embedded display drivers, the scope of impact includes potential crashes or remote code execution depending on the specific integration within the target hardware. As of the report date, the project maintainers have not issued a patch or response to the reported vulnerability.
Impact
Successful exploitation of this vulnerability in embedded environments can lead to denial-of-service conditions through device crashes or arbitrary code execution. Given the library's role in rendering image data, devices handling untrusted or remote image inputs are at the highest risk of exploitation.
Recommendation
- Perform an inventory of embedded firmware builds to identify projects utilizing embedded-graphics versions 0.8.2 or older.
- Monitor the official embedded-graphics repository for upcoming security advisories or patch releases addressing CVE-2026-90593.
- If a patch is unavailable, implement input validation logic to sanitize the width argument before it is passed to the ImageRaw::draw_sub_image function to prevent integer overflow conditions.
- Restrict the ability of external or untrusted sources to influence rendering parameters in embedded display applications.
Immediate actions
Audit codebase for embedded-graphics dependencies.
Mitigations
Sanitize input width parameters passed to ImageRaw::draw_sub_image.
CVE-2026-90593
Gaps
- No fixed version available currently.