HummerRisk 使用教程:k8s检测

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HummerRisk 使用教程:k8s检测相关的知识,希望对你有一定的参考价值。

1. 概览

HummerRisk 是开源的云原生安全平台,以非侵入的方式解决云原生环境的安全和治理问题。核心能力包括混合云的安全治理和容器云安全检测。

本文将介绍如何使用HummerRisk 进行 kubernetes 检测,包括使用流程、配置信息详细说明、基础功能使用等。

2. K8s 检测前置条件

1)安装 tirvy-operator

# 1.添加 chart 仓库
helm repo add hummer https://registry.hummercloud.com/repository/charts

# 2.更新仓库源
helm repo update

# 3.开始安装, 可以自定义应用名称和NameSpace
helm install trivy-operator hummer/trivy-operator \\
--namespace trivy-system \\
--set="image.repository=registry.cn-beijing.aliyuncs.com/hummerrisk/trivy-operator" \\
--create-namespace --set="trivy.ignoreUnfixed=true"

# 4.检测operator是否启动成功
kubectl get pod -A|grep trivy-operator
trivy-system trivy-operator-69f99f79c4-lvzvs 1/1 Running 0 118s

2)k8s 账号添加校验

  1. 确定部署 hummerrisk 的主机可以访问该 k8s 集群的 6443 端口,需要网络可达、端口可以通,如果不通可以检查防火墙;
  2. 确定提供的 k8s Token 有足够的权限,hummerrisk 会通过该 Token 调用 k8s apiserver 的 api
  3. k8s token 权限可以参考如下 创建 ServiceAccount
cat <<EOF > hummer-sa.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
name: hummer
namespace: kube-system
EOF

创建 clusterrolebinding

cat <<EOF > hummer-clusterrolebinding.yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: hummer-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: hummer
namespace: kube-system
EOF

创建资源

kubectl create -f ./hummer-sa.yaml
kubectl create -f ./hummer-clusterrolebinding.yaml

3) 获取 token

# 获取 token
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep hummer | awk print $1) | grep token: | awk print $2

2. 工作流程

完成 “K8s检测”我们需要通过一下几个步骤来完成:

HummerRisk

3. 创建kubernetes账号

进行kubernetes 检测的第一步是“创建kubernetes 账号”,因此需要确保你填写的相关配置信息无误,kubernetes 账号创建完成后,可以勾选该账号进行一键校验。具体步骤如下:

1) 登录到HummerRisk系统当中,点击云原生安全;

2) 点击 “K8s检测”,点击“创建 kubernetes 账号”;

3) 填写 kubernetes的配置信息;

4) 选择创建完成的kubernetes账号,点击“一键校验”,返回“成功”则代表kubernetes填写正确且可正常访问

HummerRisk

4. 执行扫描

1. 执行扫描前需要确定 Operator和 kube-bench 已经安装,默认 HummerRisk会自动安装,点击kubernetes账号的安装日志可以查看,如下图:

HummerRisk

2. 如果Operator和 kube-bench状态不是“有效”,可以点击对应的安装按钮,重新执行安装。

3. 之后进行扫描任务,详细步骤如下:

4. 登录到HummerRisk系统当中,点击云原生安全;

5. 点击 “K8s检测”,在对应kubernetes账号栏目点击“执行检测按钮”;

HummerRisk

6. 等待检测成功。

5. 检测结果

kubernetes检测完成后,会输出检测结果,并通过可视化的页面帮助安全管理分析、洞察 kubernetes安全状态。详细步骤如下:

1) 登录到HummerRisk系统当中,点击云原生安全;

2) 点击 “K8s检测”,点击“K8s检测结果”;

3) 此时可以查看当前kubernetes安全状态,包含漏洞检测统计、配置审计统计、CIS统计等,同时根据风险级别进行分类统计,目前分为5类风险等级,包括:

HummerRisk

4) 若需要查看检测结果详情,可以点击检测统计进行详细展示页面

HummerRisk

5) 以“漏洞检测”为例,点击“漏洞检测统计”结果后,可查看到如下漏洞详情页面,根据漏洞详情页面中的信息,我们可以查看到存在漏洞的软件名称、CVEID、风险等级、修复版本号等

HummerRisk

6) 其他结果

a. 配置审计报告

HummerRisk

b. K8s CIS Benchmark 合规报告

HummerRisk

7) 查看检测详细日志

“检测状态”会显示当前检测的执行状况,状态包括:“正在处理”,“已完成”,“异常”,“告警”。点击状态按钮,会打开检测的详细日志页面,帮助定位执行中遇到的问题,如下图:

HummerRisk

6. K8s概览

通过K8s概览页面,我们可以快速分析出当前管理的kubernetes集群安全状态,以便于管理员快速发现安全问题。

HummerRisk

HummerRisk 使用教程:资源态势

1. 概览

HummerRisk 是开源的云原生安全平台,以非侵入的方式解决云原生环境的安全和治理问题。核心能力包括混合云的安全治理和容器云安全检测。

本文将介绍如何使用HummerRisk 中的资源态势相关功能,HummerRisk 中的资源态势在两个核心部分都有,所以我们也会分两部分来介绍相关的使用。

2. 混合云资源态势

使用资源态势相关功能的前提是要完成绑定云账号,相关绑定云账号的内容,请查看多云检测相关的使用说明,这里我们假定您已经在系统中绑定好了云账号。在完成云账号绑定后,系统会自动执行一次资源同步,同步完成后即可在资源态势中查看相关云账号的资源情况。

资源清单

在资源态势页面,可以通过统一的界面查看多云账号中的资源情况。

