CVE-2026-84161
Full vulnerability record from the local CVENow database.
Description
When an operator enables store.analysis_statistics_dir, a network client with PRODUCT_STORE permission for a product can call that product's storeAnalysisStatistics Thrift-over-HTTP method. CodeChecker 6.29.0 decodes the attacker-controlled Base64 string and passes the complete compressed input to one-shot zlib.decompress(). No maximum decompressed size is enforced. This gives a correctly authorized, non-superuser store account a high-ratio memory and persistent-disk amplification primitive. The complete output is first materialized as a Python bytes object and is then written to the configured statistics directory. A sufficiently scaled payload can exhaust the API worker or host memory and impair CodeChecker availability. The shipped value of store.analysis_statistics_dir is null, so the affected feature is disabled by default. The primary assessment does not rely on authentication being disabled. There is no authorization bypass and no path traversal in this report.
View original CVE JSON
{
"id": "CVE-2026-84161",
"sourceIdentifier": "85b1779b-6ecd-4f52-bcc5-73eac4659dcf",
"published": "2026-11-06T11:17:17.190",
"lastModified": "2026-11-06T11:17:17.190",
"vulnStatus": "Received",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "When an operator enables store.analysis_statistics_dir, a network client with PRODUCT_STORE permission for a product can call that product's storeAnalysisStatistics Thrift-over-HTTP method. CodeChecker 6.29.0 decodes the attacker-controlled Base64 string and passes the complete compressed input to one-shot zlib.decompress(). No maximum decompressed size is enforced.\n\n\n\nThis gives a correctly authorized, non-superuser store account a high-ratio memory and persistent-disk amplification primitive. The complete output is first materialized as a Python bytes object and is then written to the configured statistics directory. A sufficiently scaled payload can exhaust the API worker or host memory and impair CodeChecker availability.\n\n\n\nThe shipped value of store.analysis_statistics_dir is null, so the affected feature is disabled by default. The primary assessment does not rely on authentication being disabled. There is no authorization bypass and no path traversal in this report."
}
],
"affected": [
{
"source": "85b1779b-6ecd-4f52-bcc5-73eac4659dcf",
"affectedData": [
{
"vendor": "Ericsson",
"product": "CodeChecker",
"defaultStatus": "unaffected",
"versions": [
{
"version": "0",
"lessThan": "6.29.3",
"versionType": "semver",
"status": "affected",
"changes": [
{
"at": "6.29.3",
"status": "unaffected"
}
]
}
]
}
]
}
],
"metrics": {
"cvssMetricV31": [
{
"source": "85b1779b-6ecd-4f52-bcc5-73eac4659dcf",
"type": "Secondary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:N/A:H",
"baseScore": 4.9,
"baseSeverity": "MEDIUM",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "HIGH",
"userInteraction": "NONE",
"scope": "UNCHANGED",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"availabilityImpact": "HIGH"
},
"exploitabilityScore": 1.2,
"impactScore": 3.6
}
]
},
"weaknesses": [
{
"source": "85b1779b-6ecd-4f52-bcc5-73eac4659dcf",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-409"
},
{
"lang": "en",
"value": "CWE-770"
}
]
}
],
"references": [
{
"url": "https://github.com/Ericsson/codechecker/security/advisories/GHSA-w57m-6g36-jjwv",
"source": "85b1779b-6ecd-4f52-bcc5-73eac4659dcf"
}
]
}