在今年的WitAwards 2016互联网安全年度评选中,阿里云云盾Web应用防火墙(WAF)以其技术和服务赢得了大众和评委的认可,斩获「年度云安全产品及服务」奖项。实际上,WAF已经成为企业守护web应用的常规安全产品,那么云盾WAF在竞争对手间获得这个奖项的原因在哪儿呢?
Web应用防火墙简称WAF,这是目前绝大部分有互联网业务的企业用户都会接触到的一类安全产品。WAF本身隶属于应用防火墙类别(基于网络的应用防火墙),和状态防火墙的典型差异就在于,后者是无法控制特定应用的网络流量的——而WAF专门负责从web应用,或者是去往web应用的HTTP流量过滤、监控和拦截。
WAF通过检查HTTP流量,来阻止web应用安全漏洞攻击,比如说SQL注入、XSS和安全不合理设置等等。WAF部署在web应用之前,分析双向基于web的流量,检测和阻止所有恶意流量。
这一类产品的出现也并不晚。专门针对Web应用的防火墙相较应用防火墙的出现晚了大约10年。最早的防火墙由Perfecto Technologies制造,当时其AppShield产品主要针对的是电子商务市场。后来Perfecto更名Sanctum,他们列出了相关Web应用前Top 10入侵技术,实际上也为WAF市场打下了基础。
2002年,开源项目ModSecurity的出现让WAF技术得到进一步普及,解决了不少行业内的问题,包括成本、专有规则建立等等。ModSecurity敲定了一些核心规则用于防护Web应用。2003年,WAF工作借由OWASP的Top 10列表再度做了扩展和标准化,这个列表针对Web安全漏洞做了年度总结——很快也就成为行业内的基准。到2010年,来自Forrester的数据,WAF市场规模突破了2亿美元。
随着云计算技术的普及,云化的WAF也不再是新概念,许多云服务提供商也有相应基于云的WAF推出,国际上有AWS,而国内则由阿里云领先,腾讯、Ucloud也有相应云WAF产品。
那么云上的WAF和传统部署到企业机房中的WAF有何差别呢?对用户而言,如云盾WAF这类产品不需要做软件和硬件方便的变更。通过DNS变更令所有web流量通过WAF,再做流量检查。
其次,基于云的WAF一般都是中心化部署的,这样一来所有的云端用户可以做到威胁检测信息的共享,这是云计算原本就有的优势。对于提升检出率、降低误报率很有帮助。另外和其它基于云的解决方案类似,基于云的WAF也具有弹性特点,随用户所需做规模变更。
所以这类产品对于基于云的web应用,以及需要Web应用安全但又不打算或者没有能力在系统中做软件或硬件变更的中小型企业来说,是相当理想的产品。
综合来说:基于云的WAF理应有下面这些特点:
- 有弹性,可扩展;
- 快速;
- 易于设置;
- 提供所谓的pay-as-you-grow服务;
- 可共享威胁检测信息。
其中的易于设置,对很多中小型企业而言的确非常重要。用户并不需要针对系统做出任何软件和硬件上的变化,就能起到对Web应用的防护,应用定制化的规则。
FreeBuf在大会现场也简短采访了阿里云高级产品专家祝建跃,他提到云盾提供的是各个行业都需要的通用安全服务。他认为,云计算就类似企业的操作系统,所以作为操作系统厂商应该做的就是提供基础的安全服务。企业不用研究安全,不用担心基本运维,只需在云计算平台上按自己需求组建业务架构,这和我们在采访肖力的时候所说一致。
基于此框架,阿里云云盾有着自己的安全防护机制,分为情报、感知、防御三个维度,通过威胁情报共享和产品联动,来控制风险。云盾WAF就属于其中的“防御”关卡。
阿里云高级产品专家 祝建跃
FreeBuf记者对阿里云云盾WAF产品进行了试用。如前文所述,基于云的WAF产品本身有着便捷的特点,并不需要由用户对软件和硬件做出变更,部署WAF防火墙就只是一键操作的过程,这一点在云盾WAF使用中也能明显感觉出来。在阿里云的管理控制台上,左侧边栏就有云盾的各类产品可选,其中就包括了WAF(实际上在我的产品中也能找到这个选项)。
我们这次获得试用的是企业版。除了企业版之外,用户也可以选择“旗舰版”,其差异主要在于支持QPS流量达到10000(企业版为5000);CC防护QPS 500000(企业版为100000);访问控制规则支持200条(企业版为50条);带宽更大;另外旗舰版的安全防护可做参数规格定制。其他包括支持的业务、域名等都是一致的。
在产品界面上,只需要在域名管理商处添加CNAME记录,即可将Web流量转发至WAF——使用CNAME的好处在于网站不对攻击者暴露地址、避免绕过Web应用防火墙做攻击。
域名配置界面可以管理所有域名(至多10个),每个域名对应栏目都能看到是否已经接入WAF,最后一次遭遇攻击的时间;以及各种安全开关的快速预览——防护配置中有各类防护开关,包括Web应用攻击防护、恶意IP惩罚(某个IP在短时间内多次Web攻击,则可设置封禁该IP一段时间)、封禁地区、CC安全防护、“精准访问控制”、数据风控和“新智能防护引擎”。当然其中具体的规则需要用户自行设定,但相比传统的WAF,云WAF操作简单快捷的特点也在此体现。
其中值得一提的是WAF的友好观察模式,它可以针对网站新上线的业务开启观察模式、对于匹配中防护规则的疑似攻击只告警不阻断、方便统计业务误报状况;
云盾WAF的另外一个值得一提的功能是CC攻击防御:WAF对单一源IP的访问频率进行控制、重定向跳转验证、人机识别等。而针对海量慢速请求攻击、识别异常referer、User-agent等信息的请求,可结合精确访问控制过滤。CC防御是很多网站关心的内容,作为一款线上WAF,阿里云云盾可以利用云上的资源弹性伸缩的特点,更好地防御攻击。简单来说就是同样的攻击,在本地可以采用跟云上一样的技术手段来进行防御。但本地的带宽和服务器资源都有限,当攻击大到一定程度的时候,本地资源就会出现瓶颈,这时候各种技术手段都没有意义了。 因此,拥有大量云资源对于大规模攻击而言,是个重要优势。这也是云WAF的优势之一。
再次是精准访问控制:阿里云WAF支持IP、URL、Referer、User-Agent等HTTP常见字段的条件组合,打造强大的精准访问控制策略,这个功能可以用来作为盗链防护、网站后台保护等防护场景。
在这些设置搞定之后,了解Web应用安全自然也是产品需要做的,包括告警等内容。在产品总览界面,可见针对中国大陆、中国香港和新加坡,不同地域所推的服务是有边界之分的。
主界面主要给出了Web攻击、CC攻击和访问控制事件的30天曲线图,让用户了解攻击频率和趋势。消息列表则给定了公告和规则更新事件。
界面顶部有个铃铛模样的告警查看按钮,点击即可Web应用防火墙攻击总览。我们自己尝试对站点进行注入攻击,亦实时从这个下拉菜单中看到攻击次数,点击进去就可以了解攻击详情。
进入安全总览中的详细安全报表,这部分依旧与总览界面的曲线图对应,分成了Web应用攻击、CC攻击和访问控制事件。主体显示昨天、今天、7天内和30天内的攻击概览;攻击类型占比;还有攻击来源IP Top5与区域Top 5。
当然如果要查看某个攻击来源IP的攻击详情,也可以在下面的每一条日志中点开了解。
而在“业务分析”界面,周期同样是昨天、今天、7天和30天内的。实际上这是个比较简单的业务数据呈现,比如请求来源区域Top 5、访问IP次数Top 5和访问浏览器饼图等。
基于云的WAF上手过程本身就是无痛的,用户也不需要关心WAF具体是如何布局的,点几个按钮即可完成操作。如果要归结这种便捷的使用体验,大概主体上就是云计算技术带来的吧。云盾WAF本身在管理控制台的设计上也比较简单合理,用户几乎不需要什么学习成本。
如果只谈云端配置WAF的使用体验和相关WAF的这些功能,那显得相当常规。获得WitAwards 2016还是需要一些杀手锏才行的。 前文在防护配置中就提到,云盾WAF这款产品有“新智能防护引擎”和“数据风控”特性可选。这两者实际上也是云盾WAF得以脱颖而出的根本所在。所以我们也有必要重点谈一谈这两项特性。
智能语义检测
云盾WAF使用了智能语义检测来识别风险。这与传统的“规则检测”不同,传统的规则检测原理是每个会话都要经过一系列的安全检测,每项检测都由一个或多个检测规则组成——如果匹配检测规则,请求就会被认为非法。这实际上是很常规,所有人都认为理所当然的一个思路。
这种方案的弱点在于不够变通,在识别风险时往往走向两个极端,要么规则不够全面,造成漏报;要么规则过于严格,造成误报。并且基于规则的WAF需要一个强大的规则库支撑,并且规则库需要及时更新来应对最新的攻击。对运维人员来说,规则条目变得很复杂,规则库维护困难。一旦这种问题变得比较严重,某些规则含义到后来都会遗忘。这是阿里云云盾WAF期望解决的问题。
另外基于规则的检测当然也是不能有效防御未知威胁的。
而智能语义检测则是类似对请求的“语义”进行分析。首先把同类行为特征归并起来,再根据合法应用数据检测建立统计模型,以此模型为依据判别实际通信数据是否是攻击。简单来说就是用自然语言的语义来理解并且描述同一类攻击。攻击特征的排列组合就是攻击的语义化。
这样就能拨开各种变形看到真相,把攻击行为“语义化”。这样“高逻辑性”“高条理性”的方法能够减少规则库数量,也能降低维护成本。按照阿里云的说法,“对于防御位置威胁、0day攻击尤其有效”。
阿里云WAF的宣传中提到,通过技术创新使得 规则条数下降70%,运营成本降低50% 。不过我们在体验云盾WAF的过程中注意到,该功能默认并没有打开,需要手动开启。
这招听起来似乎很高深,不过就像前文所述,云服务提供商本身的优势之一就是在整个平台上威胁数据的共享。所以针对大量威胁,云服务提供商都收集有足够多的数据可供分析,利用大数据机器学习的方案,自然可以让安全做得更到位。在我们看来,这里的智能引擎本质就是大数据在安全方面的典型应用。
这些数据是惠及云平台的所有用户的,从本质上来说,这就是云计算技术带来的便利。
业务风控防护
业务安全和Web安全实际上一直都具有很强的关联性,所以阿里云云盾WAF团队的看法是,如果只防业务安全,没有Web防护打地基则产品会显得很单薄。要推令人满意的产品,减缓业务层干扰,就需要这款产品的接入、上心、更新速度都加快,对透明度要求也比较高。
能够做到透明接入、快速上线的安全产品,WAF就是其中一个,其接入简单、对业务又几乎没有什么干扰。不过一般WAF的确也智能对SQL注入、XSS这类常见攻击做防护,业务数据风控是个比较精细化的活。所以WAF团队期望将数据风控和WAF放到一起。
这是我们在云盾WAF产品中见到“业务风控防护”这个选项的原因。这项功能解决的是企业的暴力登录、撞库、垃圾注册、羊毛党等一系列贴近业务层的安全问题。
阿里云WAF的数据业务风控原理是利用了WAF作为代理介入客户端浏览器与服务器之间的角色:
1. 通过利用WAF上经过的返回页面流量,在页面注入相应的Js脚本;
2. Js脚本采集数据并hook用户所有触发提交操作的事件,将数据注入请求中;
3. 请求再次经过WAF时,能由WAF解析请求并提取相应风险识别数据提交风控大脑进行综合决策判断是阻断用户请求还是发起二次校验挑战。
如果检测到访客存在可疑,WAF就可能发起安全验证,用户需要经过验证后方可继续。而即便存在误报现象由于验证操作体验较好,也不会给用户带来糟糕的体验。
对不同的业务场景,阿里云云盾WAF也提供了不同的防控方案,包括注册防控、登陆防控、活动防控、消息防控和其他风险防控等。
根据阿里云的介绍,数据风控能够防御的欺诈行为包括:
垃圾注册
短信验证码滥刷
撞库、暴力破解
恶意抢购、秒杀、薅羊毛、抢红包
机器人抢票、刷票、恶意投票
垃圾消息等
得益于WAF的特点,云盾WAF的风控系统不需要修改网站代码、调用API接口,所以使用过程其实也很方便。并且除了Web端网页和移动端HTML5页面,阿里云还提供了针对Android/iOS平台的 SDK组件,只需在客户端集成即可使用。
WAF类产品可能是当前针对Web应用采用最广泛的安全产品了,Gartner在2015年的WAF魔力象限报告中预计全球WAF市场在大约4.2亿美元左右——年增长率24%。Gartner预计到2020年,超过60%的公共Web应用都会由WAF来保护。
不过另一方面,去年针对WAF的质疑之声也越来越多,包括2015年安全研究人员Mazin Ahmed公布的白皮书中演示了几乎所有WAF供应商的XSS防护都能被绕过——是几乎所有魔力象限上的WAF产品。去年High-Tech Bridge公布了一份针对ModSecurity WAF的研究,证明WAF完全可以用来缓解如此复杂的缺陷。但绝大部分供应商都没能践行ModSecurity甚至一半的技术能力。不过研究也同时提到ModSecurity OWASP CRS也可在默认设置下被绕过。
WAF本身显然并不是万能灵药,仍旧需要与其他安全控制解决方案做结合,面对威胁要有更广阔的大局观。前文中提到的“威胁情报”正是阿里正在尝试的方案之一。前文中提到的“威胁情报”正是阿里正在尝试的方案之一。阿里云云盾负责人吴翰清曾这样介绍过云盾的威胁情报能力:
我们从各个纬度的sensor收取数据,包括网络、服务器、数据库,也包括四层和七层的数据,也包括操作日志和系统日志。因为今天云盾是全链路部署的,既包括来自于全网的扫描器,也包括流量分析、应用层的数据分析,同时在服务器还有Agent,所以我们能从不同的视角观测到不同的现象。同时阿里云还提供各个纬度的API,通过RAM授权后,我们可以调用云计算本身提供的一些数据。把所有的这些数据整合在一起,做出综合的诊断。
我们了解到,未来阿里云云盾也希望研发一个计算机系统代替安全专家们的人工工作,把评估结果、策略维护、响应等工作都交给机器完成。依托于阿里云的大数据,这样的方案是可行的,并且很有可能是将来的趋势。而云盾WAF也是威胁感知的一个重要环节。
另外根据Gartner的预测,到2020年底,超过70%的由Web应用程序防火墙(WAF)保护的Web应用程序 将使用基于云服务或者虚拟设备的WAF,这一数字目前不到25%。 所以基于云的WAF前景更为明朗。云服务提供商在大数据方面的优势也能够更好地为WAF安全性服务。
中小企业往往不愿意或者没有能力在安全上投入大量资金和精力,基于云的WAF在安全产品中往往能够发挥其部署简单、反应迅速的优势。不过我们也认为基于云的WAF同样适用于大型企业:大企业面对的安全威胁大而复杂,对网站的稳定性形成了挑战,而淘宝天猫的例子即能够证明。
我们认为,阿里云云盾WAF对于漏洞检测做得相对完善,也能够覆盖常见的Web威胁和攻击。在产品体验上,阿里云云盾WAF也能做到快速部署,使用起来较为便捷,再加上特色项目:运用其智能语义检测技术提升准确度,以及反欺诈的经验,解决了企业的业务安全问题,也是其产品中的一大亮点。 这些都是阿里云云盾获得WitAwards 2016「年度云安全产品及服务」的原因。
* FreeBuf官方出品,本文作者:Sphinx & 欧阳洋葱,未经许可禁止转载