CVE-2023-34867
High · 7.5CVSS
7.5
EPSS
0.7%
Published
Jun 14, 2023
CISA due date
—
Cloudanix analysis
A bug in a JavaScript engine can let anyone crash applications or devices that use it, stopping them from working until restarted.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Library
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
An assertion failure in ecma_property_hashmap_create causes the Jerryscript engine to abort when processing certain malformed JavaScript property operations, resulting in an immediate process crash and denial of service.
Why it matters to the business
Services or devices embedding the affected Jerryscript version can be remotely terminated, leading to unplanned downtime and loss of availability for any application relying on the engine.
How an attack unfolds
An attacker supplies specially crafted JavaScript input that reaches the property hashmap creation routine, triggering the assertion failure and crashing the interpreter; public exploit code exists that demonstrates this crash path.
How to fix it
Upgrade to a patched Jerryscript release once available; in the interim, apply input sanitization or sandbox restrictions around untrusted script execution, and monitor upstream commits for the fix in ecma-property-hashmap.c.
How to confirm the fix worked
Confirm the Jerryscript version is newer than commit 05dbbd1, run regression tests that previously triggered the assertion, and verify the engine no longer aborts on the known crashing inputs.
Typical attack path
- Identify a network-accessible or locally reachable Jerryscript instance
- Craft or reuse a JavaScript payload that exercises the ecma_property_hashmap_create assertion
- Deliver the payload via script execution, file load, or network request
- Observe immediate process termination and service outage
How to detect it
Search process and application logs for sudden Jerryscript terminations, assertion failure messages referencing ecma_property_hashmap_create, or segfault/abort signals immediately following script execution events.
What your security team should do
- Prioritize patching Jerryscript in all embedded or server-side deployments due to available public exploit
- Disable execution of untrusted scripts until mitigation is in place
- Add runtime monitoring for abrupt Jerryscript process exits
- Track upstream repository for the corrected hashmap implementation
The record
Jerryscript 3.0 (commit 05dbbd1) was discovered to contain an Assertion Failure via the ecma_property_hashmap_create at jerry-core/ecma/base/ecma-property-hashmap.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
- CVE-2024-33255 Jerryscript commit cefd391 was discovered to contain an Assertion Failure via… Also affects iotjs
- CVE-2024-33260 Jerryscript commit cefd391 was discovered to contain a segmentation violation via the… Also affects iotjs
- CVE-2024-33258 Jerryscript commit ff9ff8f was discovered to contain a segmentation violation via the… Also affects iotjs
- CVE-2024-33259 Jerryscript commit cefd391 was discovered to contain a segmentation violation via the… Also affects iotjs
- CVE-2023-36109 Buffer Overflow vulnerability in JerryScript version 3.0, allows remote attackers to… Also affects iotjs
- CVE-2023-38961 Buffer Overflwo vulnerability in JerryScript Project jerryscript v.3.0.0 allows a remote… Also affects iotjs
- CVE-2023-36201 An issue in JerryscriptProject jerryscript v.3.0.0 allows an attacker to obtain sensitive… Also affects iotjs
- CVE-2023-34868 Jerryscript 3.0 (commit 05dbbd1) was discovered to contain an Assertion Failure via the… Also affects iotjs