VYPR
High severityNVD Advisory· Published Oct 10, 2018· Updated Aug 5, 2024

CVE-2018-8510

CVE-2018-8510

Description

Chakra scripting engine memory corruption in Microsoft Edge allows remote code execution via crafted web content.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

Chakra scripting engine memory corruption in Microsoft Edge allows remote code execution via crafted web content.

Vulnerability

A remote code execution vulnerability exists in the Chakra scripting engine used by Microsoft Edge and ChakraCore [1]. The flaw is a memory corruption issue when handling objects in memory [1]. Affected versions include Microsoft Edge on Windows 10 (all variants) and ChakraCore prior to the security update [2][3].

Exploitation

An attacker can host a specially crafted website or inject malicious content into a compromised site. When a user visits this site using Microsoft Edge, the memory corruption is triggered [4]. No authentication or user interaction beyond browsing is required; the vulnerability is remotely exploitable [2][4].

Impact

Successful exploitation allows an attacker to execute arbitrary code in the context of the current user. If the user has elevated privileges, the attacker can gain full system control, install programs, view/change data, or create new accounts [1][4].

Mitigation

Microsoft released security updates in October 2018 Patch Tuesday [2][4]. Users should apply the latest updates for Edge and Windows. For ChakraCore, the latest security-fixed version should be used; note that support for ChakraCore 1.11 ended in March 2021 [3]. No workaround is available; patching is required.

AI Insight generated on May 22, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
Microsoft.ChakraCoreNuGet
< 1.11.21.11.2

Affected products

3

Patches

1
9b36ce832c9a

[CVE-2018-8510] Edge - missing BytecodeUses for IsIn optimization leads to type confusion

https://github.com/chakra-core/ChakraCoreMatt GardnerAug 24, 2018via ghsa
1 file changed · +4 1
  • lib/Backend/GlobOptArrays.cpp+4 1 modified
    @@ -320,7 +320,8 @@ void GlobOpt::ArraySrcOpt::CheckVirtualArrayBounds()
                     {
                         Assert(instr->m_opcode == Js::OpCode::InlineArrayPush ||
                             instr->m_opcode == Js::OpCode::InlineArrayPop ||
    -                        instr->m_opcode == Js::OpCode::LdLen_A);
    +                        instr->m_opcode == Js::OpCode::LdLen_A ||
    +                        instr->m_opcode == Js::OpCode::IsIn);
                     }
     
                     eliminatedLowerBoundCheck = true;
    @@ -1988,6 +1989,8 @@ void GlobOpt::ArraySrcOpt::Optimize()
             {
                 TRACE_TESTTRACE_PHASE_INSTR(Js::Phase::BoundCheckEliminationPhase, instr, _u("Eliminating IsIn\n"));
     
    +            globOpt->CaptureByteCodeSymUses(instr);
    +
                 instr->m_opcode = Js::OpCode::Ld_A;
     
                 IR::AddrOpnd * addrOpnd = IR::AddrOpnd::New(func->GetScriptContextInfo()->GetTrueAddr(), IR::AddrOpndKindDynamicVar, func, true);
    

Vulnerability mechanics

Generated on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

9

News mentions

0

No linked articles in our index yet.