CVE-2026-23737

Description

A flaw was found in seroval, a JavaScript library designed to convert complex data into a string format. This vulnerability exists within the library's JSON deserialization process, which is responsible for converting string data back into usable objects. A remote attacker can exploit improper input handling in the fromJSON and fromCrossJSON functions to execute arbitrary JavaScript code. Successful exploitation requires the attacker to make multiple specific requests and possess some understanding of how the serialized data is processed, ultimately leading to unauthorized control over the affected system.

Statement

This vulnerability is rated Important for Red Hat. The seroval library, used in components like forgejo in Fedora and EPEL, is susceptible to remote code execution through improper JSON deserialization. Exploitation requires an attacker to perform multiple requests and possess partial knowledge of how serialized data is processed during runtime.

Mitigation

Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base, or stability.

Understanding the Weakness (CWE)

Integrity

Technical Impact: Modify Application Data; Unexpected State

Attackers can modify unexpected objects or data that was assumed to be safe from modification. Deserialized data or code could be modified without using the provided accessor functions, or unexpected functions could be invoked.

Availability

Technical Impact: DoS: Resource Consumption (CPU)

If a function is making an assumption on when to terminate, based on a sentry in a string, it could easily never terminate.

Other

Technical Impact: Varies by Context

The consequences can vary widely, because it depends on which objects or methods are being deserialized, and how they are used. Making an assumption that the code in the deserialized object is valid is dangerous and can enable exploitation. One example is attackers using gadget chains to perform unauthorized actions, such as generating a shell.

Frequently Asked Questions

Want to get errata notifications? Sign up here.