Skip to content

Pin the kubectl image used by the KubeVirt CSI node DaemonSet #296

Description

@veryCrunchy

Hi maintainers,

I am reporting a supply-chain risk introduced by PR #246. This is not an allegation that the current image is malicious.

The merged KubeVirt CSI DaemonSet uses soldevelo/kubectl:latest for two init containers that annotate and patch Kubernetes Nodes. The pod uses kubevirt-csi-node-sa. Its ClusterRole can update or patch Nodes, manage PersistentVolumes, update VolumeAttachments, and use the OpenShift privileged security context constraint.

An independent catalog-wide review found no malware indicators in the reviewed material. It did find that the current SolDevelo catalog has no discoverable image signatures, SBOM attestations, or provenance attestations. The publication workflow explicitly disables provenance, and Docker Hub tag immutability is disabled. The current soldevelo/kubectl:latest registry record was updated after this PR was merged. A future replacement of that tag could therefore change code that receives a cluster-scoped service-account token without any pack-central commit.

Could the project please:

  1. Use an official or project-controlled kubectl image, or pin a reviewed image by exact digest.
  2. Record the exact digest pulled by existing installations before changing the reference.
  3. Review whether the annotation and provider-ID operations can use a narrower dedicated service account than the CSI node components.
  4. Add an automated policy or test that rejects mutable image tags in cluster-scoped workloads.

For reference, the August 11, 2026 registry snapshot resolved soldevelo/kubectl:latest to sha256:a308fd7c99d41fd3289be9b25842e4a20bdad6907916ee86b0754b7912f1bad4. That is an observation for incident review, not a recommendation to trust or deploy that digest without the project's own verification.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions