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

Issue 759294 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Last visit > 30 days ago
Closed: Aug 2017
Cc:
Components:
EstimatedDays: ----
NextAction: 2017-08-31
OS: Linux
Pri: 1
Type: Bug-Security



Sign in to add a comment

Heap-buffer-overflow in media::mp4::TrackRunIterator::IsSampleEncrypted

Project Member Reported by ClusterFuzz, Aug 26 2017

Issue description

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

Fuzzer: libFuzzer_mediasource_MP4_FLAC_pipeline_integration_fuzzer
Job Type: libfuzzer_chrome_asan
Platform Id: linux

Crash Type: Heap-buffer-overflow READ 1
Crash Address: 0x610000048048
Crash State:
  media::mp4::TrackRunIterator::IsSampleEncrypted
  media::mp4::TrackRunIterator::AuxInfoNeedsToBeCached
  media::mp4::MP4StreamParser::EnqueueSample
  
Sanitizer: address (ASAN)

Recommended Security Severity: High

Regressed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_asan&range=497063:497144

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

Issue filed automatically.

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

Comment 1 by sheriffbot@chromium.org, Aug 27 2017

Labels: M-62
Project Member

Comment 2 by sheriffbot@chromium.org, Aug 27 2017

Labels: ReleaseBlock-Stable
This is a serious security regression. If you are not able to fix this quickly, please revert the change that introduced it.

If this doesn't affect a release branch, or has not been properly classified for severity, please update the Security_Impact or Security_Severity labels, and remove the ReleaseBlock label. To disable this altogether, apply ReleaseBlock-NA.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 3 by sheriffbot@chromium.org, Aug 27 2017

Labels: Pri-1

Comment 4 by ta...@google.com, Aug 28 2017

Components: Blink>Media>Video
Owner: wolenetz@chromium.org
Status: Assigned (was: Untriaged)
wolenetz@, I wonder if you are the right person to fix this.
Yep. I'll take a look soon. I added these new fuzzers last week and have a bit of a stack I'm digging through now :)
Components: -Blink>Media>Video Internals>Media>Source
Status: Started (was: Assigned)
I have a confirmed local repro with extra debugging on a debug asan fuzz build. Investigating...
Cc: wolenetz@chromium.org
Owner: kqyang@chromium.org
Status: Assigned (was: Started)
kqyang@ - please take a look ASAP. I landed some new MSE fuzzers last week that have been finding all sorts of issues. This one looks related to your code changes to mp4_stream_parser's track_run_iterator and encryption.
(I confirmed hand-off of this in chat with kqyang@ earlier today.)

Comment 9 by mmoroz@chromium.org, Aug 29 2017

Cc: mmoroz@chromium.org
Status: Started (was: Assigned)
Project Member

Comment 11 by bugdroid1@chromium.org, Aug 29 2017

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

commit d932417fc75bf2d07e1009268e1765a8992c01af
Author: KongQun Yang <kqyang@chromium.org>
Date: Tue Aug 29 23:09:30 2017

Fix sample description index check off by one error

Bug:  759294 
Bug:  760049 
Change-Id: I4008650d6c2aac3be0c0fc9b39e4e8a4e5fc9779
Reviewed-on: https://chromium-review.googlesource.com/641405
Reviewed-by: Matthew Wolenetz <wolenetz@chromium.org>
Commit-Queue: Kongqun Yang <kqyang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#498274}
[modify] https://crrev.com/d932417fc75bf2d07e1009268e1765a8992c01af/media/formats/mp4/track_run_iterator.cc

Status: Fixed (was: Started)
The bug should be fixed. I verified locally that it is no longer reproducible. Can we force clusterfuzz.com to rerun the test to confirm it is really fixed?
Cc: gov...@chromium.org
Yes - but it takes a little while (a few hours sometimes) for the clusterfuzz-builder to catch up and produce a new version of the fuzzer. From the top left of the CF report page, select "REDO" -> "FIXED" and it will then automate an attempt to see if the issue is fixed. Otherwise, it'll run such attempts roughly every 24hrs IIUC. mmoroz@, please correct me if I'm wrong.

