A heap-based buffer over-read was discovered in wasm::WasmBinaryBuilder::visitCall in wasm-binary.cpp in Binaryen 1.38.22. A crafted wasm input can cause a segmentation fault, leading to denial-of-service, as demonstrated by wasm-merge.
[
{
"target": {
"function": "Asm2WasmBuilder::processAsm",
"file": "src/asm2wasm.h"
},
"id": "CVE-2019-7700-4f2294f7",
"digest": {
"function_hash": "143737180360553465436118507774498010635",
"length": 21129.0
},
"signature_version": "v1",
"deprecated": false,
"source": "https://github.com/webassembly/binaryen/commit/777d33d40ff030f1711c40bf3cd5bc4bc36af313",
"signature_type": "Function"
},
{
"target": {
"file": "src/wasm-emscripten.h"
},
"id": "CVE-2019-7700-55914de7",
"digest": {
"threshold": 0.9,
"line_hashes": [
"197834386609990190660658376494400634047",
"230751627369602897535367828388051389677",
"336859316406527781017065435234404248053",
"41276762427330585015445567180683194467"
]
},
"signature_version": "v1",
"deprecated": false,
"source": "https://github.com/webassembly/binaryen/commit/777d33d40ff030f1711c40bf3cd5bc4bc36af313",
"signature_type": "Line"
},
{
"target": {
"file": "src/tools/wasm-emscripten-finalize.cpp"
},
"id": "CVE-2019-7700-7bcdf074",
"digest": {
"threshold": 0.9,
"line_hashes": [
"67763751847475704613137488435997492917",
"11092678074950976786541223300914299782",
"83014327735221591191479881775992125775",
"32795490460723772134172091328908985275",
"150081489502840546503510411609202865508",
"186502562418831327916913906281059240037",
"81062518221878434523040895973597062096",
"255791717607742475400212674930341013721",
"279059291008106175449343664540853882718",
"119516556563219962869888727107305829281",
"273268632913118307560910743007064707345",
"206270979931966135522688490632349305102",
"205007461897933857657602724876834633565",
"129589606498150712070120989213094759998",
"192680331533594347188278206392354265110",
"202703705032309117778443815604253559795",
"27147988621632559671180398895940792122",
"237128518898913234383340250069850836436",
"30862407209301333969246506920178724397",
"23561735558910007848793400252220641720",
"8809195615572420798691655763271322252",
"205153151581145418897379838572825814524",
"254667827196645618469755417729989716259",
"85227045920208427987069202340945838114"
]
},
"signature_version": "v1",
"deprecated": false,
"source": "https://github.com/webassembly/binaryen/commit/777d33d40ff030f1711c40bf3cd5bc4bc36af313",
"signature_type": "Line"
},
{
"target": {
"function": "main",
"file": "src/tools/wasm-emscripten-finalize.cpp"
},
"id": "CVE-2019-7700-ab34f2ab",
"digest": {
"function_hash": "122687133488173724193644540400869789453",
"length": 5464.0
},
"signature_version": "v1",
"deprecated": false,
"source": "https://github.com/webassembly/binaryen/commit/777d33d40ff030f1711c40bf3cd5bc4bc36af313",
"signature_type": "Function"
},
{
"target": {
"file": "src/wasm/wasm-emscripten.cpp"
},
"id": "CVE-2019-7700-b308183b",
"digest": {
"threshold": 0.9,
"line_hashes": [
"311603147456977400152429201973903889504",
"267254175071185226879431060299918005990",
"189614778024756723211343449732418475698",
"16919839466976018149161181660787991618",
"186424230218048978421671979781596487795",
"284363801826454717926384585556320189329",
"113500351515846633073416403242055535705",
"168914480211122056088036509523057995414",
"35580501077459053214680905063622064199",
"167467896953935516288542812179644102333",
"146423767868341463157147956075368395472",
"299488347443531629906127720449003520723"
]
},
"signature_version": "v1",
"deprecated": false,
"source": "https://github.com/webassembly/binaryen/commit/777d33d40ff030f1711c40bf3cd5bc4bc36af313",
"signature_type": "Line"
},
{
"target": {
"file": "src/asm2wasm.h"
},
"id": "CVE-2019-7700-c736ddf5",
"digest": {
"threshold": 0.9,
"line_hashes": [
"93311049439594093655913658023033474700",
"29165148232231256482909389094154516982",
"267255509956472768128922367426232857231",
"313400781351748657887649211950082601060",
"9879456224345171386945151762644809925",
"72436541964025692405781322418071947728",
"160644238717616448485963672048490716178",
"131420967666337165016804812834186228928",
"31806524227782282141341988971711701624",
"114848884344023823327877959484529743021",
"16532795352022162883742029384269484770",
"219824183060125624607695481158430492146",
"18644794995939299628455904051998062848",
"295919784213093232839483042343648558836",
"105147925275387406829980559424256433409"
]
},
"signature_version": "v1",
"deprecated": false,
"source": "https://github.com/webassembly/binaryen/commit/777d33d40ff030f1711c40bf3cd5bc4bc36af313",
"signature_type": "Line"
},
{
"target": {
"function": "EmscriptenGlueGenerator::generateStackInitialization",
"file": "src/wasm/wasm-emscripten.cpp"
},
"id": "CVE-2019-7700-f0f2d28b",
"digest": {
"function_hash": "321581028299307693081369001656568394191",
"length": 380.0
},
"signature_version": "v1",
"deprecated": false,
"source": "https://github.com/webassembly/binaryen/commit/777d33d40ff030f1711c40bf3cd5bc4bc36af313",
"signature_type": "Function"
}
]