CVE-2016-3265:
ChakraCore RCE Vulnerability
8.8
CVSS ScoreBasic Information
Technical Details
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
Microsoft.ChakraCore | nuget | < 1.2.0.0 | 1.2.0.0 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stemmed from four key areas: (1) The InterpreterThunkEmitter stored a critical function pointer (interpreterThunk) in heap memory, making it susceptible to corruption (CWE-119). The commit replaced this with a boolean and directly fetched the thunk address during code generation. (2) InternalCopyNativeFloatArrayElements lacked proper type checks, enabling type confusion (CWE-119). (3) DirectSetItemAt was used in array operations without validating the target array's type, allowing species constructor abuse. (4) ArrayBuffer::TransferInternal used unsafe realloc, leaving uninitialized memory exposed. The patch introduced MemCpyZero/ReallocZero to mitigate this. Test cases in Array_TypeConfusion_bugs.js confirm these scenarios.