Repository navigation
False positive on openSUSE Tumbleweed tack: SUSE CVRF fixed version belongs to a different source package (CVE-2022-29458)
#11590
SonnyRR
started this conversation in
False Detection
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
False positive on openSUSE Tumbleweed
tack: SUSE CVRF fixed version belongs to a different source packageDescription
Trivy reports the
tackpackage in openSUSE Tumbleweed images as having a fixable vulnerability withFixedVersion: 6.3.20220416-16.1. That fixed version can never be satisfied by Tumbleweed'stack, because it is in fact the fixed EVR of thencursessource package lineage: in SLE, the binarytackRPM is a subpackage built from thencursessource package, so its EVR tracks ncurses (5.9-78.1,6.1-150000.5.12.1,6.3.20220416-16.1, ...).openSUSE Tumbleweed ships a separate, standalone
tackpackage (Thomas Dickey's terminfo/keyboard-assessment tool), currently at1.11.20251210-116.1. Since rpmvercmp orders1.11... < 6.3..., the installed 1.x package is flagged as vulnerable and fixable.The finding is CVE-2022-29458 — an out-of-bounds read in ncurses' terminfo library (
tinfo/read_entry.c,convert_strings), not in thetacktool itself. Tumbleweed's ncurses has been patched for years, and the standalonetackbinary is not affected (tack >= 6.3.20220416-16.1appears in the advisory only because SLE's tack subpackage was rebuilt against patched ncurses).SUSE's CVE page (below) lists the fixed version set for the openSUSE Tumbleweed row as:
That row was correct historically, when Tumbleweed's tack was a subpackage of ncurses.
tackhas since been repackaged in Tumbleweed as an independent project with its own version scheme, and the DB's name → fixed-version mapping now attaches an unattainable ncurses-style EVR to it.This is the same class of problem as #3193 (wrong SUSE CVRF
FixedVersionmapping).Impact
Automated remediation tools driving patches from the Trivy report hard-fail instead of fixing anything. Example: Copacetic (Copa) ran the following against a Tumbleweed image (base snapshot 2026-11-05/06):
The installed
tackis already the highest version Tumbleweed publishes; the fixed version6.3.xdoes not exist in any Tumbleweed repository, so the "fixable" finding is unresolvable and Copa fail-closes instead of patching.Reproduction
Query of the Tumbleweed OSS repository (via zypper, read-only):
Only
tack-1.11.20251210-116.1.x86_64.rpmis published — no ncurses-lineagetackversion exists there:https://download.opensuse.org/tumbleweed/repo/oss/x86_64/
The version ordering that drives the false "fixable" classification, using the same rpmvercmp logic the ecosystem relies on:
References
tack >= 6.3.20220416-16.1fixed version for Tumbleweed:https://www.suse.com/security/cve/CVE-2022-29458.html
Environment
tack-1.11.20251210-116.1.x86_64, ncurses already patched (>= 6.5)Desired behavior
A SUSE/openSUSE CVRF entry whose fixed EVR belongs to a different packaging lineage than the binary package in the scanned distro should not be classified as fixable. Since SLE's tack subpackage EVR equals the
ncursessource package EVR, mapping by source-package-aware metadata (binary → source) would resolve this case; the same pre-repackaging conflation likely affects other subpackages that later moved to standalone packaging.Happy to provide more logs or the full Trivy JSON report if useful — note the two example runs in the Copacetic log excerpt above are from runs filed at https://github.com/SonnyRR/devcontainers (workflows that patch Tumbleweed images with Copa using this report).
All reactions