All Projects → alcideio → iskan

alcideio / iskan

Licence: Apache-2.0 license
Kubernetes Native, Runtime Container Image Scanning

Programming Languages

go
31211 projects - #10 most used programming language
javascript
184084 projects - #8 most used programming language
shell
77523 projects
Makefile
30231 projects
SCSS
7915 projects
Mustache
554 projects

Projects that are alternatives of or similar to iskan

pixie
Instant Kubernetes-Native Application Observability
Stars: ✭ 3,238 (+9151.43%)
Mutual labels:  gke, aks, eks
Networking-and-Kubernetes
This is the code repo for Networking and Kubernetes: A Layered Approach. https://learning.oreilly.com/library/view/networking-and-kubernetes/9781492081647/
Stars: ✭ 103 (+194.29%)
Mutual labels:  gke, aks, eks
k8s-harbor
Harbor in Kubernetes
Stars: ✭ 36 (+2.86%)
Mutual labels:  vulnerability-scanners, harbor, eks
multicloud
A multicloud demonstration presented at KubeCon 2019 EU featuring the Hipster Shop across AKS, GKE, and On-Premises
Stars: ✭ 13 (-62.86%)
Mutual labels:  gke, aks, eks
build-your-own-platform-with-knative
Knativeのコンポーネントを理解しながらFaaSプラットフォームをDIYするワークショップです
Stars: ✭ 43 (+22.86%)
Mutual labels:  gke, gcr
gitops-playground
Reproducible infrastructure to showcase GitOps workflows and evaluate different GitOps Operators on Kubernetes
Stars: ✭ 77 (+120%)
Mutual labels:  gke, gcr
terraform-aws-eks-fargate-cluster
Source code of my AWS EKS with fargate cluster setup
Stars: ✭ 26 (-25.71%)
Mutual labels:  eks, eks-cluster
Sdwannewhope
SD-WAN security and insecurity
Stars: ✭ 141 (+302.86%)
Mutual labels:  vulnerabilities, vulnerability-scanners
inthewilddb
Hourly updated database of exploit and exploitation reports
Stars: ✭ 127 (+262.86%)
Mutual labels:  vulnerabilities, vulnerability-scanners
kconnect
Kubernetes Connection Manager CLI
Stars: ✭ 168 (+380%)
Mutual labels:  aks, eks
ochrona-cli
A command line tool for detecting vulnerabilities in Python dependencies and doing safe package installs
Stars: ✭ 46 (+31.43%)
Mutual labels:  vulnerabilities, vulnerability-scanners
azure-container-labs
Azure Container Labs - AKS, ACR, ACI, Web App for Containers, etc under frequent update
Stars: ✭ 24 (-31.43%)
Mutual labels:  acr, aks
terraform-modules
Terraform Modules by Peak
Stars: ✭ 16 (-54.29%)
Mutual labels:  ecr, eks
Pinaak
A vulnerability fuzzing tool written in bash, it contains the most commonly used tools to perform vulnerability scan
Stars: ✭ 69 (+97.14%)
Mutual labels:  vulnerabilities, vulnerability-scanners
laravel-php-k8s
Just a simple port of renoki-co/php-k8s for easier access in Laravel
Stars: ✭ 71 (+102.86%)
Mutual labels:  gke, eks
Sbt Dependency Check
SBT Plugin for OWASP DependencyCheck. Monitor your dependencies and report if there are any publicly known vulnerabilities (e.g. CVEs). 🌈
Stars: ✭ 187 (+434.29%)
Mutual labels:  vulnerabilities, vulnerability-scanners
Arissploit
Arissploit Framework is a simple framework designed to master penetration testing tools. Arissploit Framework offers simple structure, basic CLI, and useful features for learning and developing penetration testing tools.
Stars: ✭ 114 (+225.71%)
Mutual labels:  vulnerabilities, vulnerability-scanners
Vuln Web Apps
A curated list of vulnerable web applications.
Stars: ✭ 128 (+265.71%)
Mutual labels:  vulnerabilities, vulnerability-scanners
scan-cli-plugin
Docker Scan is a Command Line Interface to run vulnerability detection on your Dockerfiles and Docker images
Stars: ✭ 135 (+285.71%)
Mutual labels:  vulnerabilities, vulnerability-scanners
vulners-agent
Agent scanner for vulners.com
Stars: ✭ 62 (+77.14%)
Mutual labels:  vulnerabilities, vulnerability-scanners

release Go Version Release License Tweet

iSKan | Kubernetes Native Image Scanning

iskan

Harness your existing Container Image Vulnerability Scanning information to your Kubernetes Cluster. iskan enables you to:

  • Plug one or more container image vulnerability providers such as ECR, GCR, Azure, Harbor and others
  • Analyse the running Pods and their containers for known vulnerabilities.
  • Control the scan scope to certain namespaces
  • Filter scan results by: Severity, CVSS Score, Fixable CVEs, and even snooze specific CVEs.
Supported Vulnerability Scan Providers
  • AWS ECR
  • GCP GCR
  • Azure ACR (Preview)
  • Rapid7 InsightVM (Preview)
  • Harbor - v2.0 API
  • Inline Local Scanner - Trivy (Experimental)

Install

Download the latest from the release page

curl https://raw.githubusercontent.com/alcideio/iskan/master/download.sh | bash

Usage

Scan Your Cluster

iskan --cluster-context mycluster --api-config myconfig.yaml
iskan cluster command reference(Click to expand)
  Get vulnerabilities information on the presently running containers

  Usage:
    iskan cluster [flags]

  Aliases:
    cluster, scan-cluster

  Flags:
    -c, --api-config string          The Vulnerability API configuration file name
        --cluster-context string     Cluster Context .use 'kubectl config get-contexts' to list available contexts
        --filter-cvss float32        Include CVEs with CVSS score greater or equal than the specified number. Valid values: 0.0-10.0
        --filter-fixable-only        Include CVEs with which are fixable
        --filter-severity string     Select which severities to include. Comma seperated MINIMAL,LOW,MEDIUM,HIGH,CRITICAL
    -f, --format string              Output format. Supported formats: json | yaml | html (default "json")
    -h, --help                       help for cluster
        --namespace-exclude string   Namespaces to exclude from the scan (default "kube-system")
        --namespace-include string   Namespaces to include in the scan (default "*")
    -o, --outfile string             Output file name. Use '-' to output to stdout (default "alcide-iskan.report")
    -r, --report-config string       The Report configuration file name
        --scan-api-burst int32       Maximum burst for throttle (default 100)
        --scan-api-qps float32       Indicates the maximum QPS to the vuln providers (default 30)

  Global Flags:
    -v, --v Level   number for the log level verbosity
Example Vulnerability API Configuration File (Click to expand)
providers:
  - kind: "gcr"
    repository: "gcr.io/yourproject"
    creds:
      gcr: |
        {
          "type": "service_account",
          "project_id": "yourproject",
          "private_key_id": "XXX",
          "private_key": "",
          "client_email": "[email protected]",
          "client_id": "666",
          "auth_uri": "https://accounts.google.com/o/oauth2/auth",
          "token_uri": "https://oauth2.googleapis.com/token",
          "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
          "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/imagevulreader%40yourproject.iam.gserviceaccount.com"
        }
  - kind: "ecr"
    repository: "yourawsaccount.dkr.ecr.us-west-2.amazonaws.com/iskan"
    creds:
      ecr:
        accessKeyId: AWSKEY
        secretAccessKey: AWSSECRET
        region: us-west-2
  - kind: "acr"
    repository: "alcide.azurecr.io/iskan"
    creds:
      acr:
        tenantId: mytenantid
        subscriptionId: subscrrptionId
        clientId: clientId
        clientSecret: clientsecret
        cloudName: "AZUREPUBLICCLOUD"
  - kind: "trivy"
    # Use "*" for a capture all images
    repository: "*"
    creds:
      trivy:
        debugMode: false

  - kind: "harbor"
    repository: "core.harbor.domain"
    creds:
      harbor:
        host: "core.harbor.domain"
        username: admin
        password: Harbor12345
        insecure: false

  - kind: "insightvm"
    repository: "alcide/iskan"
    creds:
      insightvm:
        apikey: "your-api-key"
        region: "us"
Vulnerabilities Provider API References
Provider References
ECR ECR Policies, ECR Image Scanning
GCR Enabling the Container Scanning API
ACR Azure Defender, Vulnerability Assessment in Azure
InsightVM InsightVM Container Security
Harbor Harbor Administration
Trivy Trivy on GitHub

Scan Image

The primary use case for this is to test your vulnerability provider api configuration

Get vulnerabilities information for a given container image

Usage:
  iskan image [flags]

Aliases:
  image, scan-image, i, container, scan-container

Examples:
iskan image --image="gcr.io/myproj/path/to/myimage:v1.0" --api-config myconfig.yaml -f table --filter-severity CRITICAL,HIGH

Flags:
  -c, --api-config string        The Vulnerability API configuration file name
      --filter-cvss float32      Include CVEs with CVSS score greater or equal than the specified number. Valid values: 0.0-10.0
      --filter-fixable-only      Include CVEs with which are fixable
      --filter-severity string   Select which severities to include. Comma seperated MINIMAL,LOW,MEDIUM,HIGH,CRITICAL
  -f, --format string            Output format. Supported formats: json | yaml | table (default "json")
  -h, --help                     help for image
  -i, --image string             container image for which vulnerabilities information should be obtained

Global Flags:
  -v, --v Level   number for the log level verbosity

Milestones

Click To See List
  • Multiple Vulnerability API Providers (ECR, GCR)
  • Coverage Report
  • E2E
  • Binary Release
  • Scope & Exception Configuration
  • Docker Images
  • Cluster Scan CronJob (Helm Install)
  • Public image scan support using inline scan engine
  • Report export to 3rd party integrations (Slack, Webhook, ...)
  • Report formats (json, yaml)
  • Fancy HTML report
  • Examples & Documentation
  • Running in watch mode
  • kubectl iskan plugin

Contributing

Bugs

If you think you have found a bug please follow the instructions below.

  • Please spend a small amount of time giving due diligence to the issue tracker. Your issue might be a duplicate.
  • Open a new issue if a duplicate doesn't already exist.

Features

If you have an idea to enhance iskan follow the steps below.

  • Open a new issue.
  • Remember users might be searching for your issue in the future, so please give it a meaningful title to helps others.
  • Clearly define the use case, using concrete examples.
  • Feel free to include any technical design for your feature.

Pull Requests

  • Your PR is more likely to be accepted if it focuses on just one change.
  • Please include a comment with the results before and after your change.
  • Your PR is more likely to be accepted if it includes tests.
  • You're welcome to submit a draft PR if you would like early feedback on an idea or an approach.

Stargazers over time

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].