| 제목 | SerenityOS SerenityOS LibGfx >= d76ad23 Integer Overflow |
|---|
| 설명 | SerenityOS is a graphical Unix-like operating system that includes the LibGfx image decoding library.
This code is vulnerable to CWE-190: Integer Overflow or Wraparound due to improper validation of the BMP DIB header height value. The decode_bmp_pixel_data() function processes the signed 32-bit height field from an attacker-controlled BMP file and applies abs() to the value without checking for "INT_MIN"(-2147483648). Because the absolute value of "INT_MIN" cannot be represented by a signed 32-bit integer, calling abs(INT_MIN) results in signed integer overflow and undefined behavior. An attacker can trigger the issue by supplying a specially crafted BMP file whose height field is set to 0x80000000. Under UBSan configurations with halt_on_error enabled, processing such a file causes the image decoder process to abort, resulting in a denial of service. In non-sanitized release builds, the behavior is compiler-dependent due to the underlying undefined behavior.
More details: https://github.com/SerenityOS/serenity/issues/26957 |
|---|
| 원천 | ⚠️ https://github.com/SerenityOS/serenity/issues/26957 |
|---|
| 사용자 | cz_seuer (UID 100791) |
|---|
| 제출 | 2026. 08. 25. AM 09:14 (26 날 ago) |
|---|
| 모더레이션 | 2026. 09. 19. PM 07:40 (25 days later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 407958 [SerenityOS 까지 3d83e4509fd20d7438e1ae8470ffe668c136229c LibGfx BMPLoader.cpp decode_bmp_pixel_data height 메모리 손상] |
|---|
| 포인트들 | 20 |
|---|