HummerRisk

  • 左侧的「全部云账号」会列出目前绑定账号中支持资源态势的账号,点击某一账号,即可查看对应账号的云资源。
  • 「资源汇总」部分会将云资源按类别汇总数量,比如huawei.iam等。汇总打分时候会夸账号统计。
  • 「资源清单」会列出详细的资源信息,每条记录就是云上的一个相关资源。点击左侧的箭头,可以展开资源的详细信息。

HummerRisk

风险情况

每条记录都会显示风险情况,这里的风险依赖于「多云检测」的结果。如果在多云检测的过程中,发现对应的云资源存在风险,那么这里就会显示「有风险」,而如果没有风险,则对应显示「无风险」。风险状态分为「有风险」,「无风险」,「未检测」。

点击「有风险」的状态按钮,可以查看检测出本资源存在风险的检测规则,再根据相关检测历史,方便修复对应风险。

HummerRisk

云资源拓扑图

云资源拓扑图中会将所有云账号中的资源以拓扑图的形式呈现。

每一个大圈代表一个云账号,其下还会有3层,分别代表区域 -> 资源类型 -> 具体资源。同时上层的圈中会汇总下层资源的数量,便于看到统计信息。

另一个需要注意的事颜色,白色的资源代表该资源没有风险,而橘色的资源代表有风险,和前面介绍「资源清单」中的风险情况一致。

HummerRisk

云资源同步任务

除了首次绑定云账号后的自动同步任务外,还可以在系统中手动进行资源同步,在云资源同步日志列表中可以查看到全部的同步任务。

HummerRisk

点击「创建资源同步任务」,选择希望手动同步的云账号,即可创建同步任务。

HummerRisk

创建完任务后,可以在列表中查看到任务执行情况。列表中的状态包括「正在处理」,「已完成」,「异常」,「告警」,点击状态中的按钮,可以查看同步任务的详细日志信息。

HummerRisk

任务列表中还提供了「资源类型」的显示,因为各个公有云资源类型繁多,我们会逐步扩充和支持,所以通过资源类型,可以更加方便用户了解目前支持的资源。

点击云账号中的对应按钮,可以查看到该云账号支持同步的云资源类型。

HummerRisk

3. 容器云资源态势

系统中另一个资源态势,是针对 K8s 容器云的部分。这里我们会将系统中绑定的多个容器云环境进行汇总,统一将资源信息进行展示和拓扑呈现。和混合云部分相同,想要使用资源态势也需要先绑定 K8s 环境的账号。

资源清单

点击「云原生安全」->「资源态势」进入页面,在这里可以统一查看系统中绑定的多个K8s账号的资源情况。如下图:

HummerRisk

  • 左侧的「全部K8s账号」会列出目全部K8s账号,点击某一账号,即可查看对应账号的资源。
  • 「资源汇总」部分会将云资源按类别汇总数量,同时下方我们突出显示了5中常用资源,namespace,pod,node,deployment,service。
  • 「资源清单」会列出详细的资源信息,点击资源名称会看到详细资源描述文件内容

K8s资源拓扑图

在资源拓扑图中,我们通过4个视角来图形化展示K8s集群的资源情况,分别是:「K8s 风险视角」,「节点视角」,「命名空间视角」,「资源视角」。

K8s风险视角

本视角的资源拓扑核心目标是展示集群的风险情况,如下图:

HummerRisk

在本视角中,一次只显示一个K8s账号的资源风险,可以通过顶部下拉菜单切换到不同的K8s账号。

图形中部的圈代表不同的资源,资源会以namespace分类,每一个外层的圆圈代表一个namespace。内层的圆圈代表处于namespace中的具体资源。圆圈会被显示为不同的颜色,这些颜色代表风险等级,目前分为5类风险等级,具体如下:

等级

HummerRisk

可以通过右上角的选项,可以通过风险等级对资源进行过滤,还可以点击「导出PDF」将拓扑图下载下来。如图:

HummerRisk

左侧的images列出K8s中使用的全部镜像,并且基于「K8s 检测」和「镜像检测」的结果,其中存在风险的镜像会显示为红色,展开镜像信息,可以看到具体的漏洞情况。

HummerRisk

节点视角

本视角是以K8s中的node作为分类进行聚合,然后将node中资源展现出来,在本视角中会同时显示全部K8s账号的资源。

如下图:

HummerRisk

命名空间视角

本视角是以K8s中的namespace作为分类进行聚合,然后将全部K8s账号中namespace的资源展现出来。如下图:

HummerRisk

资源视角

本视角会按K8s账号进行分类,将一个K8s账号中的全部资源都显示到一起。如下图:

HummerRisk

K8s RBAC拓扑图

K8s中的权限依托RBAC进行实现和管理,但其复杂性一直困扰安全管理,本拓扑图的核心目标是展示K8s集群中的RBAC情况,包括SA,Role,resource直接的关联关系。如下图:

HummerRisk

每次只能显示一个K8s账号的情况,点击左上角的下拉菜单,可以切换显示不同K8s账号。

点击顶部的图例,可以将部分资源内容显示或隐藏。

HummerRisk

K8s资源同步任务

除了首次绑定K8s账号后会自动同步资源外,还可以在系统中手动进行资源同步,在K8s资源同步日志列表中可以查看到全部的同步任务。

点击「创建资源同步任务」,选择希望手动同步的云账号,即可创建同步任务。

HummerRisk

以上是关于HummerRisk 使用教程:k8s检测的主要内容,如果未能解决你的问题,请参考以下文章

HummerRisk 快速入门教程

HummerRisk V0.3发布:新增源码依赖检测SBOM 管理镜像仓库同步云操作审计等功能

虹软人脸识别ArcFace2.0 Android SDK使用教程

k8s搭建-详情

filebeat采集k8s日志 - 软链接(自定义docker目录使用此方法)

Android 实现人脸识别教程[运用虹软人脸识别SDK]