starboard

package module
v0.15.15 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 9, 2023 License: Apache-2.0 Imports: 5 Imported by: 0

README

Starboard is joining Vul.

We've announced our plans to discontinue Starboard and merge it into Vul.

Starboard CLI has been reintroduced as vul kubernetes command and starboard-operator with a focus on vul capabilities is available as Vul-Operator.

We will not be accepting new features/pull requests/issues. we encourage you to contribute to Vul-Operator and Vul CLI and influence the future of Vul Kubernetes.

for more info and discussions

Kubernetes-native security toolkit.

GitHub Release Build Action Release snapshot Action Coverage Status Go Report Card License GitHub All Releases Docker Pulls Starboard Docker Pulls Starboard Operator

Introduction

There are lots of security tools in the cloud native world, created by Khulnasoft and by others, for identifying and informing users about security issues in Kubernetes workloads and infrastructure components. However powerful and useful they might be, they tend to sit alongside Kubernetes, with each new product requiring users to learn a separate set of commands and installation steps in order to operate them and find critical security information.

Starboard attempts to integrate heterogeneous security tools by incorporating their outputs into Kubernetes CRDs (Custom Resource Definitions) and from there, making security reports accessible through the Kubernetes API. This way users can find and view the risks that relate to different resources in what we call a Kubernetes-native way.

Starboard provides:

  • Automated vulnerability scanning for Kubernetes workloads.
  • Automated configuration audits for Kubernetes resources with predefined rules or custom Open Policy Agent (OPA) policies.
  • Automated infrastructures scanning and compliance checks with CIS Benchmarks published by the Center for Internet Security (CIS).
  • Automated compliance report - NSA, CISA Kubernetes Hardening Kubernetes Guidance v1.0
  • Penetration test results for a Kubernetes cluster.
  • Custom Resource Definitions and a Go module to work with and integrate a range of security scanners.
  • The Octant Plugin and the Lens Extension that make security reports available through familiar Kubernetes interfaces.

Starboard can be used:

  • As a Kubernetes operator to automatically update security reports in response to workload and other changes on a Kubernetes cluster - for example, initiating a vulnerability scan when a new Pod is started or running CIS Benchmarks when a new Node is added.

  • As a command, so you can trigger scans and view the risks in a kubectl-compatible way or as part of your CI/CD pipeline.

Status

Although we are trying to keep new releases backward compatible with previous versions, this project is still incubating, and some APIs and Custom Resource Definitions may change.

Documentation

The official Documentation provides detailed installation, configuration, troubleshooting, and quick start guides.

Learn how to install the Starboard command From the Binary Releases and follow the Getting Started guide to generate your first vulnerability and configuration audit reports.

You can install the Starboard Operator with Static YAML Manifests and follow the Getting Started guide to see how vulnerability and configuration audit reports are generated automatically.

Read more about the motivations for the project in the Starboard: The Kubernetes-Native Toolkit for Unifying Security blog.

Contributing

At this early stage we would love your feedback on the overall concept of Starboard. Over time, we'd love to see contributions integrating different security tools so that users can access security information in standard, Kubernetes-native ways.

  • See Contributing for information about setting up your development environment, and the contribution workflow that we expect.
  • See Roadmap for tentative features in a 1.0.0 release.

Starboard is an KhulnaSoft open source project.
Learn about our Open Source Work and Portfolio.
Join the community, and talk to us about any matter in GitHub Discussions or Slack.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetClusterComplianceDetailReportsCRD

func GetClusterComplianceDetailReportsCRD() (apiextensionsv1.CustomResourceDefinition, error)

func GetClusterComplianceReportsCRD

func GetClusterComplianceReportsCRD() (apiextensionsv1.CustomResourceDefinition, error)

func GetClusterConfigAuditReportsCRD

func GetClusterConfigAuditReportsCRD() (apiextensionsv1.CustomResourceDefinition, error)

func GetClusterVulnerabilityReportsCRD

func GetClusterVulnerabilityReportsCRD() (apiextensionsv1.CustomResourceDefinition, error)

func GetNSASpecV10

func GetNSASpecV10() (v1alpha1.ClusterComplianceReport, error)

func GetVulnerabilityReportsCRD

func GetVulnerabilityReportsCRD() (apiextensionsv1.CustomResourceDefinition, error)

func PoliciesConfigMap

func PoliciesConfigMap() (corev1.ConfigMap, error)

Types

This section is empty.

Directories

Path Synopsis
cmd
itest
helper
The helper package provides builders to instantiate Kubernetes objects used in integration tests.
The helper package provides builders to instantiate Kubernetes objects used in integration tests.
matcher
The matcher package provides domain-specific Gomega matchers.
The matcher package provides domain-specific Gomega matchers.
pkg
apis/khulnasoft/v1alpha1
Package v1alpha1 is the v1alpha1 version of the API.
Package v1alpha1 is the v1alpha1 version of the API.
cmd
Package cmd provides primitives for implementing Starboard CLI.
Package cmd provides primitives for implementing Starboard CLI.
configauditreport
Package configauditreport provides primitives for working with Kubernetes workload configuration checkers.
Package configauditreport provides primitives for working with Kubernetes workload configuration checkers.
docker
Package docker provides primitives for working with Docker.
Package docker provides primitives for working with Docker.
ext
generated/clientset/versioned
This package has the automatically generated clientset.
This package has the automatically generated clientset.
generated/clientset/versioned/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
generated/clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
generated/clientset/versioned/typed/khulnasoft/v1alpha1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
generated/clientset/versioned/typed/khulnasoft/v1alpha1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
kube
Package kube provides primitives for working with Kubernetes objects.
Package kube provides primitives for working with Kubernetes objects.
kubebench
Package kubebench provides primitives for working with CIS Kubernetes benchmarks.
Package kubebench provides primitives for working with CIS Kubernetes benchmarks.
kubehunter
Package kubehunter provides primitives for working with KubeHunter.
Package kubehunter provides primitives for working with KubeHunter.
operator
Package operator provides primitives for implementing Starboard Operator.
Package operator provides primitives for implementing Starboard Operator.
plugin
Package plugin aggregates plugins for Starboard.
Package plugin aggregates plugins for Starboard.
plugin/conftest
Package conftest provides primitives for working with Conftest.
Package conftest provides primitives for working with Conftest.
plugin/khulnasoft
Package khulnasoft provides primitives for working with Khulnasoft Enterprise scanner.
Package khulnasoft provides primitives for working with Khulnasoft Enterprise scanner.
plugin/khulnasoft/client
Package client provides an HTTP client for selected Khulnasoft Enterprise API endpoints.
Package client provides an HTTP client for selected Khulnasoft Enterprise API endpoints.
plugin/khulnasoft/scanner/api
Package api provides primitives for getting vulnerability reports via Khulnasoft Enterprise API
Package api provides primitives for getting vulnerability reports via Khulnasoft Enterprise API
plugin/khulnasoft/scanner/cli
Package cli provides primitives for getting vulnerability reports by executing the scannercli command.
Package cli provides primitives for getting vulnerability reports by executing the scannercli command.
plugin/polaris
Package polaris provides primitives for working with Polaris.
Package polaris provides primitives for working with Polaris.
plugin/vul
Package vul provides primitives for working with Vul.
Package vul provides primitives for working with Vul.
report
Package report provides primitives for generating HTML reports.
Package report provides primitives for generating HTML reports.
report/templates
Package templates provides code generated from *.qtpl templates.
Package templates provides code generated from *.qtpl templates.
runner
Package runner provides primitives to run tasks as Kubernetes Jobs.
Package runner provides primitives to run tasks as Kubernetes Jobs.
starboard
Package starboard provides primitives for working with Starboard toolkit.
Package starboard provides primitives for working with Starboard toolkit.
vulnerabilityreport
Package vulnerabilityreport provides primitives for working with vulnerability scanners.
Package vulnerabilityreport provides primitives for working with vulnerability scanners.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL