我认识了一位阿里巴巴“禁卫军”

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(1)

浅友们大家好~我是史中,我的日常生活是开撩五湖四海的科技大牛,我会尝试各种姿势,把他们的无边脑洞和温情故事讲给你听。如果你特别想听到谁的故事,不妨加微信(shizhongpro)告诉我。

2006年前后,发生了几件小事。

湖北天门,彼时还未成年的黑客菜霸,在天涯网上定位出了一位服安眠药自杀的少女的具体位置,远程帮助警方救下了女孩。三个月后,他因为入侵腾讯内网系统被警方控制。

湖北武汉,黑客李俊开发出了熊猫烧香病毒,如瘟疫一般在全国肆虐,诸多黑客大神紧急开发专杀软件,一时间江湖风起云涌。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(2)

那些年,故事开始像珍珠散落玉盘,“黑客”这个词亦正亦邪的基调奠定,那些命运迥异的人物从此登上舞台。

今天坐在中哥对面的这个技术人,和黑客江湖有着十几年隐隐然的关系。只不过,在他的故事里,黑客江湖是远处的黑暗丛林,是城堡角楼上雕栏玉砌的背景。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(3)

此人名叫铁花,他加入阿里巴巴的事件也是2006年,事情就是这么巧。

“我不是黑客,我的对手是黑客。”铁花两手一摊,好像面前有一条楚河汉界。

如果把阿里巴巴比作一座城堡,它的保卫力量分为两支:一支自然是军队,负责征战沙场,过河杀敌;另一支是“禁卫军”,他们从不出城堡,却拱卫着王国的核心机要。

铁花是禁卫军,十多年来,他把一件事做到了极致:对阿里巴巴贴身防守

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(4)

(1)

2006年,铁花还年轻,对于生活的认识就是:“挣份工资 玩儿”。他在西北工业大学学的是计算机专业,为了离家近点儿,他托朋友给问问浙江哪家公司好。朋友说,有家阿里巴巴还不错,他就来面试了。

铁花加入淘宝那年,淘宝刚满三岁。

同事问他:你的淘宝账号是什么?铁花:什么淘宝账号?我还没注册啊!

相比后来多少码农挤破头都进不了阿里巴巴,铁花这么云淡风轻歪打正着可以说是相当可气了。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(5)

别看铁花这个人你不熟悉,但你只要在淘宝上充过话费,就十有八九用过他参与写的系统。

刚到淘宝几个月,老板让他参与开发一个“自动发货程序”——就是你在网上充话费,不用等网线那头的卖家刮开卡给你手动充值,而是可以卖家提前把卡号密码输入系统,有人买系统就自动给充值了。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(6)

铁花本来就把这事儿当成个小任务,系统没过多久就在淘宝上线运行了。结果没几天,他自己玩游戏需要充点卡。在淘宝上一下单,点卡瞬间就到账了。铁花恍然大悟,原来几天前自己开发的系统,已经用来服务自己了。

这种感觉很神奇,像是自己改变了自己的人生!

铁花回忆。

后来这种自动充值的生意,成就了很多超级卖家。

从那以后,他渐渐发现,自己每写一行代码,改变的都是全国人的生活方式。这种成就感简直爽呆了。转念一想,这要是写一行有问题的代码,那坑的也是全国人啊。。。。这事儿可不是闹着玩的,想到这铁花手都有点抖。

命里该然,铁花因为严谨的风格被安排到一个重要的岗位——代码测试。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(7)

这下可好,他成了淘宝各种新系统的最后一个“质检员”,只要他说 Yes,那这个淘宝新组件就可以上线,为上亿人提供服务了。他要是眼花没发现问题,出了事,他也是第一个被皮鞭滴蜡伺候的。

他越是觉得责任重大,越是要用各种姿势测试系统的安全性。有一天晚上,正在加班做测试,一只黑色的鸟落在窗外的窗台上,朝他神秘地转了一下头。那一瞬间,他突然想到自己上学的时候曾经研究过一些黑客攻击技巧。“为啥不试试用黑客的方法攻击一下系统呢?”他自言自语。

铁花被自己吓坏了。。。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(8)

我的黑客攻击水平也算不上顶尖,但用这种方法攻击淘宝系统,一攻一个准。。。

他回忆。

这意味着,就在此时,一个陌生的世界可能正在通过裂缝向这里窥探。

第二天,铁花赶紧找到自己的老板丁典。眼含泪水告诉他这个坏消息:如果采用特定攻击手段,黑客能够轻易登录任何一个人的淘宝。

丁典看铁花神色那么焦急,有点不解:“只是登录,也不至于有多严重吧?这个问题要修起来,涉及到很多代码框架的调整,先等等看。”

铁花见状,没说啥扭头就走了。过了半小时,他在旺旺群里发了个搜索链接,让丁典点击了一下。又过了一会儿,铁花来找丁典,说:“你的邮箱密码已经被我改了,你的淘宝密码我也能改,但我没动。”

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(9)

丁典惊为天人。就这样,铁花成为了淘宝网历史上第一个“安全开发工程师”,他的职责是:第一、负责制定一套安全开发框架,让攻城狮们按照规矩操作;第二、编写相应的安全开发组件,让攻城狮们写代码的时候引用,还能自查组件的安全性。

明眼人一下就能看出,这种操作就是后来大名鼎鼎的 SDL(软件安全开发生命周期管理),多年以后,这套规则就像吃麻小要戴手套,XXX要戴XXX一样,已经成为各个公司开发的标准流程了。

就在淘宝网安全体系一点点建立的时候,河对岸的黑客森林也在一点点躁动。

前文提到的菜霸进攻腾讯内网,“盗马化腾QQ”的事件已经发生,史称“朽木事件”。平心而论,菜霸杂糅了那个时代黑客的两面性,初心是帮助对方修好漏洞,做法却是实打实的攻击。以他为界,黑客分为正邪两派:一派是白帽子,拿到大公司的漏洞,用最善意的方式通知公司;一派是黑帽子,拿到大公司的漏洞,直接挂电话勒索。

铁花就遭遇了很多“黑帽子”。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(10)

对方通过朋友辗转找到铁花,在线上说:我这里有淘宝网的一个漏洞,你们阿里巴巴拿30万,咱们了事。

铁花也不激动,跟对方说:你真的有漏洞吗?你得先攻击我们一下,让我们知道你有这个实力啊。

对方表示赞同,于是远程攻击淘宝。

铁花在这边用系统监控,瞬间就找到了对方利用的漏洞,马上让同事修补。然后依然平心静气的对黑客说:我们已经修好了,你的漏洞卖不掉了。不如加入我们阿里巴巴,一起来为和谐社会做贡献,如何?

现在回忆起来,那段日子还挺有趣。

实际上,那两年铁花和团队的童鞋就依靠这样的“机智过人”东挡西杀江湖人士,保护着淘宝网最基本的安全水位,在一众巨头公司里也颇为出众。直到 2009 年,团队调整,铁花把对外安全做了交接,继续低调地把控内部代码质量。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(11)

(2)

2011年,移动社交软件开始火爆,2012年,移动互联网隐约成为攀岩绝壁上的下一个岩缝,2013年2月,马云发表公开信,提出阿里巴巴要“All in 无线”。

现在看来,当时阿里押注的两个移动端 App,就是手机淘宝和来往。

站在当年的城市广场上,来往就像一群手握汽油瓶的青年,声威浩大向封锁线进军。彼时铁花正带领淘宝二十多个安全开发兄弟,老婆孩子热炕头,生活很安定。但他思来想去,还是决定做个威武雄壮的硬汉,咬咬牙签字报名加入来往。

铁花揽下了来往整个后端研发,在他的新战场里,安全只是其中一部分。

别急,铁花的剧情先暂停一下,我们再看一下河对岸的黑客江湖。

彼时是2013年,世界上又发生了几件小事:

在国外,雅虎30亿用户个人信息被黑客盗取(实际上这件事直到2017年才被曝光),Facebook 600万用户信息泄露。中国人就文明多了,华夏大地上第一次出现了一股华丽的势力:羊毛党。我不打你,也不骂你,你大公司花钱做推广,我用机器注册一堆账号,凭实力薅你的钱,比那些强行入侵炫技勒索的辣鸡老外们讲究多了,你值得拥有。。。

在这种局面下,作为一个追赶微信的社交 App,当年的来往面临两个安全大问题:

1、各种虎视眈眈像牛虻一样嗡嗡打转的羊毛党。2、各种屡禁不绝的推广黄赌毒的垃圾信息。

铁花有点三观尽毁:

过去自己是禁卫军,觉得保护好城堡里那一亩三分地就是最大的忠于职守,但在来往的全战区沙盘上一看,他发现自己过去是有点天真了。黑客每天处心积虑有一万种姿势搞定你,你只缩在城堡里防守,就特别力不从心。

思来想去,他想明白了两件事:

1、既然移动App的浪潮势不可挡,那安全防线就必须顶到最前面——每一部手机的App里。2、既然黑灰色产业链亡我之心不死,那么只靠一条防线是不够的,真正的安全得搞多几道防线,就像净水器里的滤芯一样,滤完沙子滤尘埃,滤完杂质滤细菌。

当然,众所周知,最后来往并没有完全担负起阿里巴巴当初殷切地预期。经过痛苦的转型,团队孵化出了钉钉,这是后话。而在2015年,团队变动的当口,铁花回到了阿里巴巴集团安全部,和同事们一起重新扛起了全集团业务安全的大旗。

一别三年,铁花重新审视淘宝、天猫这片老战场,“真的是物是人非了。”他说。

(3)

对于当时的情况,铁花的同事砚墨后来这样回忆:

在聚划算的整点秒杀活动中,进入淘宝的流量竟然有大量都是羊毛党。。。

“而且那时候的防护不成体系,速度贼慢,资源开销还巨大。”铁花补充。

其实就在同一时刻,隔了几层楼,铁花和砚墨的老板的老板——时任阿里巴巴集团 CRO(首席风险官)振飞比谁都着急。他已经制定了详细的作战计划,准备向敌人发起一波猛烈的冲锋。

在这个周密的作战计划里,有这么几个神兽:

一支由白帽子黑客组成的蓝军,每天自己打自己,换各种姿势进行攻防演习。一支由资深安全人员组成的研究团队,每天分析黑产的变化,知己知彼。一支由安全开发老炮儿组成的安全产品团队,专门开发下一代防护盔甲,像钢铁侠那样给阿里巴巴穿上战衣。

铁花就是第三支战队的一员,他负责开发的产品叫做“霸下”。

中哥用一百字给你科普一下:

淘宝、天猫像个巨大的购物中心,它有两个主要的大门:一个是网页端,一个是 App 端,顾客就从这两个大门进来买东西,他们进来之后,对于淘宝来说就都是“流量”。坏人也假装成自己要买东西,就这么混在好人中间偷东西或者蹭优惠券,他们对于淘宝来说就是“恶意流量”。霸下就是商场里的监控系统,用来分辨谁是好人,谁是坏人,发现坏人就通知保安给他撵出去。用专业术语说,这叫“流量清洗系统”。(呼~~写了180个字,还行。。。)

多说一句,霸下是龙的第六个儿子,爱好负重前行,永不停步。

从2016年春天开始,铁花拉了包括砚墨在内的二十几个兄弟,开始雕刻霸下。开发了几个礼拜,铁花直嘬牙花子。这事儿比想象中要难。

最大的问题在于:你抓坏人,不能影响商场正常做生意啊。。。

跟中哥做个思想实验:

美国华盛顿国家广场,如果要排查恐怖分子,最好的办法就是:只要想进来参观,那么必须每个人在门口安检闸机那里脱光光,胃镜肠镜X光一通检查,确定身上没有藏着狼牙棒,才放进去。这样可以保证绝对安全,一个坏人都进不来。但是这样一来肯定会导致一个结果:好人都会觉得你有病,再也不来了。那索性不要开放就好了。。。

类比到淘宝,就像个跷跷板:一方面必须让好人不反感,不用脱光光安检,不用排队进场,不用等候下单;另一方面你还得在坏人下手之前就抓住他,至少在他得逞之后还没逃出商场时抓住他。

网上曾经有这样的刷单程序。霸下的任务就是把这种“恶意流量”识别出来。

这就要求霸下有血快血快的“实时计算”性能。

可用的硬件配置就摆在那,铁花和同学们只能从算法上做优化。他们发现,在秒杀、正常下单、拼团等等不同的业务场景下如果采用不同的算法,就能大大减少霸下的计算量。当然,这样的代价就是要多写很多代码。虽然麻烦,但是他还是带着兄弟们闷头写了好几个月,毕竟这是“功在当代,利在千秋”的事情。

在开发的过程中,铁花突然想起一年前自己在来往的经历。

当时来往用来屏蔽黄赌毒垃圾信息的方法是人工智能,把很多垃圾留言放到人工智能里自动学习,机器就会自动识别出“坏话”的特征,从而自学成才成为优秀的保安。

既然人的语言有规律特征,那羊毛党的流量也有规律特征啊!

他恍然大悟。

于是,他赶快和同事们一起把人工智能系统架好,把恶意流量样本输入进去。不久,结果出来了,机器对于恶意流量判断的效果出奇地优秀。

这一下,又为霸下系统节省了大量的计算力。

完成了系统雏形,铁花在实验环境里跑了跑霸下,这货不仅比以前的系统找出恶意流量的能力翻了十多倍,需要占用的资源却只是以前的一半儿。

他吹着口哨就去找淘宝的同事了:“怎么样,试试我们新推出的霸下?加量不加价,童叟无欺包你满意。”

淘宝的同事在实验环境里把霸下和淘宝进行了一下联合测试,霸下特别争气,直接把淘宝组件都给卡死了。

看着卡死的界面,铁花面如死灰。淘宝的同事赶紧安慰,不用不用,你调好了再来。。。

首战失利。不过这并不能击倒老炮儿铁花。他的人生经验告诉自己,霸下是个开发了一年多的复杂系统,需要在实战中磨合。修复 Bug 之后,霸下可算能在业务系统里跑起来了。那几个月,铁花在各个团队之间挨个拜访,跟各个业务线承诺,你们不用管,我们来维护霸下,出问题我们第一时间给你修好,你就用用呗。

那段时间,我们团队有些同学专门值夜班,一旦霸下受到黑客冲击有点顶不住的趋势,他们都是半夜起床,手动处理问题。

铁花回忆。

就这样,2017年3月,霸下正式在内部发布,从一开始没人敢用,到一年以后全集团 47个团队的7000多个服务都使用霸下做流量清洗和流量管理,这几乎涵盖了阿里巴巴、菜鸟、高德地图等等生态内的主要业务。

2017年11月11日,霸下负责全集团的流量清洗。那一天,剁手党们杀红了眼,像抢白菜一样涌进淘宝和天猫这个硕大的商场。当然,与此同时还有混在其中磨刀霍霍准备了一年的羊毛党。

好人和坏人混合而成的巨大流量洪峰涌向阿里巴巴服务器。那一年的交易量达到了1682亿元,就在这样混乱的情况下,霸下对于恶意流量的拦截率达到了 99.89%。

看到这个成绩,铁花觉得过去两年在各个业务线同学那里推销的日子都挺值了。

毕竟,没有人能随随便便成功。

(4)

从2018年开始,铁花和同事们再也不用半夜起床紧急维护霸下了。这意味着:霸下已经是个成熟的系统,学会自己平事儿了。而当年几乎同时建立的威胁情报和红蓝军团队,也在各自的领域建立了自动化运行机制。(有关这两方面军的故事,中哥有机会单独给你们说说。)

阿里巴巴的防护系统从2006年的单打独斗,到了2013年的小米步枪,整体进入了2018年的集团军态势。

不过,别开心得太早,因为对岸的黑客江湖也“换了人间”。

从2015年开始,那些曾经的黑客江湖和侠客的传说一个个黯然落幕。当年叱咤风云的白帽子黑客,大多都被 BAT 纳入麾下,只有少数几个看破江湖恩怨,闲云野鹤,退隐山林。那个空了的黑客江湖,被当年侠客们最不齿的黑帽子黑客所统治,他们形成了一条强大的“黑色产业链”,有人专门负责挖漏洞,卖给攻击工具的开发者,开发者开发出攻击工具,再卖给胆大却没有技术的犯罪分子,犯罪分子薅羊毛、做攻击搞到钱,有下线专门负责把钱洗出来。“钱”这个字魔力无穷,它使得这个链条上的所有人都“按劳分配”,简单到让人想哭。

面对金钱的诱惑及其他,失去底线的黑产成为好莱坞电影里那种毫不值得同情的反派魔鬼。

不过现状令人欣喜,在铁花和无数同事的努力下,以阿里巴巴为代表的巨头们在反黑产技术上几乎领先对手一个代际。

但历史是个好老师,铁花知道如果自己有哪怕万分之一的松懈,面对的将会是对手疯狂的反扑。

2018年底,钱磊成为阿里巴巴安全技术的新一代掌门,他知道,之前同事们为阿里巴巴积累的技术优势恰恰是一种时间优势,他们需要用这个时间优势抓紧建立一个更高级的“全链路安全体系”,在这个体系中,霸下只能作为其中的一环。

钱磊对铁花布置的新任务就是:协调霸下在内的各个安全产品,让他们实现全链路联动。

所谓全链路,就是一个流量从还没进来到离开之后,每一个步骤都要集合在统一的安全系统里。说不清,还是画图吧。。。

一开始流量在端上(网页或手机 App):一旦我们根据过往的经验和情报判断它是一个“坏人”,这次他甚至什么都没做,就直接被禁止入内。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(12)

接下来流量进入了传输管道:这些流量集合在一起,我们可以通过实时分析流量之间的关系,例如他们像不像是来自一个有预谋的团伙,从而在这一步拦截。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(13)

再下来流量进入云端:这些流量开始购物,我们有了新的信息,通过他的“业务动作”,来判断一个流量(或一组流量)有没有坏的意图,从而拦截。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(14)

再下来流量进入供应链:比如一个人淘宝买了东西,供应商要发货。在这个过程中,淘宝系统没办法看到供应商的流量,这个流量开始走出淘宝的国界,但我们可以把自己“火眼金睛”的能力交给供应商使用,他们依然可以结合最新的情况判断这个人是不是坏人。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(15)

就这样一层一层筛选,每一步都可以拦截下来绝大多数的坏人,直到最后,交易的“纯净度”就会变得特别高。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(16)

这图中哥做了一小时,点鸡可以看大图。

铁花告诉我,目前这套系统在阿里巴巴内部已经部署完毕,他能看到,整个系统的能耗比原来分散的状态又有了大幅的下降,而且因为前后几套系统有了信息联动,总体抓坏人的效率有了大幅提高。

看来这套系统,足够再维护一阵儿世界和平了。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(17)

当然,中哥说了这么多,剁手党们并不需要搞懂这背后复杂的原理,也不需要理解铁花和同事们呕心沥血的艰难,你只要知道这个世界岁月静好,可以放心团购秒杀砍价买买买,至于有人为你负重前行,你大可不用关心。

我也知道这些,但我就是忍不住想把铁花和他对面那个黑客江湖的故事写下来。

十几年过去,安全技术已经变得有些复杂,复杂到就连科普都变得有点无趣。铁花这些安全人,也再没有了当年跟黑客勒索斗智斗勇的江湖传说。

但成熟的代价不就是变得无趣么。一个产业是这样,一个人也是这样。

我问铁花,战斗在幕后,没有鲜花和掌声,你会不会觉得不公平。他说:“我在做的是安全。从第一天起我就明白,安全生来就不需要自己的光芒,它的全部荣耀,就是为了让一个系统能够在商业世界里闪耀。

至于我,做一个安静的技术人就挺好。

他说。

国外战疫腾讯和阿里分别做了什么(我认识了一位阿里巴巴)(18)

铁花

P.S. 铁花的花名取自古龙小说《楚留香传奇》,浪子胡铁花。

再自我介绍一下吧。我叫史中,是一个倾心故事的科技记者。我的日常是和各路大神聊天。

,