| 제목 | dloebl CGIF v0.4.0 to v0.5.2 Integer Overflow |
|---|
| 설명 | CGIF is a fast and lightweight GIF encoder that can create GIF animations and images.
This code is vulnerable to CWE-190: Integer Overflow due to improper type handling in the pixel count calculation within the cgif_addframe function at line 521 of src/cgif.c. The function calculates the total number of pixels using direct multiplication (width * height) when comparing adjacent frames. When processing an oversized GIF, the multiplication of operands of type uint16_t is implicitly promoted to a signed int type and overflows, resulting in a negative value. This negative value acts as a loop condition, causing the frame comparison loop to not execute at all. As a result, frames with completely different content are incorrectly judged to be identical and discarded through optimization, potentially leading to missing frames or data corruption in the generated GIF animation. |
|---|
| 원천 | ⚠️ https://github.com/dloebl/cgif/issues/110 |
|---|
| 사용자 | zzxzzb (UID 95450) |
|---|
| 제출 | 2026. 03. 12. AM 03:21 (7 개월 ago) |
|---|
| 모더레이션 | 2026. 03. 27. PM 01:47 (15 days later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 353874 [dloebl CGIF 까지 0.5.2 GIF Image src/cgif.c cgif_addframe width/height 메모리 손상] |
|---|
| 포인트들 | 20 |
|---|