您公司的威胁情报部门已经通知您,黑客活动分子刚刚在社交媒体上发帖,声称他们可以通过利用Kubernetes服务访问内部网络,该服务可从互联网公开访问。请确认报告的真实性,并尽快关闭开放服务
验证攻击
验证内部服务是否如报告的那样可以外部互联网访问,如果可以,攻击者将如何滥用它。
假设,目前公司集群中,已部署的资源如下:
我们在浏览器中打开报告中攻击者用来访问服务的URL。
可以看到此服务如何允许我们在管理工具容器上运行任意命令,从而使外部攻击者访问公司网络内变得更加容易。
原因:
为何内部服务 admin-tool 应用会被暴露在集群外?
(Tips:详见Service类型NodePort 作用)
解决:
只需要确保服务只在内部暴露即可,更改Serive Type类型
重写 admin-service
服务 使得 admin-tool
只在内部访问
重新部署服务资源后,验证下确保服务不是公开的,而是可以从集群内访问的。 在集群中app
POD 里执行 curl http://admin-service:8080.
外部浏览器已经无法打开
原文关注公众号:“云原生SRE”