Cloudanix VulnDB

CVE-2023-38961

Critical · 9.8

CVSS

9.8

EPSS

1.5%

Published

Aug 21, 2023

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A flaw in an older version of a JavaScript engine used in many small devices lets attackers take full control of the device over the network without any user action.

Exploit Available
Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Low
Impact
Remote Code Execution
Component
Library
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Medium

What it actually does

Buffer overflow in scanner_is_context_needed within js-scanner-until.c allows out-of-bounds writes that corrupt memory and enable arbitrary code execution when processing crafted JavaScript input.

Why it matters to the business

Compromised embedded or IoT devices running affected JerryScript versions can be fully taken over remotely, leading to data theft, device hijacking, or use as attack infrastructure with no user interaction required.

How an attack unfolds

An attacker sends specially crafted JavaScript to a JerryScript-based application or device; the malformed input reaches scanner_is_context_needed, overflows a buffer, overwrites control structures, and redirects execution to attacker-supplied shellcode.

How to fix it

Upgrade to a patched JerryScript release once available; until then, isolate affected instances, apply input sanitization or sandboxing around the scanner, and monitor for anomalous memory behavior.

How to confirm the fix worked

Confirm JerryScript version is no longer 3.0.0; recompile from verified source and run regression tests on js-scanner-until.c; use memory-safety tools such as ASAN during validation.

Typical attack path

  1. Identify network-exposed or locally reachable JerryScript interpreter or application
  2. Craft and transmit malicious JavaScript payload targeting scanner_is_context_needed
  3. Trigger buffer overflow to achieve memory corruption and control-flow hijack
  4. Execute arbitrary code for persistence, data exfiltration, or lateral movement

How to detect it

Search application and system logs for repeated or malformed JavaScript parsing events immediately preceding crashes; inspect core dumps or memory dumps for anomalies near scanner functions; correlate with network traffic containing unusual script payloads.

What your security team should do

  • Inventory all deployments of JerryScript 3.0.0 immediately due to public exploit availability
  • Prioritize network segmentation and removal of direct internet exposure for affected devices
  • Establish monitoring for memory-corruption indicators in logs and process behavior
  • Track upstream JerryScript repository for patch release and test upgrades promptly

The record

Buffer Overflwo vulnerability in JerryScript Project jerryscript v.3.0.0 allows a remote attacker to execute arbitrary code via the scanner_is_context_needed component in js-scanner-until.c.

Affected packages

Ecosystem Package Introduced Fixed
Ubuntu:18.04:LTS iotjs 0 No fix
Ubuntu:22.04:LTS iotjs 0 No fix
Ubuntu:Pro:18.04:LTS iotjs 0 No fix
conan jerryscript 3.0.0 No fix

Related vulnerabilities