Kube-hunter:一个用于Kubernetes渗透测试的开源工具

Kube-hunter:一个用于Kubernetes渗透测试的开源工具_第1张图片

我们最近发布了一款叫做Kube-hunter[1]的免费工具。你只需提供你的Kubernetes集群的IP或者DNS名称,Kube-hunter就会探查集群中的安全漏洞——这个过程就像是自动化的渗透测试。
注意:这个工具目的是为了帮助测试你自己部署的集群,以便你找到潜在的安全问题。请不要用这个工具探测不属于你的集群!
如果你的集群的Kubernetes监控面板被暴露到公网或者你的kubelets可以被外界访问,Kube-hunter会向你发出警告。


运行Kube-hunter

640

Kube-hunter是开源[2]的,我们同时也提供容器化的版本,使它可以很容易的运行起来。容器化的版本需要和我们的kube-hunter网站[3]一起使用,在这个网站上你可以很容易的查看结果,并将结果共享给你的团队。
在kube-hunter网站,输入你的email, 你将会得到一个包含token的Docker命令,复制该命令并运行它(确保你安装了Docker),系统将会弹出框提示你输入你想测试的Kubernetes的集群的地址。当所有测试运行完后,你将会看到一个用于查看结果的唯一URL(与之前的token相关联),你可以将这个URL分享给需要查看结果的其他任何人。


被动猎人以及active猎人

640

此处应该翻译为主动猎人,但是下文中active更容易理解
Kube-hunter默认只运行“被动猎人”,被动猎人指的是一系列测试,这些测试是用于探测集群中的潜在访问点(如开放端口)。
你也可以打开“主动打猎”模式,只需要加上--active参数。当使用active模式时,kube-hunter会尝试利用“被动猎人”发现的任何弱点来进行一些额外的测试。active猎人目的是为了展示攻击者可能做的事情,虽然我们并不想这些测试做任何破坏性的操作,但是你应该谨慎使用,因为active猎人可能会改变集群的状态或其中运行的代码。例如:有一个 active猎人[4]尝试进入一个容器并运行uname命令。


负责任的进行渗透测试

640

或许我不该强调这么多遍,但是你绝对不能把kube-hunter用于别人的集群!虽然这个工具极大可能被用于攻击其他网站,但是绝对不是我们的目的(如果您使用kube-hunter网站,在您接受的条款和条件中明确的禁止了这类事情)。
在发布kube-hunter之前,我们仔细考虑了它会被坏人利用的可能性;但事实上,他们可能已经通过一些通用工具,例如port scanning (端口扫描)进行了类似的测试。我们希望为Kubernetes管理员,操作员和工程师提供一种简单的方法来识别他们集群中的安全漏洞,以便这些漏洞被攻击者利用之前被解决掉。


测试

640

你可以在kube-hunter网站上找到已经实现的测试列表,或者使用--list参数运行kube-hunter。这些测试尚不全面,但确实有很多猎人可以发现许多常见问题。


开源测试

640

基础的测试代码是开源的(你可以在不使用网站的情况下运行),我们欢迎大家的反馈,想法,希望大家能贡献其他猎人的代码!
相关链接:
  1. https://kube-hunter.aquasec.com/

  2. https://github.com/aquasecurity/kube-hunter

  3. http://kube-hunter.aquasec.com/

  4. https://github.com/aquasecurity/kube-hunter/blob/25b226e8498b55fa1ef694dd939f2c1267e89f11/src/modules/hunting/kubelet.py#L295


原文链接:https://blog.aquasec.com/kube-hunter-kubernetes-penetration-testing


Kubernetes实战培训

640?


Kubernetes应用实战培训将于2018年10月12日在深圳开课,3天时间带你系统学习Kubernetes 本次培训包括:容器基础、Docker基础、Docker进阶、Kubernetes架构及部署、Kubernetes常用对象、Kubernetes网络、存储、服务发现、Kubernetes的调度和服务质量保证、监控和日志、Helm、项目实践等,点击下方图片查看详情。

640?

你可能感兴趣的:(Kube-hunter:一个用于Kubernetes渗透测试的开源工具)