CVE-2026-12478
Awaiting Analysis Awaiting Analysis - Queue

Integer Overflow Leading to OOB Read in libsoup WebSocket Client

Vulnerability report for CVE-2026-12478, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-07-14

Last updated on: 2026-07-15

Assigner: Red Hat, Inc.

Description

The fix for CVE-2026-0716 (commit 6ff7ef0, libsoup 3.6.6) placed the integer overflow guard inside the if (masked) block, leaving unmasked server-to-client frames unprotected. A malicious WebSocket server can send a crafted unmasked frame with a payload length near UINT64_MAX to trigger an OOB read in a libsoup-based client when max_incoming_payload_size is set toΒ 0.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-07-14
Last Modified
2026-07-15
Generated
2026-08-03
AI Q&A
2026-07-14
EPSS Evaluated
2026-08-02
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
gnome libsoup 3.6.6

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-125 The product reads data past the end, or before the beginning, of the intended buffer.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CVE-2026-12478 is a vulnerability in the libsoup library, which is used for handling WebSocket communications in applications. The issue stems from an incomplete fix for a previous vulnerability, CVE-2026-0716.

The original fix for CVE-2026-0716 placed an integer overflow guard inside a conditional block that only applied to masked WebSocket frames. This left unmasked server-to-client frames unprotected. A malicious WebSocket server can exploit this by sending a crafted unmasked frame with a payload length close to UINT64_MAX (the maximum value for a 64-bit unsigned integer).

When a libsoup-based client processes this frame and has max_incoming_payload_size set to 0, it can trigger an out-of-bounds (OOB) read. This means the client may read memory outside the intended bounds, potentially exposing sensitive data or causing unexpected behavior.

Detection Guidance

Detecting this vulnerability requires checking if your system uses a vulnerable version of the libsoup library and verifying WebSocket traffic for malicious unmasked frames with payload lengths near UINT64_MAX.

  • Check the installed libsoup version on your system. For example, on a Linux system, you can use the following command to check the version: pkg-config --modversion libsoup-3.0
  • If the version is earlier than 3.6.6 or does not include the fix for CVE-2026-0716 (commit 6ff7ef0), the system may be vulnerable.
  • Monitor WebSocket traffic for unmasked frames with unusually large payload lengths. Tools like Wireshark or tcpdump can be used to capture and analyze WebSocket traffic. For example: tcpdump -i any -w websocket_traffic.pcap 'port 80 or port 443'
  • Inspect the captured traffic for unmasked frames with payload lengths close to UINT64_MAX (18446744073709551615). This may indicate an attempt to exploit the vulnerability.

Note that detecting this vulnerability in active traffic requires deep packet inspection and may not be straightforward without specialized tools or custom scripts.

Impact Analysis

This vulnerability can impact you in several ways if you are using a libsoup-based client application:

  • Exposure of sensitive data: An attacker could exploit this flaw to read memory outside the intended bounds, potentially accessing confidential information stored in the client's memory.
  • Application crashes or instability: The out-of-bounds read could cause the client application to crash or behave unpredictably, leading to denial-of-service conditions.
  • Targeted attacks: If you are connecting to untrusted or malicious WebSocket servers, an attacker could craft specific frames to exploit this vulnerability and gain unauthorized access to memory.

The impact is particularly relevant for systems where libsoup is used to handle WebSocket communications, especially if the max_incoming_payload_size is set to 0.

Compliance Impact

This vulnerability could affect compliance with common standards and regulations in the following ways:

  • GDPR (General Data Protection Regulation): If the out-of-bounds read exposes personally identifiable information (PII) of EU citizens, it could lead to a data breach. Under GDPR, organizations must protect PII and report breaches within 72 hours. Failure to do so could result in significant fines.
  • HIPAA (Health Insurance Portability and Accountability Act): For organizations handling protected health information (PHI), this vulnerability could lead to unauthorized access to sensitive patient data. HIPAA requires strict safeguards for PHI, and a breach could result in penalties and legal consequences.
  • Other standards: Compliance frameworks like ISO 27001, SOC 2, or PCI DSS require organizations to maintain secure systems and protect sensitive data. A vulnerability that allows unauthorized memory access could violate these requirements, leading to non-compliance and potential auditing or certification issues.

Organizations using affected versions of libsoup should assess their exposure and apply patches or mitigations to avoid potential compliance violations.

Mitigation Strategies

To mitigate this vulnerability, follow these immediate steps:

  • Upgrade the libsoup library to the latest version that includes the fix for CVE-2026-12478. Ensure the fix for CVE-2026-0716 (commit 6ff7ef0) is properly applied and extended to cover unmasked frames.
  • If upgrading is not immediately possible, apply the patch manually by ensuring the integer overflow guard is placed outside the if (masked) block in the WebSocket frame processing code.
  • Configure applications using libsoup to set a reasonable max_incoming_payload_size value instead of 0. This limits the impact of any potential OOB read attempts.
  • Monitor WebSocket connections for suspicious activity, such as unmasked frames with unusually large payload lengths, and block or terminate such connections.
  • Review and restrict connections to untrusted WebSocket servers, as exploitation requires interaction with a malicious server.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-12478. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart