浅谈基于IaaS公有云的中小型企业基础安全建设
互联网数据中心(IDC)属于互联网基础设施范畴的一个细分领域。为企业、金融机构等提供一个存放服务器的空间场所,随着科技技术的发展,IDC也经历了一个又一个的里程碑,如下图是:摘自《美国数据中心建设发展历程分析情况》
IaaS(基础设施即服务):消费者通过Internet可以从完善的计算机基础设施获得服务,这类服务称为基础设施即服务,基于Internet的服务(如存储和数据库)是IaaS的一部分。
PaaS(平台即服务):PaaS提供了用户可以访问的完整或部分的应用程序开发。
SaaS(软件即服务):SaaS则提供了完整的可直接使用的应用程序,比如通过Internet管理企业资源。
云控制台访问凭证,此类凭证用于我们通过Internet访问云控制台,在这其中又存在两个小类:
主账号:拥有其下所有资源和企业级分布式应用服务的所有操作权限。
子账号:主账号通过创建子账号,避免用户间共享密钥,按需给子账号分配权限。
AccessKey:访问密钥AccessKey(AK)用于程序方式调用云服务API(主账号与子账号都有AccessKey)。
分散的地区:在使用传统IDC机房的时候,中小型企业可能只有1~3机房,但是我们在使用云IDC时面临的地域就会变得更多,上述提到的4种架构都会形成不同的地域IDC分布,给我们管理云资产带来不便。
多样的类型:云上的产品的细分类给我们提供了使用便捷的同时也带来了资产管理的难题,多样的类型导致我们在进行管理的时候需要处理的数据源更多,不同数据源的字段、属性也不一致也会造成统一采集的困难。
不同的维度:在这里需要提到的一个系统就是CMDB,可能对于很多企业来讲CMDB的维护都是做的很一般或者做不到资产的实时管理。这个问题在中小型企业就更为常⻅,他们可能都没有CMDB或者是非常简易的CMDB。并且运维与安全对于CMDB数据的细粒度要求是不一致的,很难将两者合二为一,更多的做法是各行其事,数据互补。最后在安全做黑盒的云资产管理时云平台自身会对黑盒的方式进行一些拦截从而造成一些资产收集的误报以及漏报,这些问题我们都会在下面的解决方案中提到。
云控制台有哪些用户可以访问?
主账号是否存在共享使用?(有多少企业是所有运维直接共用主账号进行管理)
子账号是否存在共享使用?(云控制台用户是否将自己的账号共享给其他用户)
子账号是否有⻆色权限以外的权限?
灰度账号是否处于活跃状态?(离职员工的账号是否及时清理)
AccessKey是否拥有过高的权限?
............
服务器资源哪些用户可以访问?
谁拥有服务器上的特权账户?
统一单点登录以外的账号?
云资产对互联网或办公网络的访问控制策略(RDS是否允许互联网直接访问?核心服务器是否允许互联网直接访问?)
不同类型云资产之间的访问控制策略(RDS对ECS的访问控制策略)
相同类型不同属性云资产的访问控制策略(生产环境与测试环境的访问控制)
胡乱的资产分组:生产与测试处于同一VPC;
成吨的网络攻击:由于云IDC的开放性,所以每天会面临成吨的访问控制扫描、漏洞扫描、Web扫描等;
分散的补丁管理:如果企业没有统一资产管理系统或者服务器未使用域环境,那么我们在安装补丁时也会遇到麻烦;
通过内部通讯工具的接口获取用户原始数据,并且采集通讯工具中的用户属性;
利用云API管理云控制台账户,根据用户属性决定是否需要创建或删除云控制台账户;
与内部的跳板机打通,根据用户属性决定是否需要创建登录或删除资产访问账户;
黑盒资产管理:以扫描的形式发现资产(masscan+nmap+nessus等),通过将扫描结果进行数据处理后入库然后以CMDB的形式展示。但是在这个阶段中会由于云平台的拦截产生误报与漏报,所以这里的资产管理数据我们还需要更进一步的处理。
白盒资产管理(利用云API),之前小B也分析过对应的文章:
https://bloodzer0.github.io/ossa/other-security-branch/asset-management/asset-acquisition/
利用主机入侵检测Agent采集数据,不论是前面的黑盒方式或利用API的方式,我们获取到的数据在细粒度上都达不到安全后期的要求,所以利用主机入侵检测的Agent可以获取更详细的信息,但是由于这个层面需要对底层开发有着足够深厚的了解,这也是小B未实现的原因。但是小B也实践过开源的主机入侵检测系统(OSSEC)采集信息完善安全的CMDB,效果也是很不错的。
制定访问控制策略与管理流程:访问控制难题不仅仅是一个通过技术就能解决的,首先我们需要制定好访问控制策略,在制定策略之前我们需要梳理我们的主体(使用者)与客体(资源),在评估主体的需求后制定出策略,访问控制策略一定要依据最小权限原则。制定好策略只是一个起始点,后期策略的管理也至关重要,在这其中小B是通过以IT流程的形式进行策略变更管理。
制定好策略以后我们需要实现策略控制,在这里对于凭证的访问控制,主要是通过云控制台管理进行。对于资产的管理主要是利用安全组来实现的,安全组可能并不具备攻击防护能力,但是具备良好的访问控制策略。在安全组实现访问控制的时候,会遇到一个大坑,就是当我们的IDC数量越来越多时,我们管理就会变的更加困难。所以如果前期就有这样的安全意识是最好的,后期就会需要我们逐一的去调整已有的策略。
定期审计访问控制策略是否合理,这里提一点的就是,我们的策略审计最好是以实践的方式进行审计。通过将审计策略拉取到本地(API是可以拉取的,云控制台也可以导出)然后根据策略的内容去实践策略是否有效。
■ Over ■