New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Integer overflow, leading to very large allocation in PngImage::readMetadata() #790
Comments
kevinbackhouse
added a commit
to kevinbackhouse/exiv2
that referenced
this issue
Apr 25, 2019
kevinbackhouse
added a commit
to kevinbackhouse/exiv2
that referenced
this issue
Apr 25, 2019
kevinbackhouse
added a commit
to kevinbackhouse/exiv2
that referenced
this issue
Apr 25, 2019
kevinbackhouse
added a commit
to kevinbackhouse/exiv2
that referenced
this issue
Apr 25, 2019
kevinbackhouse
added a commit
to kevinbackhouse/exiv2
that referenced
this issue
Apr 25, 2019
kevinbackhouse
added a commit
to kevinbackhouse/exiv2
that referenced
this issue
Apr 25, 2019
kevinbackhouse
added a commit
to kevinbackhouse/exiv2
that referenced
this issue
Apr 25, 2019
kevinbackhouse
added a commit
to kevinbackhouse/exiv2
that referenced
this issue
May 2, 2019
piponazo
pushed a commit
that referenced
this issue
May 5, 2019
|
This has been assigned CVE-2019-13109. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This issue is closely related to #789, but the consequences of this bug are different. The calculation of
chunkLength - iccOffsetat pngimage.cpp:472 can have a negative integer overflow which leads to an 8GB memory allocation inzlibToDataBuf. Also, the zlib decompression is run on uninitialized memory beyond the end of the buffer, so there is a potential info leak vulnerability here.Here is the PoC, which I have tested on master (55dfdb9):
. The simplest way to see the bug is to use
ulimitto reduce the amount of available memory to less than 8GB:The text was updated successfully, but these errors were encountered: