> CVE-2026-54500 [MEDIUM]

« BACK_TO_HOME
PUBLISHED
2026-07-01 00:16
MODIFIED
2026-07-01 00:16
CVSS_SCORE V3
5.3
EPSS (Prob. Exploit)
0.20%
Top 91.0%
DATA SOURCES:
NVD đź”— 2026-07-01 CWE MITRE đź”— 2026-11-01 FIRST EPSS đź”— 2026-10-25 GITHUB đź”— 2026-10-29

> DESCRIPTION

Oj (Optimized JSON) is a JSON parser and Object marshaller packaged as a Ruby gem. In versions prior to 3.17.3, Oj.load in :object mode reads uninitialized stack memory (and, for long keys, reads out of bounds) when parsing a JSON object whose key is 254 bytes or longer. The interned bytes can surface to the caller, disclosing process stack memory. In ext/oj/intern.c, form_attr() handles the long-key path by allocating a heap buffer, `b`, populating it with the attribute name, and then freeing it — but it passed the uninitialized stack buffer buf (not b) to rb_intern3(). rb_intern3 therefore reads len + 1 bytes of uninitialized stack memory. When the key length is >= 256, it also reads out of bounds past the 256-byte buf. The resulting bytes are interned and can reach the caller via the produced Symbol or via the EncodingError message raised on invalid UTF-8, leaking process stack contents. This issue has been fixed in version 3.17.3.

> AFFECTED_PRODUCTS

ℹ️ Aucun produit affecté n'a encore été publié par NVD pour cette CVE.

> CVSS V3 METRICS

CVSS_VECTOR
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
EXPLOITABILITY
3.9
IMPACT
1.4

> MÉTRIQUES CVSS DÉTAILLÉES

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Métrique Valeur Interprétation
AV (Vecteur d'Attaque)
Attack Vector
Network (N)
Exploit possible à distance via réseau (HTTP, API, etc.)
AC (Complexité d'Attaque)
Attack Complexity
Low (L)
Peu de conditions requises pour exploiter
PR (Privilèges Requis)
Privileges Required
None (N)
Aucune authentification requise
UI (Interaction Utilisateur)
User Interaction
None (N)
Aucune interaction utilisateur nécessaire
S (Périmètre)
Scope
Unchanged (U)
Impact reste dans le périmètre du composant compromis
C (Impact Confidentialité)
Confidentiality Impact
Low (L)
Divulgation limitée d'informations
I (Impact Intégrité)
Integrity Impact
None (N)
Aucune modification de données possible
A (Impact Disponibilité)
Availability Impact
None (N)
Aucune interruption de service

> RÉSUMÉ DES IMPACTS

Confidentialité
Low
Divulgation limitée d'informations
Intégrité
None
Aucune modification de données possible
Disponibilité
None
Aucune interruption de service

> WEAKNESSES

CWE-125 CWE-908

> CWE DETAILED DESCRIPTIONS

CWE-125: Out-of-bounds Read - The product reads data past the end, or before the beginning, of the intended buffer. | CWE-908: Use of Uninitialized Resource - The product uses or accesses a resource that has not been initialized.

> GITHUB SECURITY ADVISORY

GHSA-fm7p-mprw-wjm9 MODERATE

Oj: intern.c form_attr (uninitialized stack read)

AFFECTED PACKAGES:
RUBYGEMS / oj
< 3.17.3
Fixed in: 3.17.3

> HISTORIQUE DES MODIFICATIONS

Première apparition
01/07/2026 00:16
Source: NVD
📊 ENRICHISSEMENT 01/07/2026 06:01
CWE
Champ modifié: Description CWE
Ancienne valeur:
N/A
Nouvelle valeur:
CWE-125: Out-of-bounds Read - The product reads data past the end, or before the beginning, of the intended buffer. | CWE-908: Use of Uninitialized Resource - The product uses or accesses a resource t...
Total des modifications: 1 Dernière mise à jour: 4 months ago

> REFERENCES

https://github.com/ohler55/oj/security/advisories/GHSA-fm7p-mprw-wjm9
« BACK_TO_HOME