Skip to content

Review newly reported runtime image advisories against actual runtime paths #15768

Closed

Description

@atomantic

Problem and evidence

The frozen v2.117.0 candidate's runtime image scan downloaded Grype 0.121.0 database v6.1.10 built 2026-11-11T06:21:32Z. Replaying its actual SBOMs and scan JSON through the corrected verifier identifies new matches absent from docker/runtime-image-security.reviews.json:

Target New package/advisory pairs Distinct advisories Severity counts
pgvector (both architectures) 62 18 High: 8, Medium: 20, Unknown: 34
supercollider (both architectures) 10 5 Unknown: 10

amd64 and arm64 match for each target. The inline Rapier pin has zero matches. The initial workflow failed because the verifier read descriptor.db.valid instead of descriptor.db.status.valid; the candidate fixes that format bug without weakening database/source checks. These advisory matches are a separate triage obligation, not evidence of reachable exploitation. PR scans intentionally report new advisories; scheduled/dispatched strict scans reject unreviewed matches.

  • pgvector: CVE-2026-107364; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-107496; libssl3@3.0.22-1deb12u2, openssl@3.0.22-1deb12u2; fix state: not-fixed.
  • pgvector: CVE-2026-107884; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-111423; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-112314; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-112315; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-112316; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-112317; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-112318; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-112319; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-112320; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-118380; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-71199; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-71200; libgssapi-krb5-2@1.20.1-2+deb12u5, libk5crypto3@1.20.1-2+deb12u5, libkrb5-3@1.20.1-2+deb12u5, libkrb5support0@1.20.1-2+deb12u5; fix state: not-fixed.
  • pgvector: CVE-2026-88822; libssl3@3.0.22-1deb12u2, openssl@3.0.22-1deb12u2; fix state: not-fixed.
  • pgvector: CVE-2026-88823; libssl3@3.0.22-1deb12u2, openssl@3.0.22-1deb12u2; fix state: not-fixed.
  • pgvector: CVE-2026-95691; libssl3@3.0.22-1deb12u2, openssl@3.0.22-1deb12u2; fix state: not-fixed.
  • pgvector: CVE-2026-95692; libssl3@3.0.22-1deb12u2, openssl@3.0.22-1deb12u2; fix state: not-fixed.
  • supercollider: CVE-2026-107496; libssl3t64@3.5.7-1deb13u3, openssl-provider-legacy@3.5.7-1deb13u3; fix state: not-fixed.
  • supercollider: CVE-2026-88822; libssl3t64@3.5.7-1deb13u3, openssl-provider-legacy@3.5.7-1deb13u3; fix state: not-fixed.
  • supercollider: CVE-2026-88823; libssl3t64@3.5.7-1deb13u3, openssl-provider-legacy@3.5.7-1deb13u3; fix state: not-fixed.
  • supercollider: CVE-2026-95691; libssl3t64@3.5.7-1deb13u3, openssl-provider-legacy@3.5.7-1deb13u3; fix state: not-fixed.
  • supercollider: CVE-2026-95692; libssl3t64@3.5.7-1deb13u3, openssl-provider-legacy@3.5.7-1deb13u3; fix state: not-fixed.

Chosen next step

Review the new advisory descriptions against the actual PostgreSQL and SuperCollider runtime paths and the repository trust model. Remediate reachable defects using compatible image/snapshot updates when available. Record evidence-based dispositions for the remaining exact package/version pairs, with individual upstream blockers where applicable. Do not copy prior dispositions without checking applicability, weaken scan validation, or mark missing fixes clean.

Affected files: docker/runtime-image-security.reviews.json, docker-compose.yml, docker/supercollider/Dockerfile, .github/workflows/runtime-image-security.yml, scripts/runtime-image-security.js.

Related: #15662 performed the initial triage; #15669 tracks already-reviewed upstream image rebuild blockers and does not cover these new advisory IDs.

Acceptance criteria

  • Every newly reported pair above has an evidenced remediation or reviewed reachability disposition; unresolved fixes name the owner and exact unblock condition.
  • A fresh strict dispatched runtime-image-security run passes for both architectures using real matching SBOM/database evidence.
  • Image or snapshot changes preserve Postgres data-volume compatibility and existing recipe/native guards.

Dispatch rationale: model:medium for per-advisory investigation within established recipes and contracts; effort:high to verify reachability and upstream fix status for the full input matrix. No special local hardware is required; the existing hosted scan matrix supplies both architectures.

Activity

  1. added
    planTracked by /do:replan
    securitySecurity and secrets
    model:mediumDispatch capability: routine workhorse coding model
    effort:highDispatch reasoning effort: high
    planner:gpt-6-1-solPlan authored by the gpt-6-1-sol model
    on Nov 11, 2026
  2. atomantic commented on Nov 11, 2026

    @atomantic
    OwnerAuthor

    Fresh default-branch evidence from the dependency audit: runtime-image-security run 43044058183, c99a8e71e4d84f1f62b54c715c3f02a63efee285, generated 2026-11-11. All five scan targets produced valid SBOM, scan, provenance and findings artifacts. The four image jobs failed strict verification solely for the unreviewed findings already listed here: pgvector 62 pairs / 18 advisory IDs per architecture; SuperCollider 10 pairs / 5 IDs per architecture. Both architectures agree; the inline Rapier pin has zero findings.

    The provenance image refs, Debian snapshot and recipe hashes match the current audit tree. pgvector has 472 already-reviewed pairs per architecture plus the 62 unreviewed; SuperCollider has 201 already-reviewed plus 10 unreviewed. These are package matches, not all demonstrated reachable exploits, and the strict failure remains unresolved.

    Registry HEAD checks still resolve pgvector/pgvector:pg17 to sha256:7d0a41464797aeb9862dfdc0bbf1526b82cfd324cdd8036df19e3545f4a9ccb8 and debian:trixie-slim to sha256:a72b4433de1cf7d6bae0c4cee74d0547f58601a643b3375f070c51600d63b6b2, the existing pins. No newer digest is available for the separate #15669 blockers. The unavailable artifact still names the external eidoverse:render parent and Deno lock (owner anima-research/eidoverse-video) as uncovered. No ledger entries or findings were suppressed by this audit.

    Reachability and upstream follow-up

    OpenSSL's 2026-11-10 advisory adds concrete scope missing from Grype's Unknown records. CVE-2026-88822 and CVE-2026-95691 require QUIC; CVE-2026-88823 and CVE-2026-95692 require AES-GCM-SIV. Upstream explicitly excludes OpenSSL 3.0 for all four, so their pgvector 3.0.22 matches need a source-range correction/rejection, rather than a version bump. The SuperCollider 3.5.7 matches require review against its network-disabled, unprivileged, capability-free render sandbox. CVE-2026-107496 affects CMS encryption with a hostile recipient certificate; ordinary PostgreSQL TLS does not invoke CMS encryption. The advisory schedules fixed releases for December 1 (3.5.10; premium 3.0.24), so these are not currently available replacement image releases. Keep source fixes, scheduled release versions and Debian backports distinct.

    MITKRB5-SA-2026-001 and the 1.22.3 release announcement cover the 13 newly matched Kerberos CVEs. The actual pgvector SBOM lacks libgssrpc4, libkadm5srv-mit12, krb5-admin-server and krb5-kdc; the seven CVE-2026-112314 through -112320 RPC/KDC paths therefore differ from the shipped GSSAPI client libraries. CVE-2026-118380 also concerns GSS-RPC. CVE-2026-107884 is administrative password-change authorization, while -107364 is a KDC decoder issue. PAC/CAMMAC validation (-111423/-71199) and the application-server DoS class (-71200) still need caller-specific inspection where GSS authentication is configured. The PostgreSQL port is loopback-only in docker-compose.yml. MIT's fixed release is 1.22.3, while Debian still records the image's 1.20.1-2+deb12u5 as unfixed; that upstream release is not evidence of a patched Debian image.

    Chosen follow-up remains this issue: verify individual runtime call paths and proposed dispositions using the linked primary advisories, preserve GSS opt-in compatibility, and rerun strict scans. The present audit retains the affected inventory and existing boundaries instead of changing authentication or replacing the database distribution. No exploit was executed and no image finding is claimed fixed.

  3. self-assigned this
    on Nov 11, 2026
  4. atomantic commented on Nov 11, 2026

    @atomantic
    OwnerAuthor

    Implemented in PR #15791, head 2018244049ad6a9a60d555bab8cf33aaacd36ac4 (merge/delivery still pending).

    Done ✓ Every new pair has an exact package/version disposition backed by current primary advisories and runtime inspection: eight upstream-excluded OpenSSL 3.0 source ranges; 64 vulnerable-package blockers tracked with upstream owners and unblock conditions in #15788. Corrected the prior default-SCRAM GSS inference without changing blocked status or disabling GSS compatibility. Image/snapshot/volume contracts are unchanged.

    Done ✓ Fresh strict workflow_dispatch 43068994447 passes pgvector and SuperCollider on native amd64/arm64 plus Rapier. Downloaded SBOM/scan/provenance/database artifacts independently match this head, run, image/source and recipe; strict replay reports pgvector 534 reviewed pairs per architecture, SuperCollider 211 per architecture, Rapier zero, and zero unreviewed. This is a reviewed inventory, not a zero-vulnerability result; the external eidoverse parent remains explicitly unavailable.

    Done ✓ Focused verifier suite 16/16; pregate passes; configured gpt-6.1-terra review is clean after two rounds, inspecting the final head.

    Remaining ▢ The ordinary required Browser suites (2/2) job is red on the existing footage parity assertion, separate from this advisory change. #15795 records exact hosted evidence, a supported macOS headless non-reproduction and the missing diagnostic upload. No source workaround, assertion relaxation or CI rerun was performed here; parent delivery owns the one bounded diagnostic rerun once the original run finishes. External vulnerable-package remediation remains unresolved in #15788.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

effort:highDispatch reasoning effort: highmodel:mediumDispatch capability: routine workhorse coding modelplanTracked by /do:replanplanner:gpt-6-1-solPlan authored by the gpt-6-1-sol modelsecuritySecurity and secrets

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions