76

腾讯云网站管家WAF体验:聊聊AI作为WAF市场转折的趋势

 6 years ago
source link: http://www.freebuf.com/news/180345.html?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

从Gartner去年提供的数据来看,市面上提供WAF方案的厂商依然很多,毕竟WAF依然是很多企业用户部署的必选项。但从WAF中的获利通常只占到安全企业营收的很小一部分;而随着传统WAF设备销售的滑坡,WAF市场正面临两大转折:

其一,云WAF仍然在稳步增长,2017年云WAF全球增长量超过30%;另一方面,WAF市场开始出现各种探索方向——探索的主题是更复杂的分析能力,其中包括机器学习。

fUVZVvN.jpg!web

腾讯云上月发布了全新 AI 引擎的网站管家(WAF),宣传点是AI引擎,“采用自研基于概率图的威胁AI技术”,“借助腾讯平台海量威胁攻击及正常访问的数据训练”“提升威胁AI识别能力”“保障防护可灵活适应不断变化的Web应用”。这本质上是对WAF产品突出重围的一种尝试。

实际上,近些年将机器学习应用到WAF领域的国外厂商还有好几家,虽然国内还相当少见。借着本次腾讯云网站管家WAF的评测和探讨,我们也可以稍稍了解当前WAF市场的现状及方向,以及AI在其中起到的作用。

WAF市场现状

WAF依然是目前抵御Web应用攻击的大头:大部分企业用户都部署了WAF。不过从市场反馈来看,越来越多的企业开始对WAF的准确性、抵御攻击的能力感到失望。

myy2miE.jpg!web

许多企业应用也正变得越来越复杂。传统WAF要为这样的应用提供防护也变得越来越难。比如某些较新的Web服务协议(如JSON)处理起来比较直接,但需大量工程工作,在WAF引擎中增加所需的网络流量解码支持;提供服务功能的更多方法,也在改变应用工作的方式。

更短的应用开发周期(Agile、DevOps)也限制了传统WAF的应用场景——传统WAF是需要攻击检测规则的调整才能实现精度提升的。每当应用或API变更(可能一天几更),WAF就需要测试调整,这无疑是相当增加负担的。这些都要求WAF厂商做出改变。

WAF厂商面临的主要挑战包括:

1.传统WAF厂商针对非OWASP Top 10攻击防护的响应很慢,尤其那些专注API和更复杂的攻击,比如证书填充、应用逻辑漏洞的利用。所以更为高级的一些应用架构和技术出现,比如aPaaS(application platform as a service)和fPaaS(function PaaS),但这些技术是否会广泛采用也是有待观察的;

2.大量企业组织开始抛弃实体WAF设备,转而采用获取服务的方式:包括传统的托管服务、私有云、IaaS部署的虚拟设备,还有基于云的SaaS订阅方案。

IFz2ayV.jpg!web

3.在转向服务,如云WAF之后,越来越多的WAF厂商开始提供额外的解决方案——如应用层DDoS防护、BOT缓解,甚至还可能包括CDN之类的非安全功能Gartner将这种新生的融合方案称作WAAP;

4.很多供应商开始着力于WAF更为复杂的分析能力、自动化的调整机制。如某些厂商采用更为传统的人工威胁研究团队(典型如Akamai);采用DAST(动态应用安全测试)工具来为WAF提供“虚拟补丁”——这也是当代WAF的一个常见方案了;还有像Signal Sciences这样的厂商采用后端分析组件,从其用户sensor中收集测试活动;腾讯云着力机器学习,也顺应了这一趋势。

2016年WAF全球市场规模大约为6.26亿美元,相比前一年增长了21.3%。预计到2020年,单独的WAF硬件设备将只占到WAF部署的20%,现如今这个值是 40%。而到2020年,公开的Web应用将有超过50%受到基于云的WAAP服务的防护(包括CDN、DDoS防护、bot缓解、WAF),现如今这个值不到20%。

腾讯云网站管家 WAF 功能体验

从腾讯云网站管家 WAF 刚刚增加 AI 引擎,以及其功能实现来看,这是完全符合 Gartner预测及市场预期的一款产品。 即这首先是个云WAF,它也支持非腾讯云用户,而且部署过程就我们的体验看相当简单;第二,其产品功能包括有前文提到的漏洞虚拟补丁、应用层 DDoS攻击、BOT缓解,在功能实现上,已经在往Gartner定义的WAAP靠拢。

na22y2n.jpg!web

最后这是国内第一款融合了定制威胁检测模型机器学习的WAF产品,这符合用户对“更智能”的WAF的需求——如前文所述,较高的维护管理成本是传统WAF越来越不受待见的一大原因。

腾讯云网站管家WAF是仅针对Web应用的安全服务。防护原理是,把原本访问用户Web业务的流量,先引流到腾讯云WAF。所以如果攻击者对用户网站发起攻击,则实际攻击流量要最先接触到腾讯云网站管家,在WAF进行威胁过滤后,安全流量才抵达用户的站点。

腾讯云网站管家WAF产品共分高级版、企业版和旗舰版三种,我们体验的是其中的旗舰版(支持10000 QPS峰值,至多4个一级域名和40个二级域名,CC防御峰值50万QPS),下面提到的Bot行为管理、DNS链路劫持检测等功能,在不同的版本中可能是存在差异的。旗舰版的价格是每月28880元(高级版3880元/月,企业版9880元/月)。

其部署过程还是相当简单的,我们在测试中注册了一个国外虚拟主机空间,在有了备案域名之后,将腾讯云网站管家WAF绑定到我们的虚拟主机上,域名就会显示在腾讯云网站管家WAF的控制台防止设置页面,开启WAF开关就可以实现防护了。

1.初步设置及攻击日志

在已经添加好的域名中进行防护配置,基础设置选项并不多,主要包括 WAF防护状态的开关,包括规则使用模式的“观察”和“拦截”模式——基于规则的流量检测与拦截,是传统WAF项目。选项下方有AI引擎模式开关。

这部分,系统建议先开一段的观察模式,学习网站访问模式,进行优化和调整——这实际上是机器学习原有属性使然。就AI的交互来说,对用户还是很友好的,并没有繁琐的设定过程,这是通过AI来自动调节的好处。

F7Rvem7.jpg!web

和大部分云WAF产品一样,在网站管家WAF的安全概览页面,会显示最近站点遭遇攻击的情况,包括攻击次数、具体的攻击时间分布、攻击类型和攻击来源的地理位置分布。

iIny6zq.jpg!web

攻击详情位于侧边栏专门的一个子项目中,针对每个攻击都可以点进详情中查看。攻击相关的时间、类型、方法、内容、来源、User-Agent等展示得比较详细。

2.更多设置

从特性上来看,腾讯云网站管家WAF支持一些云WAF的常规功能,包括按照地理位置禁止外部访问、自定义策略(比如通过“来源IP”规则来禁止某个IP访问网站,或者限制“请求路径”禁止用户访问某个页面)、CC防护等。

QrAfEja.jpg!web

还有相对简单的防篡改和防信息泄露功能:其中的防篡改即是WAF对用户网页内容进行缓存,对外仅发布缓存中的内容,不过这一功能限于HTML页面;防信息泄露则可以在网页中实现对身份证号、手机号这类信息的脱敏。

RfiIVrm.jpg!web

这里比较值得一提的是DNS劫持检测功能,在界面中输入域名及对应的IP,后台就能展示该域名在不同地区的劫持情况。从腾讯云的宣传来看,这一特性的实现是基于腾讯自己的数据,以腾讯的“终端检测探测点”对“客户提交的域名进行全国范围的DSN验证”。以腾讯用户基数,这个功能也算是个亮点了。

RjUBjij.jpg!web

26ZFZva.jpg!web

另外还有一项特性,是前文提到的BOT行为管理,Gartner将其作为WAAP类设备的一个组成部分,属于WAF产品的附加属性。腾讯云网站管家WAF的BOT行为管理的设置页面可以看到腾讯云网站管家已知BOT类型的罗列,及其控制——可设定仅监控或拦截。

比如针对漏洞扫描器,可设置拦截(但不能针对不同的漏洞扫描器分别设置拦截)。设置页面的自定义策略也是由用户添加策略来控制BOT访问,例如通过“请求路径”条件,来限制“/admin”路径的访问。自定义策略还可以针对BOT请求次数、UA内容/类型、请求参数、IP范围等。

机器学习与WAF

这次腾讯云网站管家WAF的升级重点就是AI,按照腾讯所说,腾讯云网站管家采用“自研基于概率图的威胁AI技术”,相较基于语义学习的威胁AI技术,可以“提升威胁AI识别能力”。通过业务数据特征自动化生成基于业务的“个性化防护策略”,防止特殊业务访问数据误判问题。

有关“语义”学习,我们在先前的文章中曾经提到过。语义检测是对请求的“语义”进行分析,把同类行为特征归并起来,根据合法应用数据检测建立统计模型,以模型为依据来判别实际通信数据是否是攻击。实际上,也就是用自然语言的语义来理解、描述同一类攻击,这样可以一定程度防御未知威胁、0day攻击,也就能够降低运营成本。

YzmAJze.jpg!web

我们获得有关腾讯云网站管家AI +规则双引擎的资料比较少,所以很难了解其中的具体原理。我们和腾讯云的安全工程师聊了聊,他告诉我们,其WAF AI整体是异常检测模型+威胁识别模型。每个用户刚接入时是共享威胁识别模型的,异常检测模型需要用户流量进行训练学习——这是个辅助模型,如果没有该模型,则威胁识别模型也能工作。

用户可以向AI模型提交误报和漏报,这时“会分化成客户自己的模型”。在具体的操作界面上,AI引擎部分,可以由用户手动添加误报和漏报的情况,例如在我们的payload测试中其中一条无法被检出:

) WHERE6580=6580 (3718=3718)*

则将其添加至漏报列表,并手动点击“学习”按钮。按照腾讯的说法,这样可以“更新模型,优化算法”。

就异常检测模型部分,就用到了腾讯在宣传中所说的“概率图模型”,用于检测异常的HTTP请求。按照工程师的说法,异常检测模型是“每个客户自己的模型”,但又无需客户干预。而威胁识别模型是判定payload是不是攻击威胁。这块的特征工程使用深度学习,分成两部分:模型的训练是离线的,用深度学习来进行特征提取;识别用改进的向量机模型。

用户反馈的误报、漏报就是反馈给这个模型;“相当于我们提供一个交互接口给客户,处理误报漏报”,另外“在后台离线层,也有算法和机制来检测误报漏报”。

按照腾讯云安全工程师所说,客户的模型是“独享”的,而规则和语义检测则为共享模型;最终客户的模型由标准模型学习进化。如果要直接说腾讯云网站管家WAF AI部分的优势,就是“准确性的优势”,“误报漏报处理更敏捷”。而且AI也支持自动解码,“对于payload中的复杂编码、嵌套编码之类,是支持解码的”。

Mfeu6jY.jpg!web

这里我们可以稍微扩展下,聊聊机器学习目前在WAF市场上的应用。实际上,FreeBuf留意到,上个月Fortinet也宣布为自家的WAF产品加入机器学习属性。包括Fortinet在内的数家将机器学习应用到WAF产品的国外厂商都提到,大部分WAF解决方案有着较高的误报率,原因在于其威胁检测主要就依赖应用学习(AL)。

收集足够的信息后,AL就能基于监控到的东西来自动构建策略。这的确提升了识别和响应Web应用威胁的能力,但在精度上仍然是有问题的,尤其表现在误报率上,它可能会阻止非恶意流量——AL无法适应常规应用的各种变化。

而机器学习也能在用户与常规应用交互时,收集每个应用的数据。但和AL不同的是,机器学习使用统计模型来决策某个HTTP请求是否与先前观测到的请求有较大出入,仅在请求偏离太大时才将其标记为异常。

Fortinet的机器学习WAF在处理流量时分成两个阶段,第一就是上面提到的异常检测,第二步再采用机器学习来确定,该请求是否为恶意。比如说可能是用户误输入,先前从未见过的字符出现,或者是应用本身的某种合法变化。这一步是通过多个高度训练的威胁模型来确定其是否为攻击,最后再采取措施。

看起来在思路上和腾讯云网站管家WAF是类似的,不过腾讯云的这套方案研发也已经有超过1年了。威胁模型理论上应该会有不少,每个模型都代表特定的攻击类型,比如SQL注入、XXS等。从各种来源获取大量攻击样本,对其进行培训和测试,腾讯在这方面应该也是有优势的。

所以我们认为,腾讯云网站管家WAF一大特色应该是较低的误报率,不过鉴于其推出还没多久,这种误报率的降低估计只有在长期使用中体现出来,我们也没法系统地对其做测试。

aiYbAzb.jpg!web

另外就机器学习值得一提的,是国外另有一家名为Twistlock的机器学习WAF侧重于针对每个运行的应用都有个WAF实例,这样能够实现深入的应用理解,提供更高精度和强健的安全模型。从概念上来说,Twistlock在宣传中提“每个应用一个防火墙”。我们没有去细究其部署方式和开销问题,不过它提出一个重要的问题,就是对于客户Web应用的更深入的理解。这其实也是机器学习应用于WAF的一大优势。

WAF的理想境界应该是拥有完美的规则,既没有漏报也没有误报——尤其误报对企业而言会产生很大伤害。但完美WAF是不大可能的,其中一个重要原因就是每个应用都有其独特性,即便是采用通用框架(WordPress、SAP Hybris等)也存在差异,比如cookies设定,还有基于不同配置或插件的无规律的输出。传统WAF不经任何调整就应用的话,误报和漏报率都会较高,因为它不能理解应用行为。Fortinet在宣传中因此将应用了机器学习的WAF 称作“set and forget”的WAF。

所以如前文所述,腾讯云网站管家WAF的工程师所说每个客户独享模型的这种方案,并且还会不停学习进化,优越性也就表现在这里。我们认为,虽然我们没法在短时间内系统测试腾讯云网站管家WAF的全部能力,包括AI部分,但这种思路一定会成为未来WAF发展的一个重要方案。

鉴于我们无法长期观察,所以只是对现有标准模型做简单的测试。我们选择了一组约4万+样本的payload对我们自己用WordPress搭建的网站(已接入腾讯云WAF)进行攻击,包括一些XSS、XEE、路径跨越、SQL注入和漏洞攻击,其中包含一些仅是探测的请求(悲剧的是,虚拟主机本身在检测到大量攻击流量,一段时间内还禁止了一切请求)。

AnEBfq3.jpg!web

由于测试比较简单,而且没有明确的对照组,这里不做详细的图表数据。不过其检出率是让人满意的,其中XSS、XEE、SQL注入检出率都超过99%。我们将之与市面上另一款公开且应用也比较广泛的SQL注入检测引擎做了对照,发现腾讯云网站管家WAF在检出率方面是有优势的,比如:

1eunionselect '1',TABLE_NAME,1efrom INFORMATION_SCHEMA.TABLES

其中的1e形式绕过也算是种常规。腾讯云网站管家WAF可检出,但另一款公开的SQL注入检测引擎竞品无法检出。其它着力于八进制、URL编码、CHR码的攻击还包括有:

%27%29%3BCREATE%2F%2A%2A%2FOR%2F%2A%2A%2FREPLACE%2F%2A%2A%2FFUNCTION%2F%2A%2A%2FSLEEP%28int%29%2F%2A%2A%2FRETURNS%2F%2A%2A%2Fint%2F%2A%2A%2FAS%2F%2A%2A%2F%27%2Flib%2Flibc.so.6%27%2C%27sleep%27%2F%2A%2A%2Flanguage%2F%2A%2A%2F%27C%27%2F%2A%2A%2FSTRICT%3B%2F%2A%2A%2FSELECT%2F%2A%2A%2Fsleep%285%29—
&'%22%3Echr(60).chr(115).chr(99).chr(114).chr(105).chr(112).chr(116).chr(62).chr(97).chr(108).chr(101).chr(114).chr(116).chr(40).chr(47).chr(120).chr(115).chr(115).chr(47).chr(41).chr(60).chr(47).chr(115).chr(99).chr(114).chr(105).chr(112).chr(116).chr(62)
a=Execute++++++++++++++++++++++++++++++(\"++++++++++++++++++++++++++++++Execute++++++++++++++++++++++++++++++(\"\"++++++++++:Function+bd%28byVal+s%29%3AFor+i%3D1+To+Len%28s%29+Step+2%3Ac%3DMid%28s%2Ci%2C2%29%3AIf+IsNumeric%28Mid%28s%2Ci%2C1%29%29+Then%3AExecute%28%22%22%22%22bd%3Dbd%26chr%28%26H%22%22%22%22%26c%26%22%22%22%22%29%22%22%22%22%29%3AElse%3AExecute%28%22%22%22%22bd%3Dbd%26chr%28%26H%22%22%22%22%26c%26Mid%28s%2Ci%2B2%2C2%29%26%22%22%22%22%29%22%22%22%22%29%3Ai%3Di%2B2%3AEnd+If%22%22%26chr%2810%29%26

这些都是腾讯云网站管家WAF能够检出,而竞品检测不出的。这里不再举出更多例子,这也表现出AI识别payload中复杂编码的能力还是有收益的,这些可能是传统WAF无法处理、难以辨识的。

WAF的未来

实际早在去年8月的 CSS大会上,腾讯云就发布了AI安全布局,以大数据和AI算法为驱动,不过当时的AI应用还没有惠及WAF,但机器学习在WAF中的应用显然也在情理之中了。有关腾讯云网站管家WAF的更多技术细节预计还会在今年的CSS大会上公布。

Verizon的年度《数据泄露调查报告》再度提到了攻击Web应用仍然是数据泄露最普遍的入口。Gartner在2017 WAF魔力象限报告中提到,WAF市场的增长潜力仍在,从当前Web应用安全的调查来看,WAF仍然是用于保护Web应用,使用最多的方案(84%),随后是企业IPS(61%),及应用安全测试(58%)。

ei2m2yR.jpg!web

Gartner在问卷中调查保护企业Web应用最有效的技术和方案,受访者中有73%选择了WAF,只不过WAF在应对诸如身份凭证窃取之类的问题时仍然表现欠佳——这是目前排第一的Web应用攻击。

而且WAF供应商也面临更多的挑战,API gateway、bot管理、RASP(运行时应用自我防护)与WAF市场都算是毗邻的,在应用安全预算方面有相互争抢的可能。所以不少WAF厂商也增加了一些相关特性,像是腾讯云的抗CC攻击、bot行为管理等。而在WAF中融合更多企业安全技术,也是加强WAF存在地位的一种方式,当然这仍然取决于用户的需求。

2018年成为WAF市场的重要转折点,这主要是因为云WAF的持续发力。除此之外,Gartner在预测中特别提到:

“更为复杂的分析能力的使用,如各种类型的机器学习和人工智能,将在WAF和相关市场(bot缓解与欺诈检测等)扮演越来越重要的角色。”

这与我们在前文中提到的看法一致。企业组织基于其功能和运营方面的需求选择WAF产品,这类产品决策的驱动力就在企业本身的业务需求上,包括部署方面的限制和规模、设备关联性,还有企业Web应用特性。所以能够理解企业Web应用安全需求的WAF产品才有市场,这是机器学习应用于WAF产品的一大契机。

mQRnuuf.jpg!web


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK