安全永远重要,云计算时代尤其如此。越来越大量的数据,越来越丰富的业务运行在云端。保护这些数据和业务的安全,是云平台系统必须考虑的问题之一。
安全威胁
安全威胁按照来源可以分为两类:外部威胁和内部威胁。按照CyberSecurity的统计,造成百万美元以上损失的案例中,60%来自内部威胁。
来自外部的威胁包括:
- 操作系统与软件的漏洞。黑客利用操作系统或软件在逻辑设计上的缺陷或者编写时的错误,达到控制操作系统的目的。常见的操作系统与软件的漏洞有:缓冲区溢出、滥用特权操作及下载未经完整性检查的代码等。
- 病毒、木马、蠕虫等
- 网络IP攻击。IP地址欺骗、Land攻击、IP 选项攻击、IP路由攻击、IP 分片报文攻击、泪滴攻击等。
- SQL 注入攻击。SQL注入攻击是指攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令的行为。
- 钓鱼攻击。钓鱼式攻击是一种企图从电子通讯中,通过伪装成信誉卓著的法人媒体以获得如用户名、密码和信用卡明细等个人敏感信息的犯罪诈骗过程。这些通信都声称(自己)来自社交网站、拍卖网站、网络银行、电子支付网站或网络管理者,以此来诱骗受害人的轻信。网钓通常是通过e-mail或者即时通讯进行。
- 零日攻击。“零日漏洞”(zero-day)又叫零时差攻击,指黑客发现那些没有打补丁的安全漏洞后,立即利用这些漏洞进行攻击的一种行为。
- XSS攻击。XSS攻击(跨站脚本攻击)是指攻击者利用不安全的网站作为平台,盗取用户资料、利用用户身份进行某种动作或对访问者进行病毒侵害的一种攻击方式。
来自内部的威胁包括
- ARP欺骗。ARP欺骗是针对以太网地址解析协议(ARP)的一种攻击技术,通过欺骗局域网内访问者PC的网关MAC地址,使访问者PC错以为攻击者更改后的MAC地址是网关的MAC,导致网络不通。此种攻击可让攻击者获取局域网上的数据包甚至可篡改数据包。
- 员工滥用恶意插件或浏览被植入病毒或木马的网页,也易带来内部网络威胁。
- 由于网络内主机和设备所使用的操作系统、数据库及安装的一些开源软件存在安全漏洞,没有及时安装最新的安全补丁或者主机杀毒软件病毒库没有及时更新,这就给恶意的入侵者提供了可乘之机,使病毒和蠕虫的泛滥成为可能。
- 企业员工通过VPN、GPRS 无线等拨号方式绕过防火墙的监控直接连接外网,使得企业内网 IT 资料暴露在外,易导致重要机密信息泄露。
- 员工经常携带笔记本接入各种网络环境,笔记本可能会携带木马等病毒,如果不处理就让其接入内网,会对内网构成巨大的威胁。l 更换内网资源(如:硬盘及CPU)时,如果缺乏有效的技术手段而导致硬件设备被随意更换,极容易出现安全管理问题。
- 员工使用最多的USB接口、光驱及打印,被证明是病毒感染最常见的出入口。因而,如果不对这些外设进行管理,很容易对内网带来威胁。
攻击面分析
对上述的威胁进行分析与综合,主要存在以下五种可能存在的攻击。值得指出的是,云平台由于增加了虚拟层或者容器层,并且由于应用跟主机并非直接关联,而实际上带来了更大的攻击面。
- 可能存在Web攻击,包括XSS攻击、SQL注入攻击、密码猜测、暴利破解等;
- 可能存在拦截非HTTPS请求,进行钓鱼攻击;
- 可能存在欺骗攻击,使用其他用户的身份信息进行认证;
- 在公网提供服务,就可能存在主机端口扫描,拒绝服务攻击;
- 提权,可能通过用户的云主机,进行虚拟化漏洞扫描,然后利用虚拟化漏洞进行提权,进而控制主机权限,再进行主机间的攻击等。
总体安全框架
为了解决上述云平台面临的安全威胁, 云平台需要从五个维度提供安全保护机制,保证系统和用户数据的安全性。这五个维度分别为:管理安全、接入安全、网络安全、虚机安全和系统安全。
针对管理安全,云平台需要提供Web安全、用户权限分级管理、日志安全、数据传输安全、密码管理、管理数据安全及产品许可管理功能来确保管理安全。
针对接入安全,云平台通过提供资源访问权限控制、资源访问认证以及资源配额管理等功能来实现接入安全。
针对网络安全,云平台需要支持网络隔离、端口安全及访问接口冗余功能来保障网络安全。
针对虚机或容器安全,云平台提供Web安全、用户权限分级管理、日志安全、数据传输安全、密码管理、管理数据安全及产品许可管理功能来确保管理安全。同时,针对容器的隔离性问题,在安全要求高的场景下,需要对容器进行安全加固。
针对系统安全,云平台对主机操作系统进行加固,对主机进行安全保护以及对安全漏洞进行补丁和修复,最少化端口暴露,从而确保运行业务虚拟机的主机的安全性。另外,在安全要求高的场合,考虑使用TPM和可信计算技术,对云平台进行基于硬件的安全加固,构建安全的可信云。
本文针对安全威胁介绍了构建安全云平台的大致思路。基于以上5个方面的保护,同时再叠加使用传统的防火墙等安全技术,相信可以云平台的安全保障。但是,安全不会一蹴而就,也不可能一劳永逸,需要我们云平台的架构师和安全人员一起对云平台进行持续的监控并且寻找更好的方式来包装云安全。