Description
The comm utility in uutils coreutils silently corrupts data by performing lossy UTF-8 conversion on all output lines. The implementation uses String::from_utf8_lossy(), which replaces invalid UTF-8 byte sequences with the Unicode replacement character (U+FFFD). This behavior differs from GNU comm, which processes raw bytes and preserves the original input. This results in corrupted output when the utility is used to compare binary files or files using non-UTF-8 legacy encodings.
Published: 2026-04-22
Score: 3.3 Low
EPSS: < 1% Very Low
KEV: No
Impact: Data Corruption via lossy UTF‑8 conversion
Action: Patch
AI Analysis

Impact

The comm utility in the uutils coreutils package silently corrupts output when it encounters invalid UTF‑8 byte sequences. The implementation uses Rust’s String::from_utf8_lossy(), which replaces such bytes with the Unicode replacement character (U+FFFD). Unlike GNU’s comm, which operates on raw bytes, the uutils comm replaces characters, producing incorrect results for binary files or files encoded with legacy, non‑UTF‑8 encodings. This leads to data corruption that can cause downstream tools or processes that rely on accurate comparisons to make wrong decisions.

Affected Systems

Affected systems include the comm utility distributed by the Uutils coreutils project. No specific version range is listed in the advisory, but the issue has been fixed in releases starting with 0.6.0, as evidenced by the referenced pull request and release tag. Users of earlier versions, or those building from the master branch prior to the fix, are vulnerable.

Risk and Exploitability

The risk is low; the CVSS score is 3.3, EPSS is not reported, and the vulnerability is not present in the CISA KEV catalog. Exploitation requires local access to the system where comm is executed and is limited to generating corrupted output rather than compromising confidentiality or integrity. The most likely attack vector is an end‑user or automated process that runs comm against binary or legacy‑encoded files and then relies on the output for further processing.

Generated by OpenCVE AI on April 27, 2026 at 08:46 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the uutils coreutils package to version 0.6.0 or later, which contains the fix for the lossy UTF‑8 conversion bug
  • If an upgrade is not immediately possible, avoid using the comm utility to compare binary or non‑UTF‑8 files; instead use GNU coreutils comm or use tools that explicitly handle raw bytes
  • If maintaining a custom build of Uutils, apply the patch from pull request 10206 which corrects the encoding handling logic

Generated by OpenCVE AI on April 27, 2026 at 08:46 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-hwhf-8p2f-45wr coreutils' comm utility silently corrupts data by performing lossy UTF-8 conversion on all output lines
History

Mon, 27 Apr 2026 12:30:00 +0000

Type Values Removed Values Added
First Time appeared Uutils
Uutils coreutils
CPEs cpe:2.3:a:uutils:coreutils:*:*:*:*:*:rust:*:*
Vendors & Products Uutils
Uutils coreutils

Wed, 22 Apr 2026 19:15:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Wed, 22 Apr 2026 16:30:00 +0000

Type Values Removed Values Added
Description The comm utility in uutils coreutils silently corrupts data by performing lossy UTF-8 conversion on all output lines. The implementation uses String::from_utf8_lossy(), which replaces invalid UTF-8 byte sequences with the Unicode replacement character (U+FFFD). This behavior differs from GNU comm, which processes raw bytes and preserves the original input. This results in corrupted output when the utility is used to compare binary files or files using non-UTF-8 legacy encodings.
Title uutils coreutils comm Silent Data Corruption via Lossy UTF-8 Normalization
Weaknesses CWE-176
References
Metrics cvssV3_1

{'score': 3.3, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N'}


Subscriptions

Uutils Coreutils
cve-icon MITRE

Status: PUBLISHED

Assigner: canonical

Published:

Updated: 2026-04-22T18:12:21.735Z

Reserved: 2026-04-02T12:58:56.087Z

Link: CVE-2026-35346

cve-icon Vulnrichment

Updated: 2026-04-22T18:12:14.556Z

cve-icon NVD

Status : Analyzed

Published: 2026-04-22T17:16:36.760

Modified: 2026-04-27T12:28:38.493

Link: CVE-2026-35346

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-04-27T19:54:40Z

Weaknesses