New issue
Advanced search Search tips

Issue 788550 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Closed: Nov 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 1
Type: Bug

Blocking:
issue 777555



Sign in to add a comment

Abrt in av_parser_parse2

Project Member Reported by ClusterFuzz, Nov 26 2017

Issue description

Detailed report: https://clusterfuzz.com/testcase?key=5677662273273856

Fuzzer: libFuzzer_media_pipeline_integration_fuzzer
Job Type: libfuzzer_chrome_asan
Platform Id: linux

Crash Type: Abrt
Crash Address: 0x03e90000252b
Crash State:
  av_parser_parse2
  parse_packet
  read_frame_internal
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_asan&range=507845:507871

Reproducer Testcase: https://clusterfuzz.com/download?testcase_id=5677662273273856

Issue filed automatically.

See https://chromium.googlesource.com/chromium/src/+/master/testing/libfuzzer/reference.md for more information.
 
Cc: kkaluri@chromium.org
Components: Internals>Media>FFmpeg
Labels: M-63 CF-NeedsTriage
Predator has provided the 9 suspected CL's

1. avcodec/parser: assert that there is a past buffer if theres a reference into the past by michael@niedermayer.cc
2. lavf/utils: Do not force chapter end time before chapter start. by ceffmpeg@gmail.com
3. avformat/utils: fix memory leak in avformat_free_context by ssiloti@bittorrent.com
4. lavf: consider codec framerate for framerate detection by nfxjfg@googlemail.com
5. avformat/options: log filename on open by michael@niedermayer.cc
6. avformat/utils: return impaired streams in av_find_best_stream if only those exist by cus@passwd.hu
7. avformat/utils: change bitrate to int64_t in av_find_best_stream by cus@passwd.hu
8. avformat/utils: Slightly un-clutter code in determinable_frame_size() by using a switch by michael@niedermayer.cc
9. avformat/utils: always av_reduce r_frame_rate by cus@passwd.hu

Since the suspected owners are not chromium users, adding appropriate label and adding CF-NeedsTriage label

Blocking: 777555
Owner: dalecur...@chromium.org
Status: Assigned (was: Untriaged)
Project Member

Comment 3 by bugdroid1@chromium.org, Nov 29 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/415212d7045bc6c2ed5c58ec46740251c32ea7ce

commit 415212d7045bc6c2ed5c58ec46740251c32ea7ce
Author: Dale Curtis <dalecurtis@chromium.org>
Date: Wed Nov 29 01:10:35 2017

Roll FFmpeg and update FFmpegDemuxer for security fixes.

https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/9cb03e5705c1..18c815f81428

$ git log 9cb03e570..18c815f81 --date=short --no-merges --format='%ad %ae %s'
2017-11-28 dalecurtis Update chromium patches README with new patches.
2017-11-28 dalecurtis Free opus extradata before reallocating.
2017-11-28 dalecurtis Don't manipulate duration when it's AV_NOPTS_VALUE.
2017-11-28 dalecurtis Respect AVERROR codes returned by ogg parsers.
2017-11-25 michael avformat/aacdec: Fix leak in adts_aac_read_packet()

Inspection of code reveals that we don't properly ignore invalid codec
parameters when setting up the ffmpeg demuxer, so we will now explicitly
discard streams which don't have a codec detected.

Created with:
  roll-dep src/third_party/ffmpeg

BUG= 788550 , 787803 , 773637 , 787351 
TEST=ubsan/asan no longer fail.

Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: I87b0482499e41b2c0190ef3852ed81c3e91c4236
Reviewed-on: https://chromium-review.googlesource.com/794844
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>
Cr-Commit-Position: refs/heads/master@{#519941}
[modify] https://crrev.com/415212d7045bc6c2ed5c58ec46740251c32ea7ce/DEPS
[modify] https://crrev.com/415212d7045bc6c2ed5c58ec46740251c32ea7ce/media/filters/ffmpeg_demuxer.cc

Project Member

Comment 4 by ClusterFuzz, Nov 29 2017

ClusterFuzz has detected this issue as fixed in range 519911:519945.

Detailed report: https://clusterfuzz.com/testcase?key=5677662273273856

Fuzzer: libFuzzer_media_pipeline_integration_fuzzer
Job Type: libfuzzer_chrome_asan
Platform Id: linux

Crash Type: Abrt
Crash Address: 0x03e90000252b
Crash State:
  av_parser_parse2
  parse_packet
  read_frame_internal
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_asan&range=507845:507871
Fixed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_asan&range=519911:519945

Reproducer Testcase: https://clusterfuzz.com/download?testcase_id=5677662273273856

See https://chromium.googlesource.com/chromium/src/+/master/testing/libfuzzer/reference.md for more information.

If you suspect that the result above is incorrect, try re-doing that job on the test case report page.
Project Member

Comment 5 by ClusterFuzz, Nov 29 2017

Labels: ClusterFuzz-Verified
Status: Verified (was: Assigned)
ClusterFuzz testcase 5677662273273856 is verified as fixed, so closing issue as verified.

If this is incorrect, please add ClusterFuzz-Wrong label and re-open the issue.

Sign in to add a comment