New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 681497 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Last visit > 30 days ago
Closed: Feb 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: Linux , Mac
Pri: 1
Type: Bug



Sign in to add a comment

Out-of-memory in gfx_png_image_fuzzer

Project Member Reported by ClusterFuzz, Jan 16 2017

Issue description

Labels: Test-Predator-Wrong M-56
Owner: mmoroz@chromium.org
Status: Assigned (was: Untriaged)
As per  issue 657465 , assigning to mmoroz@. Max, could you please take a look?

Comment 2 by mmoroz@chromium.org, Jan 18 2017

Cc: mummare...@chromium.org
Owner: rsesek@chromium.org
This is different from  issue 657465 . This one seems to be a valid OOM.

rsesek@, as an owner for gfx/image (https://cs.chromium.org/chromium/src/ui/gfx/image/OWNERS?cl=GROK), could you please help to find an owner?
Thank you for reassigning.

Comment 4 by rsesek@chromium.org, Jan 26 2017

Owner: e...@chromium.org
Passing this to the OWNER of the underlying PNG codec, since the fuzzer is really testing that code and not gfx::Image.

Comment 5 by e...@chromium.org, Jan 26 2017

Cc: scroggo@chromium.org
Owner: msarett@chromium.org
This crash is inside libpng. Passing to one of the third_party/libpng owners.

#0  0x00000000004d2a84 in __sanitizer_print_stack_trace ()
    at ../../third_party/libFuzzer/src/FuzzerLoop.cpp:135
#1  0x0000000000510302 in fuzzer::Fuzzer::HandleMalloc(unsigned long) ()
    at ../../third_party/libFuzzer/src/FuzzerLoop.cpp:169
#2  0x0000000000510177 in MallocHook ()
    at ../../third_party/libFuzzer/src/FuzzerLoop.cpp:143
#3  0x00000000004d83be in __sanitizer::RunMallocHooks(void const*, unsigned long) () at ../../third_party/libFuzzer/src/FuzzerLoop.cpp:135
#4  0x00000000004262f3 in __asan::Allocator::Allocate(unsigned long, unsigned long, __sanitizer::BufferedStackTrace*, __asan::AllocType, bool) ()
    at ../../third_party/libFuzzer/src/FuzzerLoop.cpp:135
#5  0x00000000004cad41 in malloc ()
    at ../../third_party/libFuzzer/src/FuzzerLoop.cpp:135
#6  0x00000000005e9d7d in png_read_buffer ()
    at ../../third_party/libpng/pngrutil.c:310
#7  cr_png_handle_iCCP () at ../../third_party/libpng/pngrutil.c:1462
#8  0x00000000005bd93f in cr_png_push_read_chunk ()
    at ../../third_party/libpng/pngpread.c:309
#9  0x00000000005bad10 in cr_png_process_some_data ()
    at ../../third_party/libpng/pngpread.c:109
#10 cr_png_process_data () at ../../third_party/libpng/pngpread.c:46
#11 0x000000000077eb6a in Decode () at ../../ui/gfx/codec/png_codec.cc:447
#12 0x00000000007740eb in ToImageSkiaRep ()
    at ../../ui/gfx/image/image.cc:114
#13 0x000000000076f54d in AddPNGData () at ../../ui/gfx/image/image.cc:101
#14 0x000000000076f08c in ImageSkiaFromPNG ()
    at ../../ui/gfx/image/image.cc:143
#15 0x000000000077253b in ToImageSkia () at ../../ui/gfx/image/image.cc:494
#16 0x0000000000771c81 in ToSkBitmap () at ../../ui/gfx/image/image.cc:482
#17 0x00000000004f8114 in LLVMFuzzerTestOneInput ()
    at ../../testing/libfuzzer/fuzzers/gfx_png_image_fuzzer.cc:29

Status: WontFix (was: Assigned)
The attached image tells libpng to allocate 2048 MB for a particular chunk.  It's unfortunate that libpng tries to do this...  but it will fail appropriately if the allocation fails.

This doesn't seem like a bug to me.
Project Member

Comment 7 by ClusterFuzz, Mar 16 2017

Labels: OS-Mac
Cc: msarett@chromium.org
 Issue 701957  has been merged into this issue.

Sign in to add a comment