Vulnerability DatabaseGHSA-whpx-q3rq-w8jc

GHSA-whpx-q3rq-w8jc
JavaScript vulnerability analysis and mitigation

Overview

The vulnerability (GHSA-whpx-q3rq-w8jc) affects the SES package (npm) and was discovered in versions prior to 0.16.0. The issue was published on October 19, 2022, and involves the improper hardening of TypedArrays with non-canonical numeric property names in Hardened JavaScript. This vulnerability affects the security mechanism that allows programs to safely share objects with co-tenant programs (GitHub Advisory).

Technical details

The vulnerability stems from a defect in the harden functionality where properties with names that parse as numbers but are not in their canonical representation (such as '+0' or '' which are equivalent to '0') remain writable after hardening. This occurs because TypedArray instances cannot be frozen with Object.isFrozen, and the system instead makes them non-extensible while making all non-indexed properties non-writable and non-configurable. The issue specifically affects the handling of non-canonical numeric property names in TypedArrays (GitHub Advisory).

Impact

The vulnerability could lead to API pollution attacks when TypedArrays are shared between mutually suspicious parties. While hardened TypedArrays are intended to only allow communication through numbers within their bounds, this vulnerability inadvertently creates a mechanism for third parties to communicate arbitrary objects through these non-canonical properties. This affects instances where programs rely on harden to prevent modifications to their API surface (GitHub Advisory).

Exploitability

The vulnerability can be exploited in scenarios where TypedArrays are shared between co-tenant programs, particularly when these programs rely on harden to ensure secure communication. The exploitation requires access to the shared TypedArray instance and knowledge of non-canonical numeric property representations (GitHub Advisory).

Mitigation and workarounds

The vulnerability has been patched in SES version 0.16.0, which ensures that properties with non-canonical numeric representations are properly recognized and made non-configurable. As a workaround, users are advised to avoid sharing TypedArrays between co-tenant programs and instead create wrapper objects that produce read-only views of the underlying data. Collections shared between co-tenant programs should be attenuated to either read- or write-only facets (GitHub Advisory).

Additional resources


SourceThis report was generated using AI

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-77415CRITICAL9.3
  • JavaScript logoJavaScript
  • jsonata
NoYesAug 21, 2026
CVE-2026-77414CRITICAL9.3
  • JavaScript logoJavaScript
  • jsonata
NoYesAug 21, 2026
CVE-2026-77413CRITICAL9.3
  • JavaScript logoJavaScript
  • jsonata
NoYesAug 21, 2026
CVE-2026-63421HIGH7.5
  • JavaScript logoJavaScript
  • @keystone-6/core
NoYesAug 21, 2026
CVE-2026-53509MEDIUM5.7
  • JavaScript logoJavaScript
  • @aborruso/ckan-mcp-server
NoYesAug 21, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management