Aqua
是一家专注于Docker、Kubernetes、Mesos安全的公司,最近他们开源了一款测试工具叫做kube-hunter。kube-hunter翻译成中文是Kubenetes猎人,而这个猎人寻找的“猎物”就是Kubernetes集群中的安全漏洞。
我们最近发布了一款叫做 Kube-hunter 的免费工具。你只需提供你的Kubernetes集群的IP或者DNS名称,Kube-hunter就会探查集群中的安全漏洞——这个过程就像是自动化的渗透测试。
Kube-hunter是
开源
的,我们同时也提供容器化的版本,使它可以很容易的运行起来。容器化的版本需要和我们的
kube-hunter网站
一起使用,在这个网站上你可以很容易的查看结果,并将结果共享给你的团队。
在 kube-hunter网站 ,输入你的email, 你将会得到一个包含token的Docker命令,复制该命令并运行它(确保你安装了Docker),系统将会弹出框提示你输入你想测试的Kubernetes的集群的地址。当所有测试运行完后,你将会看到一个用于查看结果的唯一URL(与之前的token相关联),你可以将这个URL分享给需要查看结果的其他任何人。
Kube-hunter 默认只运行“被动猎人” ,被动猎人指的是一系列测试,这些测试是用于探测集群中的潜在访问点(如开放端口)。
你也可以打开“主动打猎”模式,只需要加上
在发布kube-hunter之前,我们仔细考虑了它会被坏人利用的可能性;但事实上,他们可能已经通过一些通用工具,例如 port scanning (端口扫描)进行了类似的测试。我们希望为Kubernetes管理员,操作员和工程师提供一种简单的方法来识别他们集群中的安全漏洞,以便这些漏洞被攻击者利用之前被解决掉。
我们最近发布了一款叫做 Kube-hunter 的免费工具。你只需提供你的Kubernetes集群的IP或者DNS名称,Kube-hunter就会探查集群中的安全漏洞——这个过程就像是自动化的渗透测试。
注意:这个工具目的是为了帮助测试你自己部署的集群,以便你找到潜在的安全问题。请不要用这个工具探测不属于你的集群!如果你的集群的 Kubernetes监控面板被暴露到公网 或者你的 kubelets可以被外界访问 ,Kube-hunter会向你发出警告。
运行Kube-hunter
在 kube-hunter网站 ,输入你的email, 你将会得到一个包含token的Docker命令,复制该命令并运行它(确保你安装了Docker),系统将会弹出框提示你输入你想测试的Kubernetes的集群的地址。当所有测试运行完后,你将会看到一个用于查看结果的唯一URL(与之前的token相关联),你可以将这个URL分享给需要查看结果的其他任何人。
被动猎人以及active猎人
(此处应该翻译为主动猎人,但是下文中active更容易理解)Kube-hunter 默认只运行“被动猎人” ,被动猎人指的是一系列测试,这些测试是用于探测集群中的潜在访问点(如开放端口)。
你也可以打开“主动打猎”模式,只需要加上
--active
参数。当使用active模式时,kube-hunter会尝试利用“被动猎人”发现的任何弱点来进行一些额外的测试。active猎人目的是为了展示攻击者可能做的事情,虽然我们并不想这些测试做任何破坏性的操作,但是你应该谨慎使用,因为active猎人可能会改变集群的状态或其中运行的代码。例如:有一个
active猎人
尝试进入一个容器并运行
uname
命令。
负责任的进行渗透测试
或许我不该强调这么多遍,但是你绝对不能把kube-hunter用于别人的集群!虽然这个工具极大可能被用于攻击其他网站,但是绝对不是我们的目的(如果您使用kube-hunter网站,在您接受的条款和条件中明确的禁止了这类事情)。在发布kube-hunter之前,我们仔细考虑了它会被坏人利用的可能性;但事实上,他们可能已经通过一些通用工具,例如 port scanning (端口扫描)进行了类似的测试。我们希望为Kubernetes管理员,操作员和工程师提供一种简单的方法来识别他们集群中的安全漏洞,以便这些漏洞被攻击者利用之前被解决掉。
测试
你可以在kube-hunter网站上找到已经实现的测试列表,或者使用--list
参数运行kube-hunter。这些测试尚不全面,但确实有很多猎人可以发现许多常见问题。
开源测试
基础的测试代码是开源的(你可以在不使用网站的情况下运行),我们欢迎大家的反馈,想法,希望大家能贡献其他猎人的代码!
本文转自DockOne-Kube-hunter:一个用于Kubernetes渗透测试的开源工具