Skip to main content

CodeChecker CVE-2026-58106

| EUVDEUVD-2026-67716 LOW
Out-of-bounds Write (CWE-787)
2026-08-28 ERIC
2.0
CVSS 4.0 · Vendor: ERIC
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain local access to CodeChecker host
  2. Delivery
    Invoke any operation triggering GCC logger component
  3. Exploit
    Trigger deterministic 2-byte stack overflow at ldlogger-tool-gcc.c:129
  4. Execution
    Corrupt adjacent stack bytes or canary
  5. Impact
    Process crash or minor integrity impact

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, write limits
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

The overflow triggers unconditionally on every invocation of the CodeChecker GCC logger component - no special input path, environment configuration, or non-default feature flag is required to reach the vulnerable site at ldlogger-tool-gcc.c:129. The sole prerequisite is local access to a host running CodeChecker (AV:L); no elevated privileges are needed to invoke the tool (PR:N per vendor CVSS vector). Exploitation is physically constrained to exactly 2 bytes of stack overwrite: in binaries compiled with stack canary protection, the process will abort before any useful payload executes, limiting realistic impact to a process crash. Environments that compile CodeChecker without stack protection (e.g., some embedded or legacy CI configurations) face modestly higher risk of adjacent stack data corruption.

Impact

The CVSS 4.0 score of 2.0 accurately reflects constrained real-world impact: the overflow is exactly 2 bytes, AV:L limits exposure to local actors, and observed impact is low integrity only (VI:L). The most significant risk signal is the deterministic, input-independent nature of the overflow - it fires on every invocation, making it trivially reproducible and reliably detectable by any local user. The E:P supplemental metric indicates a proof-of-concept exists, which elevates this above a purely theoretical flaw. However, modern stack protections (canaries, ASLR, NX stacks) substantially reduce the probability of achieving arbitrary code execution from a 2-byte overwrite, and the absence of a CISA KEV listing confirms no observed active exploitation. No EPSS data was provided in the input; risk cannot be quantified probabilistically from available data. The CVSS PR:N at AV:L is internally consistent: CodeChecker is a developer-level tool invoking without elevated privileges.

Exploit ScenarioDerived

A local user on a developer workstation or CI/CD build node invokes any CodeChecker operation that triggers the GCC logger component, unconditionally overwriting 2 bytes past a stack buffer at ldlogger-tool-gcc.c:129. With a proof-of-concept noted in the CVSS supplemental data, an attacker with local access could attempt to exploit the overflow to corrupt adjacent stack metadata or a stack canary, though reliable code execution from a fixed 2-byte overwrite requires bypassing modern mitigations and is unlikely in standard hardened build environments.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
No patch listed yet 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 28, 2026

Stack buffer overflow in Ericsson CodeChecker through 6.28.2 results from an off-by-two error introduced during the CVE-2025-40843 remediation: the safe_strcpy() call at ldlogger-tool-gcc.c:129 receives destination pointer fullPath + 2 but the full PATH_MAX (4096) as its size bound, causing a deterministic 2-byte overwrite past the 4094 bytes that actually remain on every invocation of the GCC logger component. The overflow is unconditional and input-independent; a proof-of-concept is noted via the CVSS 4.0 E:P supplemental metric, though no active exploitation (CISA KEV) has been confirmed.

RemediationAI

Upgrade CodeChecker to a release beyond 6.28.2 that incorporates the corrected safe_strcpy() size argument; consult the vendor advisory at https://github.com/Ericsson/codechecker/security/advisories/GHSA-9gcg-v8fg-39q8 for the specific patched version tag, which is not explicitly named in the available data. The underlying code fix is to pass PATH_MAX - 2 rather than PATH_MAX to safe_strcpy() at ldlogger-tool-gcc.c:129, accounting for the pointer offset. If an immediate upgrade is not feasible, the GCC logger instrumentation component can be disabled to eliminate the vulnerable code path, though this prevents CodeChecker from intercepting compiler invocations for compilation database capture and reduces analysis coverage - a significant functional trade-off in CI/CD environments. No additional vendor-confirmed workarounds were identified at time of analysis.

Affected VersionsENISA

codechecker 0 ≤6.28.2

Affected Packages

euvd codechecker no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

CodeChecker (CPE: cpe:2.3:a:ericsson:codechecker:*:*:*:*:*:*:*:*) is an Ericsson-developed static analysis management framework that intercepts compiler invocations through a logger instrumentation layer. The vulnerable site is ldlogger-tool-gcc.c:129, where safe_strcpy() - a strncpy() wrapper introduced to fix CVE-2025-40843 - is called with destination fullPath + 2 but size PATH_MAX (4096). strncpy() NUL-pads the destination to exactly n bytes, so it writes into the 4095th and 4096th bytes of a stack region that is only 4094 bytes wide from the offset pointer. This is a regression: the original CVE-2025-40843 fix correctly replaced unchecked strcpy() but miscounted the usable buffer space by failing to subtract the 2-byte pointer offset from the size argument. CWE-787 (Out-of-Bounds Write) is the applicable root cause class.

Know when Codechecker gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (ERIC) PRIMARY 2.0 LOW
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N/E:P/S:N/AU:Y/R:U/RE:L/U:Green
vuln.today AI 4.0 MEDIUM

Local build tool invocable by any developer-level user without elevated privileges (PR:N); overflow is deterministic and input-independent (AC:L); only minor stack integrity impact with no confidentiality or availability consequence.

3.1 AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
4.0 AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (ERIC).

CVSS VectorVendor: ERIC

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
Low
Subsequent system: Availability
None

DescriptionCVE.org

CVE-2025-40843 https://github.com/advisories/GHSA-5xf2-f6ch-6p8r  was fixed by replacing unchecked strcpy() with a bounded safe_strcpy() helper. At ldlogger-tool-gcc.c:129 the destination passed to that helper is fullPath + 2, but the size passed down is the full PATH_MAX. safe_strcpy() is strncpy(), which NUL-pads the destination out to the whole n, so this site writes 4096 bytes into the 4094 that remain - a 2-byte stack overflow on every invocation, independent of the input path's length.

This issue affects CodeChecker: through 6.28.2.

Threat Intelligence Overview

EPSS Score
0.1%
Top 97% exploitable
Prevalence
Low
developer and CI toolchain, not deployed in general infrastructure
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity LOW
CISA KEV No
Public POC No
EPSS 0.1%
Patch available No
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation
Poc
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Low
Technical Impact
Partial

Priority Score

10
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +10
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy