阿里云建跃:WAF,一场惊心动魄的搜捕

原文链接:https://mp.weixin.qq.com/s?__biz=MzIwOTg5OTg3NA==&mid=2247483697&idx=1&sn=216dc592067e7a5732af2b8d734a8c22&chksm=976d993ca01a102ab031dc9b2e51c993a810b1f8595dcd34478e41a5506a7ebb166e83ffbebe&mpshare=1&scene=1&srcid=0623MBO3VrSzXMl7CmOqF6sK#rd

作者 浅黑科技 史中


蒙恬北筑长城,却匈奴七百余里。

守卫家园的人,永远把自己写成一首诗。

陵谷沧桑,如今太平盛世。边关宁息商旅往来,曾经的金戈铁马退隐成一道道海关闸口。而在这一道道闸口旁,坐着那些火眼金睛的边检警察。

最终战.png

去过米国的同学都会记得,边检警察用各种脑洞问题来盘问你,就是为了确保你没有扯谎。虽然我们大多数都是祖传「良民」,但这种经历还是多少让人有点小紧张。

 在赛博世界里,每一个网站就像是一个国度,同样有人负责负责把守海关闸机,这就是 WAF。

 从科学角度讲,什么是 WAF 呢?

 WAF 的中文表示是:网站应用防御系统,这也许是互联网中最早的防御系统。它可以通过规则来判断一个请求究竟是「好」还是「坏」。从最早的软件,到硬件盒子,到云 WAF,十几年的历史中,无数网站依靠这种自动化的识别方式,抵御了大量恶意入侵。

 在上海云栖大会上,我见到了阿里云 WAF 的掌舵人建跃。我得知阿里云 WAF 最近在大中华地区销量达到了第一位,而本身全中国有 37% 的网站服务坐落在阿里云上。根据数据推算,阿里云 WAF 充当了数百万网站的「门神」,从这一点上来看,建跃还颇有点像当代的蒙恬。

最终战1.jpg

(一)WAF 和美国海关

纵然每个美国边境警察都配了一双全高清高分辨钛合金火眼,但是美国境内依然会有非法移民。显然,他们中的很大一部分就是从边境警察眼皮底下溜进美国的。这不得不说是一种尴尬。

 WAF 同样面临这种尴尬。「来的都是客,全凭嘴一张。」遇到「演技派」的坏人,防火墙系统有时确实会放过。难怪很多安全专家所说,「WAF 生来就是被绕过的」。

最终战2.jpg

建跃觉得,WAF 显然不是万能的。但如果没有它,就会出大问题。

 首先,当有 0Day 漏洞来袭的时候,WAF 真的是有用。0Day 漏洞的爆发往往猝不及防,而且在爆出之后几小时之内,各路黑客就会在全网发起海啸一样的攻击。因为你在后台不可能如此快速地修复漏洞,必须在前面竖起一道高强,在第一时间挡住利用这个 0Day 进攻的大潮。

其次,对于普通的 web 攻击,一个好的 WAF 可以抵挡其中的 95%-99%。这种情况下,WAF 的作用并不是杜绝黑客的攻击,而是大大提高攻击者的成本。他必须不断「改进」攻击技术,提高攻击花费,才有可能骗过 WAF。直到有一天,黑客攻破一个网站需要付出的努力和成本接近甚至大过收益,他自然就会放弃。

最后,即使有漏过的恶意请求,WAF 也可以根据不完整的判断,提示用户此处有风险。一旦引起管理员的注意,黑客攻破网站的成本就会陡然增加。

他说。

回到美国海关的比喻。纵然边检警察经常把打黑工的外国人放进自己的领土,但从全局来看,他们遣返的「风险人士」显然更多。如果没有他们的第一道防线,恐怕美国早已被各路移民占领,移民局连遣返都遣返不过来。

(二)算法大神:不错杀,不放过

2014 年,建跃接手 WAF,要把原本用于阿里云内部安全的能力商业化,简单来说就是做成产品卖出去。

