从cloudstack默认配置看NFS安全

看到有同学写了关于NFS的运维安全,本菜鸟以cloudstack为例也写下关于NFS访问控制安全吧。

0x00 NFS默认配置缺陷


在Cloudstack云平台部署时,按照apache官方的安装文档,如果又不对管理网络进行隔离会导致整个云环境中的虚拟机处于危险状态:

2014042411404387958.jpg

http://cloudstack.apache.org/docs/zh-CN/Apache_CloudStack/4.1.1/html/Installation_Guide/management-server-install-flow.html#prepare-nfs-share

1.     配置新的路径作为 NFS 引入, 编辑/etc/exports。引入NFS 共享用rw,async,no_root_squash。例如:

[cce]#!bash
#vi /etc/exports
[/cce]

插入下列行。

[cce]/export *(rw,async,no_root_squash)
[/cce]

看到如上的配置exports文件,小伙伴们震惊了吧,任意用户可以读取与写入文件,该配置是对整个云环境的存储做的配置,也就意味着任意能够访问到该IP的用户都可控制整个云系统。

0x01 攻击权限配置不当的NFS系统


只要在云环境中的任意一台主机进行查看:

2014042411412586267.jpg

然后进行mount 该文件夹,可以任意操作该存储上的虚拟机:

2014042411420188380.jpg

0x02 漏洞修复


还是/etc/exports下的文件,如果配置成如下模式则可减少风险(我说的仅仅是减少):

[cce]/export 172.19.104.6(rw,async,no_root_squash)
[/cce]

这样就把访问控制给了单独的IP,但这样是不是就安全了,小伙伴们可以继续想伪造IP的办法来绕过了。

Comment

评论:项目中遇到个问题,求各位大神教,最后那里的伪造ip怎么弄?

评论:已阅

评论:其实总觉得在nfs上出现漏洞太不应该了。。

评论:cloudstack用户只能用public IP,不会用节点的IP。

评论:你的配置防御在cloudstack根本是不行的,NFS是所有cloudstack的节点都可能会去挂载的。能做的是使用iptables控制访问。或者使用/etc/hosts.allow 和/etc/hosts.deny 做访问控制。

评论:mark

评论:算啊

评论:折算漏洞吧

评论:已撸。

发表评论

电子邮件地址不会被公开。 必填项已用*标注