Coder Social home page Coder Social logo

clusterscanner's Introduction

Cluster Scanner

Logo

Discover vulnerabilities and container image misconfiguration in production environments.

Introduction

The Cluster Scanner detects images in a Kubernetes cluster and provides fast feedback based on various security tests. It is recommended to run the Cluster Scanner in production environments in order to get up-to-date feedback on security issues where they have real impact.

Since the Cluster Scanner itself is a service running within your Kubernetes cluster you can re-use your existing deployment procedures.

Overview

The following figure provides an overview: Overview The following steps are conducted.

  1. The Image Collector, as the name suggests, collects the different images from a container environment like a kubernetes cluster. The Collector creates a JSON file and including information like the cluster, the responsible team, and image.
  2. The Orchestrator (implemented via ArgoWorkflows) starts the workflow periodically (e.g. nightly)
  3. The images from the Collector can be pulled by the Image Fetcher
  4. These files are kept in a separate directory and from there they are passed to the scanner
  5. This scanner - which then receives the libraries to be ignored via the suppressions file - then executes the scans described in the definitions of Dependency Check, Lifetime, Virus and further more.
  6. The vulnerability management system (in our case OWASP DefectDojo) then collects the results
  7. Non responded to findings are made available to the developers via a communication channel (Slack/Email).

Documentation Table of Contents

Video (English): SDA SE CluserScanner is going Open Source, 2021-03

Images

Images to be used by ArgoWorkflows are published in quay.io (2021-06-28):

  • quay.io/sdase/clusterscanner-scan-dependency-check
  • quay.io/sdase/clusterscanner-scan-runasroot
  • quay.io/sdase/clusterscanner-scan-distroless
  • quay.io/sdase/clusterscanner-scan-lifetime
  • quay.io/sdase/clusterscanner-imagefetcher
  • quay.io/sdase/clusterscanner-notifier
  • quay.io/sdase/clusterscanner-imagecollector
  • quay.io/sdase/clusterscanner-image-source-fetcher
  • quay.io/sdase/clusterscanner-workflow-runner
  • quay.io/sdase/defectdojo-client

quay.io/sdase/clusterscanner-base is the base for all quay.io/sdase/clusterscanner-* images.

Images are build with buildah. The env. parameters the image can be started with are documented via --config within the build.sh scripts within the images.

Contributing

We are looking forward to contributions. Take a look at our Contribution Guidelines before submitting Pull Requests.

Responsible Disclosure and Security

The SECURITY.md includes information on responsible disclosure and security related topics like security patches.

Legal Notice

The purpose of the ClusterScanner is not to replace the penetration testers or make them obsolete. We strongly recommend running extensive tests by experienced penetration testers on all your applications. The ClusterScanner is to be used only for testing purpose of your running applications/containers. You need a written agreement of the organization of the environment under scan to scan components with the ClusterScanner.

Author Information

This project is developed by Signal Iduna and SDA SE.

clusterscanner's People

Contributors

philband avatar wurstbrot avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.