Abstract: Source code fix to address a potential vulnerability in VCL BMP file processing
Potential security vulnerabilities have been identified in the VCL when processing BMP files. These vulnerabilities could allow an attacker to craft a BMP file that produces a buffer overflow and thereby allowing it to execute arbitrary code.
For users of XE7, XE6, and XE5: a hotfix is available.
For users of XE4 and prior versions of Delphi and C++Builder: these steps should be followed to modify the VCL source code and add it to your application.
Changes to Vcl.Graphics.pas:
if ColorCount > 256 then
if EnhHeader.nBytes < Sizeof(EnhHeader) then
if (biClrUsed * DIBPalSizes[OS2Format]) > (256 * SizeOf(TRGBQuad)) then