前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Krane:一款功能强大的Kubernetes RBAC静态分析与可视化工具

Krane:一款功能强大的Kubernetes RBAC静态分析与可视化工具

作者头像
FB客服
发布2023-03-30 21:40:41
4080
发布2023-03-30 21:40:41
举报
文章被收录于专栏:FreeBufFreeBuf

关于Krane

Krane是一款功能强大的Kubernetes RBAC静态分析与可视化工具,该工具可以帮助广大研究人员分析K8s RBAC设计中存在的安全隐患,并提供相应的安全防范措施及建议。Krane的仪表盘可以显示当前RBAC的安全态势,并允许我们查看其他相关详情。

功能介绍

RBAC风险规则:Krane可以评估一组内置的RBAC风险规则,并支持使用一组自定义规则修改或扩展这些规则。 便携性:Krane能够以下列模式执行:命令行工具、Docker容器、CI/CD管道或单独服务。 报告:Krane能够以机器可读的格式声称详细的RBAC风险评估报告。 仪表盘:Krane提供了简单友好的仪表盘UI,帮助广大研究人员更好地了解目标Kubernetes RBAC的安全情况。 警报:如果检测到了中、高安全风险,Krane将会通过Slack向用户发出警报。 图形化RBAC:Krane可以将Kubernetes RBAC全部索引到一个本地图形数据库中,这使得RBAC数据的任何进一步的特殊查询都变得容易,支持使用任意CypherQL查询。

工具架构

Krane本地运行

Krane的功能依赖于RedisGraph,docker-compose栈定义了Krane服务本地构建和运行的所有依赖:

代码语言:javascript
复制
docker-compose up -d

注意,Krane的Docker镜像会自动进行预编译。

在本地运行docker-compose时,Krane不会自动开启RBAC报告和仪表盘,容器默认会休眠24小时,这个可以在docker-compose.override.yml中调整。

Krane执行:

代码语言:javascript
复制
# Exec into a running Krane container
docker-compose exec krane bash
# Once in the container you can start using `krane` commands. Try `krane -help`.
$ krane -h

检查正在运行的服务以及相关端口:

代码语言:javascript
复制
docker-compose ps

停止Krane运行及其相关服务:

代码语言:javascript
复制
docker-compose down

Krane可用命令

代码语言:javascript
复制
$ krane --help
  NAME:
    krane
  DESCRIPTION:
    Kubernetes RBAC static analysis & visualisation tool
  COMMANDS:
    dashboard Start K8s RBAC dashboard server
    help      Display global or [command] help documentation
    report    Run K8s RBAC report
  GLOBAL OPTIONS:
    -h, --help
        Display help documentation
    -v, --version
        Display version information
    -t, --trace
        Display backtrace when an error occurs
  AUTHOR:
    Marcin Ciszak <marcin.ciszak@appvia.io> - Appvia Ltd <appvia.io>

生成RBAC报告

针对一个正在运行的集群,生成报告时需要提供一个kubectl上下文:

代码语言:javascript
复制
krane report -k <context>

针对本地RBAC yaml/json文件运行,需要提供一个目录路径:

代码语言:javascript
复制
krane report -d </path/to/rbac-directory>

针对一个正在Kubernetes集群中运行的容器生成报告:

代码语言:javascript
复制
krane report --incluster

可视化仪表盘

查看RBAC数、网络图和最新的报告结果,首先需要启动仪表盘服务器:

代码语言:javascript
复制
krane dashboard

注意:本地Web服务器默认端口为8000,并且会显示仪表盘地址。

项目地址:点击底部【阅读原文】获取

精彩推荐

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关于Krane
  • 功能介绍
  • 工具架构
  • Krane本地运行
  • Krane可用命令
  • 生成RBAC报告
  • 可视化仪表盘
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档