Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessDeliver malicious JS to victim
-
DeliveryVictim runs script in Escargot app
-
ExploitCall ArrayBuffer.prototype.transfer with oversized length
-
ExecutionTrigger out-of-bounds write
-
ImpactCorrupt heap memory and execute code
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, write limits
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that the target application embedding Escargot execute attacker-controlled JavaScript (UI:R - the user must load or run the malicious script), and the engine build must predate the PR #1579 fix (vulnerable commit 36f5fb58366a67b713c02f6fd985e924fcc09e31). The concrete trigger is a call to ArrayBuffer.prototype.transfer() with a requested new byte length that exceeds the buffer's maxLength (or against a detached buffer), reaching the unguarded code in builtinArrayBufferTransfer. No authentication is required (PR:N), and attack complexity is low (AC:L). The limiting factors that reduce realistic risk are the mandatory user interaction and the requirement that the deployment actually runs untrusted JavaScript - environments executing only trusted first-party scripts are not practically exposed. |
| Impact | The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H, score 8.8) indicates a low-complexity, unauthenticated attack that delivers attacker-controlled script content over the network but requires user interaction - the victim must execute the malicious JavaScript in an Escargot-based application. The triad of C:H/I:H/A:H reflects the memory-corruption potential typical of OOB writes in a JS engine. However, key prioritization signals are missing: no EPSS exploitation-probability score was provided, the CVE is not listed in CISA KEV (so this is not confirmed active exploitation), and the only public reference is the upstream fix PR rather than working exploit code. Real-world risk is therefore driven by exposure rather than confirmed weaponization: deployments that execute untrusted JavaScript (e.g., embedded browsers, app runtimes on TVs/IoT) face meaningful risk, whereas systems running only trusted first-party scripts are largely insulated by the UI:R requirement. Note a nuance worth verifying: AV:N here means the malicious script is network-delivered, but actual triggering depends on the target choosing to run that script (UI:R), so it is not a purely passive remote compromise. |
| Exploit ScenarioDerived | An attacker crafts a malicious web page or application payload containing JavaScript that calls ArrayBuffer.prototype.transfer() with a manipulated length exceeding the buffer's maximum, then lures a user to open it in an Escargot-powered application (the UI:R requirement). When the script runs, the missing bounds check causes a write past the allocated buffer, corrupting heap memory and potentially leading to arbitrary code execution within the application's process. No public proof-of-concept exploit code has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – May 28, 2026
Out-of-bounds write in Samsung's Escargot JavaScript engine allows attacker-supplied scripts to corrupt memory through the ArrayBuffer.prototype.transfer() built-in, with high confidentiality, integrity, and availability impact (CVSS 8.8). The flaw stems from a missing length-bounds check when transferring an ArrayBuffer to a new byte length, enabling writes past the allocated buffer that can lead to remote code execution if a victim runs the malicious script. No public exploit has been identified at time of analysis, and no EPSS or CISA KEV data was provided.
RemediationAI
Upstream fix available (PR/commit); released patched version not independently confirmed - rebuild or update Escargot to a revision that incorporates the merge of https://github.com/Samsung/escargot/pull/1579, which adds the detached-buffer check and the newByteLength-versus-maxLength RangeError guard in src/builtins/BuiltinArrayBuffer.cpp. Because no tagged patched release version is present in the provided data, integrators embedding Escargot should pull the fixed commit directly and recompile downstream products. Where immediate patching is not possible, the most effective compensating control is to restrict the engine to trusted JavaScript only and avoid executing untrusted/remote script content (trade-off: breaks any feature relying on third-party or dynamically loaded scripts); if the runtime exposes a configuration hook, disabling or shimming ArrayBuffer.prototype.transfer would remove the vulnerable path at the cost of breaking legitimate transfer/resizable-ArrayBuffer functionality.
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Escargot (cpe:2.3:a:samsung_open_source:escargot) is Samsung's lightweight, memory-efficient ECMAScript engine designed for embedded and resource-constrained environments such as IoT devices and Tizen/smart-TV appliances (consistent with the 'samsung.tv_appliance' reporter). The root cause is CWE-787 (Out-of-bounds Write), located in the ArrayBuffer.prototype.transfer implementation in src/builtins/BuiltinArrayBuffer.cpp (builtinArrayBufferTransfer). Per the PR #1579 diff, the vulnerable code failed to (1) re-check for a detached buffer and (2) validate that the requested newByteLength does not exceed the buffer's maxLength before performing the transfer/copy. The fix adds throwTypeErrorIfDetached() and a RangeError when newByteLength > maxLength, preventing the engine from copying or sizing beyond the legitimate buffer bounds.
Know when Samsung Open Source gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Primary rating from Vendor (samsung.tv_appliance) · only source for this CVE.
CVSS VectorVendor: samsung.tv_appliance
DescriptionCVE.org
Out-of-bounds write vulnerability in Samsung Open Source Escargot allows Overflow Buffers.
This issue affects Escargot: 36f5fb58366a67b713c02f6fd985e924fcc09e31.
Executive ViewAI
A memory corruption vulnerability (CVE-2026-8915, CVSS 8.8) in Samsung's Escargot JavaScript engine permits remote code execution through malicious scripts exploiting ArrayBuffer operations; no public exploit identified at time of analysis. Organizations deploying Samsung devices-including smart TVs and IoT endpoints-face potential system compromise with no vendor patch currently available. This vulnerability creates a critical risk for any environment where these devices process untrusted JavaScript content.
No vendor-released patch identified at time of analysis. Interim mitigations: disable JavaScript execution from untrusted sources where operationally feasible; implement network segmentation to isolate Escargot-enabled devices from critical systems; restrict outbound internet access from affected devices; establish continuous monitoring of Samsung and CISA channels for patch availability; consider temporary device replacement for business-critical functions; evaluate Content Security Policy and script whitelisting controls.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.
More in Samsung Open Source
View allHeap buffer overflow in Samsung's rlottie animation rendering library allows remote denial-of-service via maliciously cr
Uncontrolled resource consumption in Samsung's open-source rlottie library allows a crafted Lottie animation file to tri
OS command injection in the Samsung QA-Board backend allows unauthenticated remote attackers to execute arbitrary operat
Memory corruption in Samsung Open Source Escargot's code-cache and value-deserialization handling can allow unauthentica
Out-of-bounds write in Samsung Open Source Escargot JavaScript engine allows local attackers to execute arbitrary code o
Heap-based buffer overflow in Samsung Open Source Escargot JavaScript engine enables out-of-bounds memory writes with hi
Type confusion vulnerability in Samsung Open Source Escargot JavaScript engine allows local attackers with user interact
Out-of-bounds write in Samsung's Escargot lightweight JavaScript engine (commit 590345cc6258317c5da850d846ce6baaf2afc2d3
Heap-based buffer overflow in Samsung's Escargot JavaScript engine (commit 590345cc6258317c5da850d846ce6baaf2afc2d3) all
Use-after-free memory corruption in Samsung's Escargot JavaScript engine (commit 590345cc6258317c5da850d846ce6baaf2afc2d
Out-of-bounds read in Samsung Open Source Escargot JavaScript engine exposes sensitive memory content to remote attacker
Out-of-bounds read in Samsung Open Source Escargot JavaScript engine allows local attackers to leak sensitive memory con
EUVD-2026-32679
GHSA-h78v-r6mm-5vwf
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB