From 539d6ff027f84e41e98e754e1718fd6c915a96a6 Mon Sep 17 00:00:00 2001 From: Orlix Date: Mon, 10 Nov 2025 08:24:31 -0500 Subject: [PATCH] Add K3s self-security assessment Signed-off-by: Orlix --- .../assessments/projects/k3s/k3s-arch.png | Bin 0 -> 83743 bytes .../projects/k3s/self-assessment.md | 190 ++++++++++++++++++ 2 files changed, 190 insertions(+) create mode 100644 community/assessments/projects/k3s/k3s-arch.png create mode 100644 community/assessments/projects/k3s/self-assessment.md diff --git a/community/assessments/projects/k3s/k3s-arch.png b/community/assessments/projects/k3s/k3s-arch.png new file mode 100644 index 0000000000000000000000000000000000000000..79e89ebb63671defdb5512d4493b6c022dc78008 GIT binary patch literal 83743 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

Bzsu49 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 literal 0 HcmV?d00001 diff --git a/community/assessments/projects/k3s/self-assessment.md b/community/assessments/projects/k3s/self-assessment.md new file mode 100644 index 000000000..c1750f9be --- /dev/null +++ b/community/assessments/projects/k3s/self-assessment.md @@ -0,0 +1,190 @@ +# K3s Security Self Assessment +Author: Orlin Vasilev @OrlinVasilev +Security reviewers: + - Orlin Vasilev(@OrlinVasilev) + - Manuel Buil(@manuelbuil) + - Caroline O'Hara(@caroline-suse-rancher) + - Vitor Andre Savian(@vitorsavian) + - Brad Davidson(@brandond) + - Derek Nola(@dereknola) + - Chris Wayne(@cwayne18) + +## Table of Contents + +* [Metadata](#metadata) + * [Security links](#security-links) +* [Overview](#overview) + * [Actors](#actors) + * [Actions](#actions) + * [Background](#background) + * [Goals](#goals) + * [Non-goals](#non-goals) +* [Self-assessment use](#self-assessment-use) +* [Security functions and features](#security-functions-and-features) +* [Project compliance](#project-compliance) +* [Secure development practices](#secure-development-practices) +* [Security issue resolution](#security-issue-resolution) +* [Appendix](#appendix) + +## Metadata +| | | +|-----------|------| +| Software | https://github.com/k3s-io/ https://github.com/k3s-io/k3s https://github.com/k3s-io/kine https://github.com/k3s-io/helm-controller https://github.com/k3s-io/klipper-lb | +| Security Provider? | No | +| Languages | Go | +| Software Bill of Materials | [go.mod](https://github.com/k3s-io/k3s/blob/main/go.mod) and [go.sum](https://github.com/k3s-io/k3s/blob/main/go.sum) contains the dependency information also via GitHub: https://github.com/k3s-io/k3s/dependency-graph/sbom | +| Security Links | https://github.com/k3s-io/k3s?tab=security-ov-file#security-policy | + +## Security Links +| | | +|-----------|------| +| Security policy | https://github.com/k3s-io/k3s?tab=security-ov-file#security-policy | +| CVE scanning | https://scans.k3s.io/ +## Overview + +K3s is a lightweight and fully certified Kubernetes distribution that prioritizes a minimal footprint and simplified operations. This design offers inherent advantages for resource-constrained environments. + + +### Background + +K3s is a lightweight, opinionated Kubernetes distribution optimized for edge, IoT, and CI/CD environments. It achieves its small binary size by removing legacy or unnecessary components and replacing more resource-intensive ones with lightweight alternatives. K3s is secure by default, and operation of all Kubernetes control plane components is encapsulated in a single binary and process. K3s easily allows automation and management of complex cluster operations like distributing certificates. + +When considering using k3s, note that external dependencies have been minimized; the only requirements are a modern kernel and cgroup mounts. There are several packages included within the k3s binary that allow for quick and seamless cluster creation. Some of these packages include, containerd, Flannel CNI, Traefik Ingress Controller, Spegel, and more. + + + +### Actors + +- **K3s Server:** A cluster node that executes the `k3s server` command and runs control-plane components (API Server, Controller Manager, Scheduler), datastore components and the supervisor. It can optionally run K3s agent components as well, hence acting as both Server and Agent +- **K3s Agent:** A cluster node that executes the `k3s agent` command and runs typical agent components such as Kubelet and containerd. It requires a k3s server to be running in the cluster. +- **Cluster Data Store:** As other Kubernetes distributions, K3s requires a datastore to function but it does not need to be etcd. By using the project [Kine](https://github.com/k3s-io/kine) k3s supports different datastores. K3s includes two embedded options: SQLite and etcd. It also supports [external databases](https://docs.k3s.io/datastore#external-datastore-configuration-parameters) +- **Packaged Components:** Bundled components like containerd, Flannel, CoreDNS, and Traefik. The security of these components is crucial to the overall security posture. +- **Host OS:** K3s does not modify the host operating system, so host hardening is a manual, but critical, responsibility. +- **Supervisor:** It's an HTTPs server that sits in the server nodes and provider services for the cluster: distributing signed certificates, configuration for agent bootstrapping, websocket servers for agents to contact K3s server and so on. + +### Actions + +- **Installation:** K3s simplifies installation to a single command. The security assessment must evaluate how this process secures initial access and generates certificates. +- **Cluster Communication:** All communication within the cluster, including between the API server and worker nodes, relies on TLS certificates. The assessment should evaluate certificate management and rotation. +- **Workload Execution:** Evaluating the security of Pods, including Pod Security Admission (PSA) policies, is a key part of the assessment. +- **Network Communication:** K3s uses a built-in network policy controller(kube-router based) that enforces policies for controlling traffic between Pods. The default policy controller can be disabled in favour for CNI supplied one. +- **Upgrades:** K3s project provides extensive documentation on [K3s Upgrades](https://docs.k3s.io/upgrades) - You can upgrade K3s by using the installation script, or by manually installing the binary of the desired version. +Upgrades performed via the installation script or using our [automated upgrades feature](https://docs.k3s.io/upgrades/automated) can be tied to different release channels. The following channels are available: **stable**, **latest** or specific version i.e. **v1.33**. + + +![k3s-arch](k3s-arch.png) + + +### Goals + +- Be lightweight - K3s is engineered to have a minimal footprint in terms of both memory and disk space. +- Simplify installation and management - K3s makes Kubernetes more accessible to developers, hobbyists, and teams without deep Kubernetes expertise. +- Be fully compliant and production-ready - Despite its small size, K3s provides all the functionality required to run containerized workloads in production. +- Enable cloud-native adoption in new environments - K3s expands the reach of Kubernetes to use cases where standard Kubernetes is not a practical solution due to resource limitations. + +### Non-Goals +- K3s does **not** aim to be replacement for full Kubernetes distributions - K3s isn’t meant to replace upstream Kubernetes or large-scale managed services like EKS, AKS, GKE. +- Not focused on complex multi-cluster or hybrid-cloud management +- Not trying to be minimal at the expense of compliance - K3s removes unneeded features (e.g., cloud provider integrations, legacy alpha APIs) but keeps full Kubernetes API compliance. + +## Self-assessment Use + +This self-assessment is created by the K3s team to perform an internal analysis of the project's security. It is not intended to provide a security audit of K3s, or function as an independent assessment or attestation of K3s's security health. + +This document serves to provide K3s users with an initial understanding of K3s's security, where to find existing security documentation, K3s plans for security, and general overview of K3s security practices, both for development of K3s as well as security of K3s. + +This document provides K3s maintainers and stakeholders with additional context to help inform the roadmap creation process, so that security and feature improvements can be prioritized accordingly. + + +## Security functions and features + +| Component | Applicability | Description of Importance | +| --------- | ------------- | ------------------------- | +| Role-Based Access Control | Critical | RBAC is fundamental to Kubernetes security, enforcing the principle of least privilege. It strictly controls what users and service accounts can do, preventing unauthorized resource manipulation and reducing the blast radius of any compromised component. | +| Pod Security Admission (PSA) | Critical | PSA enforces policies that restrict the security context of Pods. This is crucial for maintaining the security integrity of the cluster by preventing privileged containers, restricting host namespace access, and blocking dangerous capabilities that could allow container escape. | +| Secrets encryption | Security relevant | K3s contains a CLI tool `k3s secrets-encrypt`, that enables/disables secrets encryption, rotates/deletes the keys and reencrypts secrets | +| NetworkPolicy | Security relevant | Network Policies are essential for implementing micro-segmentation within the cluster. They define rules for which Pods are allowed to communicate with which other Pods or external endpoints, effectively limiting lateral movement in case of a breach. K3s implemments this using the kube-router project. | +| ServiceAccount Tokens | Critical | Service accounts provide an identity for processes running in a Pod. Limiting token projection to bound ServiceAccount tokens with short expiration times prevents indefinite access and ensures that the identity of the Pod is tied to its current lifecycle. | +| Security Context | Security Relevant | Security Contexts allow users to define privilege and access controls (e.g., running as a non-root user, setting allowPrivilegeEscalation: false) at the Pod or Container level. This is a primary tool for users to voluntarily reduce the privileges granted to their workloads. | +| Certificate handling | Security relevant | K3s generates certificates and keys for the different Kubernetes components. They are valid for 365 days. It also implements a tool that allows rotating them and checking their expiration date: `k3s certificate` | +| K3s internal tokens | Security relevant | K3s uses tokens to secure the node join process and to encrypt confidential information that is persisted to the datastored. Tokens authenticate the cluster to the joining node, and the node to the cluster. K3s also supports [bootstrap tokens](https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/) and a tool to manage tokens: `k3s token` | +| Flannel wireguard encapsulation | Security relevant | K3s supports the wireguard backend of Flannel, which allows to encrypt all cluster network traffic between nodes using authenticated peer-to-peer tunnels. Users can configure and enable this feature to prevent network eavesdropping and ensure data integrity within the CNI layer. | + + + +## Project Compliance +K3s offers the option to follow the [CIS Benchmark assesment here](https://docs.k3s.io/security) + +### Future State +Roadmap and future development can be found here at the [project board in GitHub](https://github.com/orgs/k3s-io/projects/6) + +List of ADR (similiar to Kubernetes KEPs) here: https://github.com/k3s-io/k3s/tree/main/docs/adrs + +## Secure Development Practices +Although the K3s project is still sandbox, we strive to implement the highest standard of secure development best practices, as noted below. + + +### Deployment Pipeline +In order to secure the SDLC from development to deployment, the following measures are in place. Please consult the roadmap for information about how this list is growing. +- All commiters are required to sign their commits and comply with the CNCF Developer Certificate of Origin (DCO) +- Branch protection on the default (`main`) branch: + - Require signed commits + - Required on pull request before merging + - Require approvals: 2 + - Dismiss stale pull request approvals when new commits are pushed + - Require review from Code Owners + - Require approval of the most recent reviewable push + - Require conversation resolution before merging + - Require status checks to pass before merging + - Require branches to be up to date before merging +- Branch protection for `release-1.XX` branches is the same as `main` except for: + - Require approvals: 1 + +The release process is automated. Releases are triggered using the GitHub release action, which triggers the [release workflow](https://github.com/k3s-io/k3s/blob/main/.github/workflows/release.yml) to produce: + - K3s binary and checksum artifacts + - K3s airgap image tarballs + - K3s images published to ghcr.io and docker.io + +Releases are signed by GitHub's verified signature. All release artifacts are built using GitHub Actions using ephemeral GitHub Hosted Runners. + +### Communication Channels + +Communication happens in the public Slacks: +- CNCF Slack [#k3s channel](https://cloud-native.slack.com/archives/C0196ULKX8S ). +- Rancher-users Slack [#k3s channel ](https://rancher-users.slack.com/archives/CGGQEHPPW). +- Rancher-users Slack [#k3s-contrubutor channel](https://rancher-users.slack.com/archives/CGXR87T8B). + +Mailing lists: +- [cncf-k3s-users@lists.cncf.io](https://lists.cncf.io/g/cncf-k3s-users) +- [cncf-k3s-dev@lists.cncf.io](https://lists.cncf.io/g/cncf-k3s-dev) +- [cncf-k3s-maintainers@lists.cncf.io](https://lists.cncf.io/g/cncf-k3s-maintainers) +- + +Internal/External discssions and ideas: GitHub Discussions, GitHub Issues , GitHub PRs + +Community Meeting: +Twice a month: AMS and APAC friendly - https://zoom-lfx.platform.linuxfoundation.org/meetings/k3s?view=week + +## Security Issue Resolution + +The K3s security policy can be quickly found through both the [README.md](https://github.com/k3s-io/k3s/blob/main/README.md#security) and the [GitHub Security Policy Document](https://github.com/k3s-io/k3s/blob/main/.github/SECURITY.md). + + +### Responsible Disclosure Practice + +The K3s project does not accept vulnerability reports through the [GitHub Vulnerability Reporting](htt‌ps://docs.github.com/en/code-security/security-advisories/guidance-on-reporting-and-writing/privately-reporting-a-security-vulnerability) tool. Users attempting to report an security issue via the Create Issue or Vulnerability Reporting workflows will be redirected to our security policy document, which requests that they make contact via e-mail. + +Anyone can make a report by going e-mailing security@k3s.io. In the event that a report is received, a maintainer will collaborate directly with the reporter until it is resolved. + +### Incident Response + +In the event that a vulnerability is reported, the maintainer team will collaborate to determine the validity and criticality of the report. Based on these findings, the fix will be triaged and, if necessary the maintainer team will work to issue a patch in a timely manner. If it is determined that the vulnerability is in a 3rd party component, and not code that is maintained as part of the K3s project, we will work with the reporter and correct external project to coordinate handoff of the report. + +Patches will be made to all versions that are currently supported under the project's security policy. Information will be disseminated to the community through all appropriate outbound channels as soon as possible based on the circumstance. + + +## Appendix +FOSSA Badge - [![FOSSA Status](https://app.fossa.com/api/projects/custom%2B25850%2Fgithub.com%2Fk3s-io%2Fk3s.svg?type=shield)](https://app.fossa.com/projects/custom%2B25850%2Fgithub.com%2Fk3s-io%2Fk3s?ref=badge_shield) +OpenSSF Best Practices - [![OpenSSF Best Practices](https://www.bestpractices.dev/projects/6835/badge)](https://www.bestpractices.dev/projects/6835) +OpenSSF Scorecard[![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/k3s-io/k3s/badge)](https://scorecard.dev/viewer/?uri=github.com/k3s-io/k3s) +CLOMonitor - [![CLOMonitor](https://img.shields.io/endpoint?url=https://clomonitor.io/api/projects/cncf/k3s/badge)](https://clomonitor.io/projects/cncf/k3s) \ No newline at end of file