CVE-2026-102664
Received Received - Intake

Information Disclosure in ProxySQL via Compression Handling

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

Publication date: 2026-11-04

Last updated on: 2026-11-04

Assigner: GitHub, Inc.

Description

ProxySQL is a proxy for MySQL and its forks, as well as PostgreSQL. Prior to 3.0.10, 3.1.10, and 4.0.10, decompress_mysql_payload() in lib/mysql_data_stream.cpp accepts a zlib stream when uncompress() returns Z_OK without checking that the actual output length equals the attacker-controlled payload_length. An authenticated MySQL client that negotiates compression can overstate payload_length, causing buffer2array() to parse the uninitialized tail of a heap buffer as MySQL packet headers and forward stale data to the backend. Backend error responses can disclose prior SQL queries, result data, credentials, or session state, and malformed lengths can also cause excessive allocations. This issue is fixed in versions 3.0.10, 3.1.10, and 4.0.10.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-11-04
Last Modified
2026-11-04
Generated
2026-11-05
AI Q&A
2026-11-04
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 3 associated CPEs
Vendor Product Version / Range
sysown proxysql < 3.0.10
sysown proxysql >= 3.1.0, < 3.1.10
sysown proxysql >= 4.0.0, < 4.0.10

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-908 The product uses or accesses a resource that has not been initialized.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability in ProxySQL versions before 3.0.10, 3.1.10, and 4.0.10 involves improper validation of zlib decompression output. An authenticated MySQL client can send a compressed packet with a large declared length but fewer actual bytes, leaving uninitialized heap memory. This memory may be parsed as MySQL packet headers, exposing sensitive data like SQL queries, credentials, or session state from other users.

Detection Guidance

Check ProxySQL version with 'proxysql --version' or 'mysql -u admin -padmin -h 127.0.0.1 -P 6032 -e "SELECT @@version"'. If running versions before 3.0.10, 3.1.10, or 4.0.10, the system is vulnerable. Monitor for unusual memory usage or crashes in ProxySQL logs.

Impact Analysis

An attacker with valid credentials could exploit this to leak sensitive data such as prior SQL queries, authentication credentials, result data, or session state from other users. Additionally, malformed headers might cause excessive memory allocation, leading to denial of service.

Compliance Impact

This vulnerability could lead to unauthorized disclosure of personal or sensitive data, violating GDPR and HIPAA compliance requirements for data protection and confidentiality. Organizations using affected ProxySQL versions may face regulatory penalties or legal consequences.

Mitigation Strategies

Upgrade ProxySQL to version 3.0.10, 3.1.10, or 4.0.10 or later immediately. Disable MySQL compression if not required by setting 'mysql-have_compression=0' in ProxySQL configuration.

Chat Assistant

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

EPSS Chart

Security Radar

News mentioning this vulnerability
Loading related security news...