From 1b19b560e57b06de63ea9d131efb77bc79668551 Mon Sep 17 00:00:00 2001 From: Ben Date: Sun, 8 Dec 2024 20:12:10 +0200 Subject: [PATCH 01/13] Initial version of Kubescape self-assessment Signed-off-by: Ben Update community/assessments/projects/kubescape/self-assessment.md Co-authored-by: Matthias Bertschy Signed-off-by: Ben Hirschberg <59160382+slashben@users.noreply.github.com> Update community/assessments/projects/kubescape/self-assessment.md Co-authored-by: Matthias Bertschy Signed-off-by: Ben Hirschberg <59160382+slashben@users.noreply.github.com> Update community/assessments/projects/kubescape/self-assessment.md Co-authored-by: Matthias Bertschy Signed-off-by: Ben Hirschberg <59160382+slashben@users.noreply.github.com> Update community/assessments/projects/kubescape/self-assessment.md Co-authored-by: Matthias Bertschy Signed-off-by: Ben Hirschberg <59160382+slashben@users.noreply.github.com> Update with review comment and spelling fixes Signed-off-by: Ben Fixing Markdown lints Signed-off-by: Ben Spell exceptions Signed-off-by: Ben URL fix Signed-off-by: Ben Fixing links Signed-off-by: Ben --- .../projects/kubescape/cli-arch.png | Bin 0 -> 35171 bytes .../projects/kubescape/operator-arch.png | Bin 0 -> 115577 bytes .../projects/kubescape/self-assessment.md | 336 ++++++++++++++++++ 3 files changed, 336 insertions(+) create mode 100644 community/assessments/projects/kubescape/cli-arch.png create mode 100644 community/assessments/projects/kubescape/operator-arch.png create mode 100644 community/assessments/projects/kubescape/self-assessment.md diff --git a/community/assessments/projects/kubescape/cli-arch.png b/community/assessments/projects/kubescape/cli-arch.png new file mode 100644 index 0000000000000000000000000000000000000000..fb347d9742403c5825b474709df1f385709cb96d GIT binary patch literal 35171 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%0AE3>e^(O5QiQ%wScWk{p>CPcj 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 literal 0 HcmV?d00001 diff --git a/community/assessments/projects/kubescape/operator-arch.png b/community/assessments/projects/kubescape/operator-arch.png new file mode 100644 index 0000000000000000000000000000000000000000..73470620afa3fada5239cae3a741926219b87764 GIT binary patch literal 115577 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%0DHwi(Hf?DTREIIr7H&V2c5aJj&<_qC+ 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໿<^UOz0(BTgkLZvh`nBGZ0Vgza=va%V5#pchh?#L7q@}~tX zvlF$5*n8kGGsodd+5XnvlSb|n&-U^=PgnN zRD2B3_K;ITgrVgf|i&ov0C_t)9Wng}f^02Xsrx6OJeEOw|9yU(Jujy+hqX zNNgJk(->Ym%*l`$5HvDUAL`5nLhuF|=+XETUKa2(Zwi!vG|h%f5z9ff*s5y6n|;ox zVhwF6(L!mVZl(||`ZhY-YH57J53O`+VEQ(s-~{+BdHbz^>RFGJWbv%4JVtgfrR)7U zW^+SH1UY$TGYYaSN*SM2AfH9lvlrYW)eoKr$PnL1lxxZWA!;(|IzrU;`Uu%eoc8s6 zzV+8$gg3q*0uYnGDnoM$pUq2C#oJkq%(jRw%7t&lU@{2_KKPCK2BaHw z{P-#=c>Uhl!+&Y20tX(a(g1t&DqSSNfPZe5_w|>w-=lngaXFY3U11iNfJ-9FewS~4 zl365pO4z_dCuP%rq9Fi&Xn_B@a^+S?MtIEcT0Vv%5Vt4E%p^)Zl`Xu;oB#{Sl*B&~ YJDL@JxFkG4js<+=Wt5~5k_P_&1B-CBMgRZ+ literal 0 HcmV?d00001 diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md new file mode 100644 index 000000000..6fcc35d85 --- /dev/null +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -0,0 +1,336 @@ +# Kubescape Self-assessment + +This document is intended to aid the project's maintainers, contributors, and users understand the project's security status and help identify points of improvement. + +*The project seeks a security reviewer for this document who is not part of the project maintainer team or community.* + +## 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 + +| | | +| -- | -- | +| Assessment Stage | Incomplete | +| Software | [Kubescape](https://kubescape.io) | +| Security Provider | Yes | +| Languages | Go | +| SBOM | Kubescape does not currently generate an SBOM on release| +| Security links | See below | + +### Security links + +| Doc | url | +| -- | -- | +| Reporting security issues | [here](https://github.com/kubescape/project-governance/blob/main/SECURITY.md) | + +## Overview + +Kubescape is an open-source Kubernetes security platform that provides comprehensive security coverage, from left to right across the entire development and deployment lifecycle. It offers hardening, posture management, and runtime security capabilities to ensure robust protection for Kubernetes environments. + +### Background + +The Kubescape project started as a CLI scanner testing Kubernetes configurations against the [NSA Hardening Guide](https://www.cisa.gov/news-events/alerts/2022/03/15/updated-kubernetes-hardening-guide). The original creators are [ARMO](https://armosec.io) employees who started this as a side project for Kubernetes security posture, while their main focus was workload runtime security. + +The project enjoyed early popularity and adoption, which triggered more investment and a later contribution to CNCF by ARMO. The project developed a monitoring deployment called Kubescape Operator, which is installed on a cluster and enables constant monitoring. The project aims to be a comprehensive open-source security platform for Kubernetes, both for posture and runtime. + +Key features of Kubescape include + +* Kubernetes configuration scanning and monitoring +* Vulnerability scanning of images, monitoring vulnerabilities in a Kubernetes cluster +* IDE integration enabling users to find misconfigurations and vulnerabilities during development +* CI/CD integrations enabling users to build security gating in their processes +* Reachability analysis of vulnerabilities using eBPF +* Validating Admission Policy library +* Application security observability using eBPF +* Network and seccomp policy generation based on workload behavior +* Runtime attack detection based on predefined rules and anomalies + +### Actors + +#### Kubescape CLI + +![Kubescape CLI](cli-arch.png) + +Kubescape CLI is a simple tool written in Go, built on [OPA engine](https://github.com/open-policy-agent/opa) and [Grype](https://github.com/anchore/grype). It downloads frameworks and controls written in Rego and a vulnerability database. Using that input it looks for potential security and compliance issues in YAML/Helm files and vulnerabilities in container images. + +It can be used as an investigative tool for benchmarking Kubernetes security posture. In addition it can be planted in CI/CD processes for a security automation use case. + +#### Kubescape Operator + +![Kubescape Operator](operator-arch.png) + +Kubescape Operator gives multiple features that can be independently enabled. Its central design concept is to record scan results to a Kubernetes API object. The *Storage* component is a Kubernetes Aggregated API extension service, it stores the different results objects the Operator produces. The following main capabilities are available in the Operator: + +* Configuration scanning +* Container image scanning and SBOM generation +* Host scanning +* Application security observability +* Runtime detection of malicious activities + +##### Operator component + +This component is in charge of commanding and controlling the scans in the cluster. There are multiple configuration options for when and what to scan in the cluster. This component orchestrates these activities by triggering the Kubescape and KubeVuln components. + +##### Kubescape component + +This component is responsible for configuration and host scanning. Like the CLI, it uses the [OPA engine](https://github.com/open-policy-agent/opa) to run the project's own Rego library of rules. It also scans the Kubernetes host to validate their configurations. The output of the scans is stored in the *Storage* component via the Kubernetes API and optionally sent to external API endpoints. + +##### KubeVuln component + +This component is responsible for image vulnerability scanning. It can either produce an SBOM object in the *Storage* and match the SBOM entries with vulnerabilities or rely on the *Node agent* to generate SBOM objects on the nodes and produce vulnerability manifests and VEX documents. All the results are stored in the *Storage* component via the Kubernetes API and optionally sent to external API endpoints. + +##### Node agent component + +This component has multiple purposes all bound to information available on Kubernetes nodes. + +* Produces SBOMs from the images available on the node (used by *KubeVuln*) +* Produces information from the configurations of the Linux host of the Kubernetes node (used by *Kubescape*) +* Creates an ApplicationProfile using [Inspektor Gadget](https://inspektor-gadget.io) and eBPF. These profiles log the behavior of each container on the node (file access, processes launched, capabilities used, system calls made) into *ApplicationProfile* objects stored in the *Storage* component via the Kubernetes API and optionally sent to external API endpoints. +* Creates *NetworkNeighborhood* objects using [Inspektor Gadget](https://inspektor-gadget.io) and eBPF. These profiles log the network activity of each container, which is stored as an object in the *Storage* component via the Kubernetes API and optionally sent to external API endpoints. +* Monitors container activity via eBPF and evaluates it using its own rule engine, which combines static detection rules and anomaly detection to produce alerts that can be exported to AlertManager, Syslog, HTTP endpoints, STDOUT stream, and other destinations. + +##### Storage component + +This component is a Kubernetes [aggregated API extension](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/) service. It stores the different objects produced by the other components on a volume as files and SQLite. In the current implementation, it is a singleton component and cannot be scaled horizontally, but it is running successfully in 10k node clusters. + +##### Synchronizer component + +This component is an optional part of the Kubescape Operator. It enables users to replicate the Kubernetes objects in the cluster (like `rsync`) to a remote service. Central services monitoring multiple clusters use it to collect the Kubescape Operator objects. + +#### Detailed overview + +A more detailed architectural representation, can be found [here](https://github.com/kubescape/helm-charts/blob/doc/charts/kubescape-operator/README.md#in-cluster-components-overview) + +#### Objects + +* ApplicationProfile - storing workload-level information about container activities (file, process, system-call, capabilities) +* ConfigurationScanSummary - summary object containing results of configuration scanning +* GeneratedNetworkPolicy - object containing proposed network policies for each workload +* KnownServer - list of IP to host conversion +* NetworkNeighborhood - storing workload level information about network activities of each container +* OpenVulnerabilityExchangeContainer - [VEX](https://github.com/openvex) object that was built from the vulnerability scan together with reachability analysis +* SBOMSyftFiltered - SBOM of running containers filtered by only those that are in use +* SBOMSyft - SBOM of running containers +* SeccompProfile - Seccomp profile distribution helper object (converting it to JSON on each host) +* VulnerabilityManifest - vulnerability scan result object +* VulnerabilityManifestSummary - the summary object of the vulnerability scans +* WorkloadConfigurationScan - workload level configuration scan output +* WorkloadConfigurationScanSummary - summary of the workload configuration scan + +### Actions + +#### Configuration scans + +Configuration scans can be triggered in three ways: + +* Continuous scanning: every new or updated object is scanned. This is achieved by "watching" Kubernetes API objects +* Scheduled scanning: using pre-configured recurring triggers to scan configurations in the cluster. This is achieved using CronJobs +* Triggered scanning: Kubescape Operator exposing API to trigger a scan of specific objects or the whole cluster + +#### Vulnerability scans + +Vulnerability scans can be triggered in three ways: + +* Continuous scanning: every new image introduced to the cluster is scanned. This is achieved by "watching" Kubernetes API objects +* Scheduled scanning: using configurable scheduling to trigger periodic scans for vulnerabilities in the cluster. This is achieved using CronJobs +* Triggered scanning: Kubescape Operator exposing API to trigger scan of specific images and workloads in the cluster + +#### Object storage + +Full Kubernetes object API is supported with all the CRUD actions in the storage component. + +#### Node agent + +*Node agent* is completely event-driven and it does not expose a transactional API. + +It responds to: + +* Kubernetes API events: Pods that are created, removed on a node +* Container runtime events: Starting monitoring when a container starts and stopping it when it is stopped. +* *Node agent* lifecycle events: When the component starts, an automatic configuration scan of the node is triggered +* *OperatorCommand* objects: such objects convey command to the *Node agent* to delete pods/processes as a response to a detection +* *RuntimeRuleAlertBinding* objects: these objects define which detection rules should be applied to which Pods + +##### Synchronizer + +This component is also entirely event-driven, and two actors trigger its actions: + +* Kubernetes API: *Synchronizer* responds to changes in the Kubernetes API objects - this triggers an action to send these objects to the connected Synchronizer server +* Synchornizer server: Synchornizer server can trigger the *Synchronizer* component to store objects in Kubernetes API (this is limited by the *ClusterRole* the *Synchronizer* is assigned with) + +### Goals + +* The Kubescape Operator automates scanning and monitoring of Kubernetes clusters + * provides up-to-date security posture data + * creates proposals on how to improve the security posture of the workload and the cluster + * provides security observability data + * alerts on potential breaches to workloads in the cluster +* Kubescape CLI scans pre-deployment and post-deployment configurations and images and provides actionable results + +#### Security Goals + +* All access to the data produced by Kubescape Operator should be only available to those subjects who have the proper RBAC authorizations +* Kubescape should only share information to מon-Kubernetes endpoints in cases when the user explicitly defined it +* Kubescape should only have access to objects it needs to complete its job +* Triggers should only come from authenticated and authorized sources + +### Non-goals + +* Kubescape is not meant to enforce access control beyond what the Kubernetes API already provides + +## Self-assessment use + +This self-assessment is not intended to provide a security audit of Kubescape or function as an independent assessment or attestation of Kubescape's security health. + +This document provides Kubescape users with an initial understanding of Kubescape's security, where to find existing security documentation, Kubescape's plans for security, and a general overview of Kubescape's security practices, both for the development of Kubescape and its operational security. + +This document provides the CNCF TAG-Security with an initial understanding of Kubescape to assist in a joint assessment necessary for projects under incubation. Taken together, this document and the joint assessment serve as a cornerstone for if and when Kubescape is preparing for a security audit. + +## Security functions and features + +In general, Kubescape is a security project; therefore, we do not list all the features here, only the "non-functional" security features. + +### Critical + +#### Kubernetes API server authentication + +Since Kubescape is mainly driven and uses an API server to store objects, it is critical to validate the Kubernetes API server properly. +This is true for regular API server clients and even more crucial for the *Storage* component, which needs mTLS to function properly to prevent unwanted access. + +#### Denial of events + +Runtime detection relies heavily on eBPF and container runtime events. Allowing such inputs is critical to maintaining reliable detection capabilities. + +#### Masking sensitive results + +Since results can contain sensitive information (Kubernetes secrets, environment variables with keys) Kubescape masks these fields from the result objects + +### Security Relevant + +#### Kubernetes RBAC + +It is important for users to understand Kubescape's access control and how it is reflected in Kubernetes RBAC settings. + +## Project compliance + +The project has no written record of complying with a well known security standard like FIPS. + +## Secure development practices + +### Development Pipeline + +Kubescape's development pipeline ensures the software is robust, reliable, and secure. It involves several stages of peer reviews, testing, and assessment as the software is developed and built. + +#### Contributor Requirements + +Contributors to Kubescape are required to sign their commits, adhering to the Developer Certificate of Origin (DCO). This practice ensures the integrity of the code by verifying that the changes are made by the person who claims to have made them. Contributors use the Signed-off-by line in commit messages to signify their adherence to these requirements. Git has a -s command-line option to append this automatically to commit messages. +Contributors can start by forking the repository on GitHub, reading the installation document for build and test instructions, and playing with the project. + +#### Container Images + +The container images used in Kubescape are signed and should be verified by users. + +#### Reviewers + +Multiple reviewers review a commit before it is merged. This practice helps catch potential security issues early in the development process. The exact number of reviewers required before merging needs to be specified in the documentation. + +#### Automated Checks + +Kubescape includes automated checks for misconfigurations and vulnerabilities. These checks are part of Kubescape's continuous integration (CI) process and automatically run against every release request. + +#### Integration Tests + +Kubescape's upstream continuous integration (CI) tests will automatically run integration tests against proposed changes. Users are not required to run these tests locally, but they may. + +### Communication Channels + + Kubescape Communication Channels + +#### Internal Communication + +* Slack: The kubescape and kubescape-dev slack channels in the [CNCF slack](https://communityinviter.com/apps/cloud-native/cncf) +* GitHub: [Discussion](https://github.com/kubescape/kubescape/discussions) or [issues](https://github.com/kubescape/kubescape/issues) +* Security topics: [cncf-kubescape-maintainers@lists.cncf.io](#reporting-security-vulnerabilities) + +#### Inbound Communication + +Users or prospective users communicate with the Kubescape team through GitHub issues and pull requests. GitHub is a platform that hosts the Kubescape project's codebase and provides features for tracking changes, managing versions, and collaborating on code. Users can submit pull requests to report issues, propose changes, or contribute to the project. + +* GitHub: [Discussion](https://github.com/kubescape/kubescape/discussions) or [issues](https://github.com/kubescape/kubescape/issues) + +#### Outbound Communication + +* Twitter: [@Kubescape](https://x.com/Kubescape) +* Kubescape site: [Kubescape.io](https://kubescape.io/) + +##### Community meetings + +Kubescape [community meetings](https://zoom.us/j/95174063585) are held on Zoom every other week at 15:00 CET. ([See that in your local time zone](https://time.is/compare/1500_in_CET). :headphones: + +Community members are encouraged to join and add to the discussion via the [community meeting notes document](https://docs.google.com/document/d/1X_eyhPzJvb4ascVQ2e0jN87LAvq7lTuXT5d4gQxi8us/edit?usp=sharing) to add an item. You can also see the summary of previous discussions here. 🖥️ + +## Security issue resolution + +For a complete list of closed security issues, please refer to [this link](https://github.com/kubescape/kubescape/issues?q=is%3Aissue+label%3Asecurity+is%3Aclosed) + +### Responsible Disclosures Process + +In case of suspected security issues, incidents, or vulnerabilities, both external and internal to the project, Kubescape has a responsible disclosure process in place. The process is designed to handle security vulnerabilities quickly and sometimes privately. The primary goal of this process is to reduce the time users are vulnerable to publicly known exploits. + +#### Vulnerability Response Process + +Maintainers organize the entire response, including internal communication and external disclosure. + +#### Reporting Security Vulnerabilities + +If you find a vulnerability or a potential vulnerability in Kubescape, please let us know immediately at [cncf-kubescape-maintainers@lists.cncf.io](mailto:cncf-kubescape-maintainers@lists.cncf.io). We'll send a confirmation email to acknowledge your report and an additional email when we've identified the issues positively or negatively. +Please see the complete [security release process](https://github.com/kubescape/project-governance/blob/main/SECURITY.md) for further details. + +#### Private Disclosure Processes + +If a security vulnerability or any security-related issues are found, they should not be filed as a public or a GitHub issue. Instead, the report should be sent privately to [cncf-kubescape-maintainers@lists.cncf.io](mailto:cncf-kubescape-maintainers@lists.cncf.io) + +#### Public Disclosure Processes + +If a publicly disclosed security vulnerability is known, it should be reported immediately to [cncf-kubescape-maintainers@lists.cncf.io](mailto:cncf-kubescape-maintainers@lists.cncf.io) to inform the maintainers. This will initiate the patch, release, and communication process. + +### Patch, Release, and Public Communication + +For each vulnerability, a member of the maintainer team will coordinate with the "Fix Team" and send disclosure message to the rest of the community. This lead will be referred to as the "Fix Lead." The Fix Lead rotates between the maintainers. + +### Patching/Update Availability + +Once the vulnerability has been confirmed and the relevant parties have been notified, the next step is to make a patch or update available. This involves releasing a new version of the software that addresses the vulnerability. The patch or update is then made available to all users, who can update their systems to the latest version to protect against the vulnerability. +In addition, Kubescape has a Fix Disclosure Process that includes disclosing forthcoming fixes to users, completed within 1-7 days of disclosure. The Fix Lead will create a GitHub issue in the Kubescape project to inform users that a security vulnerability has been disclosed and that a fix will be made available, with an estimation of the release date. + +## Incident Response + +There is a template for incident response for reference [here](https://github.com/cncf/tag-security/blob/main/community/resources/project-resources/templates/incident-response.md) + +## Appendix + +### Known issues over time + +* The project did not have a private disclosure of any kind yet +* Public issues can be found with the `security` label [here](https://github.com/kubescape/kubescape/labels/security) + +### OpenSSF best practices + +The Kubescape project is continuously improving its practices based on the OpenSSF recommendations, see scores [here](https://securityscorecards.dev/viewer/?uri=github.com/kubescape/kubescape) + + \ No newline at end of file From 13aaf98314b9abbc82f7d70d9c6e7ba237eb3e56 Mon Sep 17 00:00:00 2001 From: Ben Date: Sun, 8 Dec 2024 20:25:22 +0200 Subject: [PATCH 02/13] footer Signed-off-by: Ben --- community/assessments/projects/kubescape/self-assessment.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md index 6fcc35d85..2881ab1a7 100644 --- a/community/assessments/projects/kubescape/self-assessment.md +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -333,4 +333,5 @@ There is a template for incident response for reference [here](https://github.co The Kubescape project is continuously improving its practices based on the OpenSSF recommendations, see scores [here](https://securityscorecards.dev/viewer/?uri=github.com/kubescape/kubescape) - \ No newline at end of file + + \ No newline at end of file From 6dc7c59dff9ea7732b6b953062518c520c879b91 Mon Sep 17 00:00:00 2001 From: Ben Hirschberg <59160382+slashben@users.noreply.github.com> Date: Tue, 10 Dec 2024 08:33:58 +0200 Subject: [PATCH 03/13] Update community/assessments/projects/kubescape/self-assessment.md Co-authored-by: Craig Box Signed-off-by: Ben Hirschberg <59160382+slashben@users.noreply.github.com> --- community/assessments/projects/kubescape/self-assessment.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md index 2881ab1a7..b920afa57 100644 --- a/community/assessments/projects/kubescape/self-assessment.md +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -25,7 +25,7 @@ This document is intended to aid the project's maintainers, contributors, and us | | | | -- | -- | -| Assessment Stage | Incomplete | +| Assessment Stage | Complete | | Software | [Kubescape](https://kubescape.io) | | Security Provider | Yes | | Languages | Go | From 89688c10f24ee60744724857fbd26451d3e1a8c1 Mon Sep 17 00:00:00 2001 From: Ben Hirschberg <59160382+slashben@users.noreply.github.com> Date: Tue, 10 Dec 2024 08:34:16 +0200 Subject: [PATCH 04/13] Update community/assessments/projects/kubescape/self-assessment.md Co-authored-by: Craig Box Signed-off-by: Ben Hirschberg <59160382+slashben@users.noreply.github.com> --- community/assessments/projects/kubescape/self-assessment.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md index b920afa57..2b7a0a6b2 100644 --- a/community/assessments/projects/kubescape/self-assessment.md +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -171,7 +171,7 @@ It responds to: This component is also entirely event-driven, and two actors trigger its actions: * Kubernetes API: *Synchronizer* responds to changes in the Kubernetes API objects - this triggers an action to send these objects to the connected Synchronizer server -* Synchornizer server: Synchornizer server can trigger the *Synchronizer* component to store objects in Kubernetes API (this is limited by the *ClusterRole* the *Synchronizer* is assigned with) +* Synchronizer server: Synchronizer server can trigger the *Synchronizer* component to store objects in Kubernetes API (this is limited by the *ClusterRole* the *Synchronizer* is assigned with) ### Goals From 2dcca94ede859d74592623cd59b197a087a9b23d Mon Sep 17 00:00:00 2001 From: Ben Hirschberg <59160382+slashben@users.noreply.github.com> Date: Tue, 10 Dec 2024 08:34:26 +0200 Subject: [PATCH 05/13] Update community/assessments/projects/kubescape/self-assessment.md Co-authored-by: Craig Box Signed-off-by: Ben Hirschberg <59160382+slashben@users.noreply.github.com> --- community/assessments/projects/kubescape/self-assessment.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md index 2b7a0a6b2..fc638f542 100644 --- a/community/assessments/projects/kubescape/self-assessment.md +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -333,5 +333,5 @@ There is a template for incident response for reference [here](https://github.co The Kubescape project is continuously improving its practices based on the OpenSSF recommendations, see scores [here](https://securityscorecards.dev/viewer/?uri=github.com/kubescape/kubescape) - + \ No newline at end of file From b4478283d2f389b0d0796320107928e62357853a Mon Sep 17 00:00:00 2001 From: Ben Hirschberg <59160382+slashben@users.noreply.github.com> Date: Tue, 10 Dec 2024 08:34:35 +0200 Subject: [PATCH 06/13] Update community/assessments/projects/kubescape/self-assessment.md Co-authored-by: Craig Box Signed-off-by: Ben Hirschberg <59160382+slashben@users.noreply.github.com> --- community/assessments/projects/kubescape/self-assessment.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md index fc638f542..0e6731fef 100644 --- a/community/assessments/projects/kubescape/self-assessment.md +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -326,7 +326,7 @@ There is a template for incident response for reference [here](https://github.co ### Known issues over time -* The project did not have a private disclosure of any kind yet +* At the time of preparation, the project had not had a private disclosure of any kind * Public issues can be found with the `security` label [here](https://github.com/kubescape/kubescape/labels/security) ### OpenSSF best practices From 7cc31fab86636a59f0998de96c7a2d803059c2fc Mon Sep 17 00:00:00 2001 From: Ben Hirschberg <59160382+slashben@users.noreply.github.com> Date: Tue, 10 Dec 2024 08:35:22 +0200 Subject: [PATCH 07/13] Update community/assessments/projects/kubescape/self-assessment.md Co-authored-by: Craig Box Signed-off-by: Ben Hirschberg <59160382+slashben@users.noreply.github.com> --- community/assessments/projects/kubescape/self-assessment.md | 1 - 1 file changed, 1 deletion(-) diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md index 0e6731fef..7dea7daa8 100644 --- a/community/assessments/projects/kubescape/self-assessment.md +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -2,7 +2,6 @@ This document is intended to aid the project's maintainers, contributors, and users understand the project's security status and help identify points of improvement. -*The project seeks a security reviewer for this document who is not part of the project maintainer team or community.* ## Table of contents From c35b0906d33bc509ed9f3cccb42dcdeb623aecae Mon Sep 17 00:00:00 2001 From: Ben Hirschberg <59160382+slashben@users.noreply.github.com> Date: Tue, 10 Dec 2024 08:35:33 +0200 Subject: [PATCH 08/13] Update community/assessments/projects/kubescape/self-assessment.md Co-authored-by: Craig Box Signed-off-by: Ben Hirschberg <59160382+slashben@users.noreply.github.com> --- community/assessments/projects/kubescape/self-assessment.md | 1 - 1 file changed, 1 deletion(-) diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md index 7dea7daa8..7061bdf50 100644 --- a/community/assessments/projects/kubescape/self-assessment.md +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -198,7 +198,6 @@ This self-assessment is not intended to provide a security audit of Kubescape or This document provides Kubescape users with an initial understanding of Kubescape's security, where to find existing security documentation, Kubescape's plans for security, and a general overview of Kubescape's security practices, both for the development of Kubescape and its operational security. -This document provides the CNCF TAG-Security with an initial understanding of Kubescape to assist in a joint assessment necessary for projects under incubation. Taken together, this document and the joint assessment serve as a cornerstone for if and when Kubescape is preparing for a security audit. ## Security functions and features From 0dfb329abc5c9af29b2dbf0119ac332ec97a3304 Mon Sep 17 00:00:00 2001 From: Ben Date: Tue, 10 Dec 2024 08:40:40 +0200 Subject: [PATCH 09/13] Link and md fixes Signed-off-by: Ben --- .../assessments/projects/kubescape/self-assessment.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md index 7061bdf50..a6bce0327 100644 --- a/community/assessments/projects/kubescape/self-assessment.md +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -2,7 +2,6 @@ This document is intended to aid the project's maintainers, contributors, and users understand the project's security status and help identify points of improvement. - ## Table of contents * [Metadata](#metadata) @@ -113,7 +112,7 @@ This component is an optional part of the Kubescape Operator. It enables users t #### Detailed overview -A more detailed architectural representation, can be found [here](https://github.com/kubescape/helm-charts/blob/doc/charts/kubescape-operator/README.md#in-cluster-components-overview) +A more detailed architectural representation, can be found [here](https://github.com/kubescape/helm-charts/tree/main/charts/kubescape-operator#in-cluster-components-overview) #### Objects @@ -198,7 +197,6 @@ This self-assessment is not intended to provide a security audit of Kubescape or This document provides Kubescape users with an initial understanding of Kubescape's security, where to find existing security documentation, Kubescape's plans for security, and a general overview of Kubescape's security practices, both for the development of Kubescape and its operational security. - ## Security functions and features In general, Kubescape is a security project; therefore, we do not list all the features here, only the "non-functional" security features. @@ -331,5 +329,4 @@ There is a template for incident response for reference [here](https://github.co The Kubescape project is continuously improving its practices based on the OpenSSF recommendations, see scores [here](https://securityscorecards.dev/viewer/?uri=github.com/kubescape/kubescape) - - \ No newline at end of file + \ No newline at end of file From 6fe408084a080f8e19c633700394e08f97545650 Mon Sep 17 00:00:00 2001 From: Ben Hirschberg <59160382+slashben@users.noreply.github.com> Date: Tue, 10 Dec 2024 18:56:48 +0200 Subject: [PATCH 10/13] Apply suggestions from code review Co-authored-by: Eddie Knight Signed-off-by: Ben Hirschberg <59160382+slashben@users.noreply.github.com> --- community/assessments/projects/kubescape/self-assessment.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md index a6bce0327..3930bcdf3 100644 --- a/community/assessments/projects/kubescape/self-assessment.md +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -94,7 +94,7 @@ This component is responsible for image vulnerability scanning. It can either pr ##### Node agent component -This component has multiple purposes all bound to information available on Kubernetes nodes. +This component has multiple purposes which are all bound to information available on Kubernetes nodes. * Produces SBOMs from the images available on the node (used by *KubeVuln*) * Produces information from the configurations of the Linux host of the Kubernetes node (used by *Kubescape*) @@ -327,6 +327,6 @@ There is a template for incident response for reference [here](https://github.co ### OpenSSF best practices -The Kubescape project is continuously improving its practices based on the OpenSSF recommendations, see scores [here](https://securityscorecards.dev/viewer/?uri=github.com/kubescape/kubescape) +The Kubescape project is continuously improving its practices based on the OpenSSF recommendations, see [Scorecard Results](https://securityscorecards.dev/viewer/?uri=github.com/kubescape/kubescape) and [Best Practices Badge](https://www.bestpractices.dev/en/projects/6944) \ No newline at end of file From 468841cbb73fd1521b4b8fb9263c0f3c672a43af Mon Sep 17 00:00:00 2001 From: Ben Date: Tue, 10 Dec 2024 19:02:07 +0200 Subject: [PATCH 11/13] Adding link to the disclosure procedure Signed-off-by: Ben --- community/assessments/projects/kubescape/self-assessment.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md index 3930bcdf3..08be37190 100644 --- a/community/assessments/projects/kubescape/self-assessment.md +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -286,7 +286,7 @@ For a complete list of closed security issues, please refer to [this link](https ### Responsible Disclosures Process -In case of suspected security issues, incidents, or vulnerabilities, both external and internal to the project, Kubescape has a responsible disclosure process in place. The process is designed to handle security vulnerabilities quickly and sometimes privately. The primary goal of this process is to reduce the time users are vulnerable to publicly known exploits. +In case of suspected security issues, incidents, or vulnerabilities, both external and internal to the project, Kubescape has a responsible disclosure process in place. The process is designed to handle security vulnerabilities quickly and sometimes privately. The primary goal of this process is to reduce the time users are vulnerable to publicly known exploits. Follow [these communication channels](#reporting-security-vulnerabilities) #### Vulnerability Response Process From 6e7f8e9acfdbb69784e3b084d569a6adc625a33f Mon Sep 17 00:00:00 2001 From: Ben Date: Tue, 10 Dec 2024 19:28:19 +0200 Subject: [PATCH 12/13] clarification Signed-off-by: Ben --- community/assessments/projects/kubescape/self-assessment.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md index 08be37190..4d5a70ac4 100644 --- a/community/assessments/projects/kubescape/self-assessment.md +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -94,7 +94,7 @@ This component is responsible for image vulnerability scanning. It can either pr ##### Node agent component -This component has multiple purposes which are all bound to information available on Kubernetes nodes. +This component has multiple purposes all are related to information only available on Kubernetes nodes: * Produces SBOMs from the images available on the node (used by *KubeVuln*) * Produces information from the configurations of the Linux host of the Kubernetes node (used by *Kubescape*) From b3394d36f553c663ad2403f166ba1e3a2ce5922b Mon Sep 17 00:00:00 2001 From: Ben Date: Tue, 10 Dec 2024 21:11:41 +0200 Subject: [PATCH 13/13] Improve clarity in self-assessment documentation for Node agent component Signed-off-by: Ben --- community/assessments/projects/kubescape/self-assessment.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community/assessments/projects/kubescape/self-assessment.md b/community/assessments/projects/kubescape/self-assessment.md index 4d5a70ac4..eb80dfab1 100644 --- a/community/assessments/projects/kubescape/self-assessment.md +++ b/community/assessments/projects/kubescape/self-assessment.md @@ -94,7 +94,7 @@ This component is responsible for image vulnerability scanning. It can either pr ##### Node agent component -This component has multiple purposes all are related to information only available on Kubernetes nodes: +This component serves multiple purposes, all of which are related to information that is only available on Kubernetes nodes: * Produces SBOMs from the images available on the node (used by *KubeVuln*) * Produces information from the configurations of the Linux host of the Kubernetes node (used by *Kubescape*)