Skip to content

vishnusomank/KubeArmor

 
 

Repository files navigation

KubeArmor Logo

Build Status CII Best Practices Slack Discussions

KubeArmor is a cloud-native runtime security enforcement system that restricts the behavior (such as process execution, file access, and networking operations) of pods, containers, and nodes (VMs) at the system level.

KubeArmor leverages Linux security modules (LSMs) such as AppArmor, SELinux, or BPF-LSM to enforce the user-specified policies. KubeArmor generates rich alerts/telemetry events with container/pod/namespace identities by leveraging eBPF.

💪 Harden Infrastructure
🔹 Protect critical paths such as cert bundles ⛓️
🔹 MITRE, STIGs, CIS based rules 🗜️
🔹 Restrict access to raw DB table 🛅
💍 Least Permissive Access
🔹 Process Whitelisting 🚥
🔹 Network Whitelisting 🚥
🔹 Control access to sensitive assets 🎛️
❄️ Network Segmentation
🔹 Communication Graph between services/pods 🕸️
🔹 Generate k8s network policies 🪄
🔹 Keep policies in sync with app updates 📥
🔭 Application Behavior
🔹 Process execs, File System accesses 🧬
🔹 Service binds, Ingress, Egress connections 🧭
🔹 Sensitive system call profiling 🔬

Architecture Overview

KubeArmor High Level Design

Documentation 📓

Contributors 👥

Biweekly Meetup

Notice/Credits 🤝

  • KubeArmor uses Tracee's system call utility functions.

CNCF

KubeArmor is Sandbox Project of the Cloud Native Computing Foundation. CNCF SandBox Project

About

Cloud-native Runtime Security Enforcement System

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 72.3%
  • Shell 12.0%
  • C 7.6%
  • HTML 4.4%
  • Makefile 3.3%
  • Dockerfile 0.4%