Skip to content
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

memory exhaustion in load_tile #679

Closed
bestshow opened this issue Aug 16, 2017 · 2 comments
Closed

memory exhaustion in load_tile #679

bestshow opened this issue Aug 16, 2017 · 2 comments
Labels

Comments

@bestshow
Copy link

Version: ImageMagick 7.0.6-8 Q16 x86_64

#./identify $FILE
When identify xcf file , imagemagick will allocate memory to store the data, here is the critical code:
(xcf.c , in function load_tile)

  xcfdata=(XCFPixelInfo *) AcquireQuantumMemory(MagickMax(data_length, //362
    tile_image->columns*tile_image->rows),sizeof(*xcfdata));

The parameter "data_length" is passed from function load_level:

if (load_tile(image,tile_image,inDocInfo,inLayerInfo,(size_t) (offset2-offset),exception) == 0) //674

The "offset2" and "offset" can be read from input file (can be controlled).

  offset=(MagickOffsetType) ReadBlobMSBLong(image); //626
...
  offset2=(MagickOffsetType)ReadBlobMSBLong(image); //645

Here is my policy.xml to limit memory usage,but 256MB limit can be bypassed.

...
<policy domain="resource" name="area" value="100MP"/>
<policy domain="resource" name="memory" value="256MiB”/>
...

testcase: https://github.com/bestshow/p0cs/blob/master/memory_exhaustion_in_load_tile
Credit: ADLab of Venustech

@urban-warrior
Copy link
Contributor

Thanks for the problem report. We can reproduce it and will have a patch to fix it in GIT master branch @ https://github.com/ImageMagick/ImageMagick later today. The patch will be available in the beta releases of ImageMagick @ https://www.imagemagick.org/download/beta/ by sometime tomorrow.

@dlemstra dlemstra added the bug label Aug 18, 2017
@fgeek
Copy link

fgeek commented Aug 23, 2017

Please use CVE-2017-13133 for this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

No branches or pull requests

4 participants