Integer overflow in libmime buffer growth could lead to heap corruption
Impact
Several buffer-growth sites in libmime performed size arithmetic in 32-bit types without overflow checks. On a sufficiently large message the growth guard could fail open, or the buffer could be reallocated smaller than required, and a subsequent memcpy would then write attacker-controlled data across adjacent heap allocations. This vulnerability was fixed in Thunderbird 158 and Thunderbird 153.6.
Source excerpt · mozillaAffected packages
Affected products
Vendor version evidence. Product records are separate from automatic dependency matching.
Mozilla · Thunderbird
| Version / range | Source status |
|---|---|
| 153.6 through 153.* (inclusive) | unaffected |
| 158 through * (inclusive) | unaffected |
Original source description
Several buffer-growth sites in libmime performed size arithmetic in 32-bit types without overflow checks. On a sufficiently large message the growth guard could fail open, or the buffer could be reallocated smaller than required, and a subsequent memcpy would then write attacker-controlled data across adjacent heap allocations. This vulnerability was fixed in Thunderbird 158 and Thunderbird 153.6.