事实上,早在 2012 年,阿里云各路安全产品的商业化就已经开始,只不过,WAF 产品成型的过程几经坎坷,连基本的构架都三次改易。

换句话说,阿里云爆炸式增长,其实也超越了建跃和同事们的预期。他们猛然发现,如果和云计算紧密结合,其实可以把 WAF 做得更「炸裂」。于是直到 2016 年阿里云 WAF 才和世人见面。

这么炸裂的阿里云 WAF,究竟有神马过人之处呢?

最终战3.png

建跃如数家珍:

传统的 web,只有基于正则的规则匹配。简单说来,有一个 0Day 漏洞爆发,只需要写一条规则,干掉利用这个漏洞的代码,就成功了。

但是阿里云 WAF 却需要更多的数据,这些数据根据不同网站的业务而不同。

他举了一个例子:

如果有一个电商网站,正常商品的价格都在 100-1000 块浮动。突然有一天有一个商品变成了「0 元」,那么很可能这个数据就是被人为伪造的。

如果一个商品所有人都没有访问过,只有几个特定的 IP 访问,那么这也很可能是被刻意制造的「假象」。

有了这些数据,接下来聚光灯就照到了阿里云安全的算法工程师们身上,他们需要打开脑洞,设计出一套套算法。

简单来说,符合一些数据特征的请求,会被算法工程师标记为「黑」,于是这类请求就会在下次被拒绝,或者重点关注。每套算法都像一个海关通道,每个请求就像一个人。从一头进入,被认为是「良民」的请求自动放行,有问题的直接扣住。

(三)污点罪人和全网追捕

不要看一个人说什么,而要看他做过什么。

女孩们用来判断男友是否靠谱的金科玉律,同样适用于判断危险的互联网请求。

每个请求背后都可以追溯到一些发起人的特征,例如:

  • IP 归属地
  • URL 中的特殊参数
  • UA 里面的特殊标记
  • POST 的内容
  • 发起请求的设备(设备指纹)

总之,如果请求的发起人有过「前科」,那么根据 WAF 的算法,很可能将他以后的请求直接拒之门外。

这大概就像在地铁口盘查群众的警察叔叔使用的公民信息系统,轻轻一扫,你之前抄作业,欺负女同学的前科就赫然在列了。

举个例子,如果一个 IP 被认定做了非法的行为,那么所有受阿里云 WAF 保护的童鞋,都会免遭它的「二次伤害」。

建跃说。

最终战4.png

这大概就像对于一个通缉犯的全网追捕,只要在警察叔叔的布控体系下,在哪里露面都会遭到无情的拘捕。

除此之外,还有一种场景。

电影里的老刑警,通过观察一个人的行为举止,就可以八九不离十地判断他心里究竟有没有鬼。在赛博世界,这个规则同样适用。

好的 WAF 规则就像一个「老刑警」。如果某个 IP 或者设备表现异常,就会被识别出来,例如,一个 IP 访问了某个金融网站。这本是无可厚非的行为。但是如果查看历史数据发现,这个 IP 只访问金融网站,那么这就绝对不是一个正常的用户行为。

再财迷的人,也不可能每天只刷自己的银行账户吧。。。

这样的账户同样会被列入异常名单,有算法会对它进一步筛查。

建跃举了一个不久前他刚刚经历的案子:

某航空公司,深受黄牛困扰,每次系统放出折扣机票,就会被瞬间抢光,但是仔细调查发现,抢票的人并不是真正的用户,而是黄牛党。他们囤积机票,高价卖出。一旦有人确定购买,他们就利用自动化程序在航空公司网站上进行退票,在同一瞬间再为真正的乘机人重新购票。以迅雷不及掩耳之势完成机票倒手。

