Miggo Logo

CVE-2018-8556: ChakraCore RCE Vulnerability

7.5

CVSS Score
3.0

Basic Information

EPSS Score
0.89812%
Published
5/13/2022
Updated
10/6/2023
KEV Status
No
Technology
TechnologyC#

Technical Details

CVSS Vector
CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
Microsoft.ChakraCorenuget< 1.11.31.11.3

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from an improper array type check in the bailout decision logic. The patch changes the condition from checking 'IsAnyArray() && GetObjectType() != ObjectWithArray' to 'IsArray()', indicating the original check was insufficient. This function determines whether to bail out during JIT optimization when array structures might change, and the flawed check could allow dangerous optimizations leading to out-of-bounds writes.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

* r*mot* *o** *x**ution vuln*r**ility *xists in t** w*y t**t t** ***kr* s*riptin* *n*in* **n*l*s o*j**ts in m*mory in Mi*roso*t ****, *k* "***kr* S*riptin* *n*in* M*mory *orruption Vuln*r**ility." T*is *****ts Mi*roso*t ****, ***kr**or*. T*is *V* I*

Reasoning

T** vuln*r**ility st*ms *rom *n improp*r *rr*y typ* ****k in t** **ilout ***ision lo*i*. T** p*t** ***n**s t** *on*ition *rom ****kin* 'Is*ny*rr*y() && **tO*j**tTyp*() != O*j**tWit**rr*y' to 'Is*rr*y()', in*i**tin* t** ori*in*l ****k w*s insu**i*i*nt