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

Issue 624705 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Last visit > 30 days ago
Closed: Jul 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug



Sign in to add a comment

Unreachable code in asm-wasm-builder.cc

Project Member Reported by ClusterFuzz, Jun 30 2016

Issue description

Detailed report: https://cluster-fuzz.appspot.com/testcase?key=5432245146091520

Fuzzer: mbarbella_js_mutation
Job Type: linux_asan_d8_v8_arm_dbg
Platform Id: linux

Crash Type: Unreachable code
Crash Address: 
Crash State:
  asm-wasm-builder.cc
  
Regressed: V8: r35045:35048

Minimized Testcase (0.47 Kb):
Download: https://cluster-fuzz.appspot.com/download/AMIfv96n1glzvD3UGURWNqAq2mw2v6WNP3uUOlDU_VPKELU2HrC1SdEGynLAOeAnXRNkix2wMWFFaxncXiX4mq2pCHwfpDREYTfnEpqD0qD6Lpk40xkwlE49ja8ss54NyECjAafLKBnKbciapzB1Z_k1kJD8uq2qCw?testcase_id=5432245146091520
function __f_104(stdlib, buffer) {
  "use asm";
  var __v_33 = new stdlib.Int32Array(buffer);
  function __f_21() {
__v_33[2147483648]|9 + -1 | -7;
  }
  return {__f_21: __f_21};
}
  var __v_22 = [ [, '>> 0'], [Uint8Array, 'Uint8Array'], [][ '>> 1'], [][ '>> 2']];
  for (var __v_30 = 0; __v_30 < __v_22.length; __v_30++) {
    var __v_5 = __f_104.toString();
    __v_5 = __v_5.replace('Int32Array', __v_22[__v_30][1]);
    var module = Wasm.instantiateModuleFromAsm(__v_5);
  }


Filer: mstarzinger

See https://dev.chromium.org/Home/chromium-security/bugs/reproducing-clusterfuzz-bugs for more information.
 
Cc: titzer@chromium.org aseemgarg@chromium.org
Owner: bradnelson@chromium.org
Status: Assigned (was: Available)

Comment 2 by titzer@chromium.org, Jun 30 2016

This is another case of the unsound use of intersections in AsmTyper::VisitWithExpectation.
Components: -Blink>JavaScript Blink>JavaScript>WebAssembly
Labels: -Pri-1 BlocksAsmWasmLaunch Pri-2
Project Member

Comment 4 by ClusterFuzz, Jul 12 2016

ClusterFuzz has detected this issue as fixed in range 37692:37693.

Detailed report: https://cluster-fuzz.appspot.com/testcase?key=5432245146091520

Fuzzer: mbarbella_js_mutation
Job Type: linux_asan_d8_v8_arm_dbg
Platform Id: linux

Crash Type: Unreachable code
Crash Address: 
Crash State:
  asm-wasm-builder.cc
  
Regressed: V8: r35045:35048
Fixed: V8: r37692:37693

Minimized Testcase (0.47 Kb):
Download: https://cluster-fuzz.appspot.com/download/AMIfv96n1glzvD3UGURWNqAq2mw2v6WNP3uUOlDU_VPKELU2HrC1SdEGynLAOeAnXRNkix2wMWFFaxncXiX4mq2pCHwfpDREYTfnEpqD0qD6Lpk40xkwlE49ja8ss54NyECjAafLKBnKbciapzB1Z_k1kJD8uq2qCw?testcase_id=5432245146091520
function __f_104(stdlib, buffer) {
  "use asm";
  var __v_33 = new stdlib.Int32Array(buffer);
  function __f_21() {
__v_33[2147483648]|9 + -1 | -7;
  }
  return {__f_21: __f_21};
}
  var __v_22 = [ [, '>> 0'], [Uint8Array, 'Uint8Array'], [][ '>> 1'], [][ '>> 2']];
  for (var __v_30 = 0; __v_30 < __v_22.length; __v_30++) {
    var __v_5 = __f_104.toString();
    __v_5 = __v_5.replace('Int32Array', __v_22[__v_30][1]);
    var module = Wasm.instantiateModuleFromAsm(__v_5);
  }


See https://dev.chromium.org/Home/chromium-security/bugs/reproducing-clusterfuzz-bugs 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, Jul 13 2016

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

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

Comment 6 by sheriffbot@chromium.org, Nov 22 2016

Labels: -Restrict-View-EditIssue
Removing EditIssue view restrictions from ClusterFuzz filed bugs. If you believe that this issue should still be restricted, please reapply the label.

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

Sign in to add a comment