在这个黑产中,我们没有办法用传统的方法来揪出黄牛,因为他们的请求频率很低,就像正常用户一样,每小时甚至每天才发送一个请求。但是我们依然可以通过行为模式来判断其中大多数的刷票 IP,例如他们登录网站以后,并不会随便逛,而是直捣黄龙,直接购票,而且没有丝毫比对,犹豫。通过这种算法,我们定义出一批黄牛党,然后在接下来的一个小时的周期内对他们的 IP 实行封禁。

如果一小时以后,这些 IP 的行为还是异常,就会重新进入「小黑屋」,如此往复。

用这种方式,航空公司的恶意黄牛流量被拦截了 86%,虽然这个数据距离完美还有很长的路要走,但是每多拦截 1% 的恶意流量,就能为航空公司节省无数的费用。

(四)正邪对决一秒间

建跃说,目前阿里云 WAF 能做到的是,每隔一小时就基于最新的数据升级一次算法。相比之下,传统的「盒子」WAF,最多每周或者每月进行一次规则更新,就显得相形见绌。

作为阿里云 WAF 的掌舵人,建跃抓紧一切机会向我安利云 WAF 的好处。说到底,云 WAF 的好处可以总结为:「天下武功,唯快不破。」

因为 WAF 在云上,所以实际上没有「部署」的过程,只有「接入」的过程,所以无论服务器是否在云上,在哪家云上,服务器体量有多大,服务器是否快速增减,都不会对 WAF 的部署速度产生影响。

同样因为 WAF 在云上,所以背后有足够强大的数据和计算力。一旦生成新的规则,就可以瞬间对用户的数据进行重新计算。

无数好莱坞大片告诉我们,正邪较量,往往决胜于一秒间。

在网络那一端,不是小绵羊,而是心狠手辣阴险狡诈的黑产和黑客。每晚一秒封堵,他们就可能刷多一百张票。每晚一个小时拦截,他们就可能多窃取几千条用户信息。

这不是好莱坞大片,这是残酷的现实。

说到这里,建跃想起了另一个事情:

有一家保险公司,经历了从传统 IDC 机房迁移到云的过程。在刚开始接入时,他们对跑在云上的防护系统还是不放心,于是决定先用观察模式。也就是说,只报警,不拦截。

他们用了大概两个小时去验证,果然可以拦截以前没有发现的入侵行为,而且似乎没有对正常业务造成影响。同样我们也会介绍,我们上线任何一条规则都会通过历史数据去验证规则的误杀情况,确保没有问题,再灰度上线。看到我们比较靠谱,对方决定经过简单的灰度测试之后,全面部署。

(五)码农和雕塑家

WAF 所做的一切,其实就是描述一个正常的人。

我们通过一条条规则,逐渐框定出他的样貌,然后不断地微调,精准。

建跃说。

这大概就像一个雕塑家的追求。刻刀冰冷,却能修饰出动人的脸庞。

我曾经是一个随遇而安的人。很少决定自己想要做什么。就连当年选择计算机专业,都是学计算机的表哥推荐的。但只要把任务交给我,我就会尽全力把它做到极致。也许正因如此,他们才把 WAF 交给我吧。

对于竞争激烈的安全市场,尤其是军阀混战的 WAF 市场,能拿到如今的市场份额,称得上建跃口中的「极致」。

不过看起来他丝毫没有功成名就的姿势,每天忧虑的还是怎么提高 WAF 的能力和用户体验,一副苦逼脸。

采访临近结束时,建跃对我说:

原来,我可能像很多人一样庸常随性。在阿里云的六年时间,肖力、刺和云舒他们深深影响了我,现在我很明确地知道,自己想要什么。

我越来越笃定,人的一生如果有机会做一件意义非凡的事情,才算是不虚此行。

互联网正在重新塑造所有人的生活方式。在这个浪潮中,无数严重的安全问题暴露出来。仔细看来,站在这个位置的人,恰好是我。如果我付出努力,付出更多努力,也许有机会推动整个中国互联网的安全发展。

这对我来说,是一种幸运。

关注极客公园公众号
反馈