Also - (as I noted in  bug 760049  too):

IMHO, this will be needed ASAP in M61 too.
kqyang@, please plan, request (after CF confirms fixed and bakes in Canary 24hrs) and do the merge (assuming it gets approved).
cc+=govind@ accordingly
Cc: awhalley@chromium.org
+ awhalley@ (Security TPM for review)
Project Member

Comment 15 by ClusterFuzz, Aug 30 2017

ClusterFuzz has detected this issue as fixed in range 498221:498291.

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

Fuzzer: libFuzzer_mediasource_MP4_FLAC_pipeline_integration_fuzzer
Job Type: libfuzzer_chrome_asan
Platform Id: linux

Crash Type: Heap-buffer-overflow READ 1
Crash Address: 0x610000048048
Crash State:
  media::mp4::TrackRunIterator::IsSampleEncrypted
  media::mp4::TrackRunIterator::AuxInfoNeedsToBeCached
  media::mp4::MP4StreamParser::EnqueueSample
  
Sanitizer: address (ASAN)

Recommended Security Severity: High

Regressed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_asan&range=497063:497144
Fixed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_asan&range=498221:498291

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

See https://chromium.googlesource.com/chromium/src/+/master/testing/libfuzzer/reproducing.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 16 by ClusterFuzz, Aug 30 2017

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

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

Comment 17 by sheriffbot@chromium.org, Aug 30 2017

Labels: -Restrict-View-SecurityTeam Restrict-View-SecurityNotify
Labels: Merge-Request-61
Project Member

Comment 19 by sheriffbot@chromium.org, Aug 30 2017

Labels: -Merge-Request-61 Merge-Review-61 Hotlist-Merge-Review
This bug requires manual review: We are only 5 days from stable.
Please contact the milestone owner if you have questions.
Owners: amineer@(Android), cmasso@(iOS), ketakid@(ChromeOS), govind@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Once #11 has had > 48hours in Canary this is good to take in 61.
NextAction: 2017-08-31
The NextAction date has arrived: 2017-08-31
govind@ - good for 61
Labels: -Merge-Review-61 Merge-Approved-61
Approving merge to M61 branch 3163 based on comment #23. Please merge ASAP. Thank you.
Project Member

Comment 25 by bugdroid1@chromium.org, Aug 31 2017

Labels: -merge-approved-61 merge-merged-3163
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2a13f4e301f18dac91405b628d82d0d4c4a5d5b0

commit 2a13f4e301f18dac91405b628d82d0d4c4a5d5b0
Author: KongQun Yang <kqyang@chromium.org>
Date: Thu Aug 31 17:52:15 2017

Fix sample description index check off by one error

TBR=kqyang@chromium.org

(cherry picked from commit d932417fc75bf2d07e1009268e1765a8992c01af)

Bug:  759294 
Bug:  760049 
Change-Id: I4008650d6c2aac3be0c0fc9b39e4e8a4e5fc9779
Reviewed-on: https://chromium-review.googlesource.com/641405
Reviewed-by: Matthew Wolenetz <wolenetz@chromium.org>
Commit-Queue: Kongqun Yang <kqyang@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#498274}
Reviewed-on: https://chromium-review.googlesource.com/646079
Reviewed-by: Kongqun Yang <kqyang@chromium.org>
Cr-Commit-Position: refs/branch-heads/3163@{#1034}
Cr-Branched-From: ff259bab28b35d242e10186cd63af7ed404fae0d-refs/heads/master@{#488528}
[modify] https://crrev.com/2a13f4e301f18dac91405b628d82d0d4c4a5d5b0/media/formats/mp4/track_run_iterator.cc

Labels: -ReleaseBlock-Stable
Project Member

Comment 27 by sheriffbot@chromium.org, Dec 6 2017

Labels: -Restrict-View-SecurityNotify allpublic
This bug has been closed for more than 14 weeks. Removing security view restrictions.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Sign in to add a comment