中国白帽黑客成长记 | 专访清华“蓝莲花”战队

来自:环球科学ScientificAmerican(微信号:huanqiukexue),作者:刘洋


黑客并不都是“黑的”,有一类黑客是通过自己的技术检测安全漏洞,提升网络安全,这类黑客就叫白帽黑客。清华大学的“蓝莲花”战队是中国最早成立的白帽黑客团队之一,通过国际比赛和实战练习,这支战队为中国培养了一批优秀的网络安全人才。


撰文 | 刘洋


走过稍显狭窄的双清路,迈进“自强不息、厚德载物”后面的清华东门,很快就可以到达清华大学的信息科学技术大楼(FIT)。过去七八年,许多周末的晚上,大楼213室都灯火通明,十几个年轻人在这里通过不断参加网络安全竞赛建立和巩固着他们在白帽黑客界的地位。年过不惑的段海新和稍微年轻的诸葛建伟是这个名为“蓝莲花”的网络安全战队的创始人。过去几年,这是中国网络安全领域最出色的学生社团。在一个以参加网络安全竞赛而闻名的高手圈——一个数百人的圈子中,蓝莲花的战绩最为出色也最为稳定。“最开始,我们其实只是出于兴趣玩玩而已,”段海新顿了一下说,“确实没想到可以走这么远。

 

但那些散落在桌上的泡面、环绕在房内的显示器和写满代码的白板还在那里,这间100平方米不到的房子中满是曾经的记忆。段海新和诸葛建伟站在那里,总会想起他们和七八个学生如何在几年前的通宵比赛中杀得兴起,如何从一无所知开始向最重要的冠军发起冲击,又如何在一轮轮比赛中让那个曾经不明所以的称号——白帽黑客——接近一度懵懂的自己。

 

入阵


在最初意义上,“黑客”是指用斧头砍柴的工人。上世纪50年代,麻省理工学院一群学生因为坚信“所有人都应该平等获取信息”,于是打破禁忌,闯入了一个受到美国政府严格保护的计算机系统,他们随后被冠以“黑客”之名,这种做法也在上世纪60年代流行起来。


中国是网络世界里的后来者。直到1986年,中国科学院高能物理研究所的吴为民教授才发出了中国第一封电子邮件。整整8年后的1994年,中国才真正拥有功能完全的互联网。也是在这一年,20世纪最著名的门户网站雅虎在美国创立。几乎同时,远在中国的段海新也接触到了互联网。


因为迟到,安全成了中国互联网的一个痛点,这个痛点甚至在今天仍然未能化解。2017年上半年,中国境内被篡改的网站超过3500个,被植入后门的网站则接近5000个。国内权威机构估计,我国网络安全人才的缺口最多可以达到140万人。由于网络安全维护不只涉及技术问题,还涉及管理学、心理学和社会工程学,培养合适的技术人才并不容易。


段海新对这些问题的体会更深。毕业起,他就开始参与清华大学校园网、中国教育和科研计算机网CERNET的安全管理和应急响应工作。现在,他领导的清华大学网络空间安全实验室承担清华校园网的渗透测试,主要工作就是模拟黑客从网络内外不同位置发起攻击来评估网络运行状况,他是最典型的学术型白帽黑客。与大多数高校教师相比,他直接面对的网络攻击更多。


在安全理念初步建立的时代,这绝对不是个让人心情愉悦的工作。清华大学有中国规模最大且结构最复杂的校园网,是中国教育和科研计算机网CERNET网络中心所在地,早在十多年前就和其他高校合作建成了世界最大规模的纯IPv6网络。创新就意味着风险:段海新刚开始工作的那几年,网络蠕虫等攻击就一次次席卷全球,他很快就发现了书本和实战的不同。


“这种实践经历对我非常重要,它让我更多跳出书本理论去面对现实问题。”段海新认为培养学生必须补上实践短板,“但当时,开设实践性网络安全课程的学校并不多,授课教师出于传统的考虑,一般不会去训练学生在实践中的网络攻击和防御经验。”


同样毕业于清华大学的李康带来了新思路。2010年,李康已经在乔治亚大学获得终身教授。当时,他正带着自己组织的战队Disekt参加各机构组织的网络安全大赛。他告诉段海新,很多大学和安全公司都会组队参赛,这类比赛的门槛不高但高级别比赛的水平很高。


段海新马上意识到这种实战对安全人才培养的价值。安全防护人才的培养不是旦夕之功,课堂学习是基础,但许多内容只有在实际的网络和系统中才能接触到,要融会贯通就必须依靠实战——但真正的网络攻击在各国都是违法的,“构造合法的对战环境对学习网络安全技术很有意义”。另外,国际比赛更注重考察实际问题——例如软件漏洞的发现、利用和修补能力,这也是对理论学习非常有益的补充,在课堂上很难积累到这么好的学习经验。


也正是在这期间,诸葛建伟从北京大学来到清华大学工作。他和段海新很快组织实验室学生组成了他们的战队——蓝莲花。段海新说,那时的他想到了许巍《蓝莲花》中的歌词——“没有什么能够阻挡,你对自由的向往”,“这句话最能代表突破技术边界的极客精神。”


比赛起点是加利福尼亚大学圣巴巴拉分校组织的iCTF,这是一场完全在网络上进行的夺旗赛。比赛结果很快印证了没有实战经验的课堂教学有多么脆弱,段海新、诸葛建伟亲自上阵和同学们通宵苦战,最后也只在73个队伍中排到第39名,他们对规则不熟悉,对很多题目都太陌生,失败根本就无法避免,“但想到这是第一次,这个结果其实也还能接受。”


他们开始有针对性地开展学习和训练,不断了解比赛技巧、巩固基础知识和完善团队架构。第二次参赛时,他们竟然一下上升到了23名,这让他们意识到他们可以去追求更高的目标了。

 

对局


探险家的地位并不取决于装备,而是取决于他的足迹所到之处,还有多少人也能到达。对于蓝莲花这样的网络安全战队来说,尽管他们经历的风景千差万别,但最终目的地只有一个,那就是每年在拉斯维加斯举行的DEFCON,他们的目标就是在这里赢得冠军。


1993年创立的DEFCON原本是计算机科学家杰夫·莫斯(Jeff Moss)为好友举办的送别会,100多位闻讯赶来的黑客意外奠定了DEFCON最初的基础,后来逐渐变成黑客界的年度盛会,每年参会人数都超过两万,涵盖网络安全的方方面面,而DEFCON最著名的环节就是CTF(Capture The Flag,夺旗赛)——最终获胜者相当于拔掉了所有对手的“旗”。


DEFCON为夺旗赛设计了一个类似世界杯的赛制。每年5月,全世界所有对网络安全感兴趣的人都可以自由组队参加线上答题赛,在这个类似于世界杯预选赛的资格赛之后,积分最高的队伍和分站赛冠军会进入到在拉斯维加斯举行的决赛。决赛中,每支队伍可以有8名队员进入赛场,其他人可以在场外或酒店远程支招——他们类似足球队的替补。


蓝莲花将和顶级战队的对抗视为一种荣誉和课堂教学的补充,他们希望这样的过程能帮助他们尽快成长。就算只想输得不难看,这些年轻人也必须掌握基本的分析工具,必须不断阅读各种软件说明,必须学会跳过软硬件的漂亮外观、从冗长晦涩的代码中寻找漏洞,必须持续跟踪不断更新的漏洞公告。


要打好比赛就要做得更细致,过去的题目、记下的解题思路和写成的软件脚本是初入这行的年轻人最主要的培训材料。即便随着时间推移和技术进步,很多文档都已经不大适合接下来的比赛,但它们代表了曾经的技术前沿,还深藏着很多永远不会过时的攻防技巧和技术的运用逻辑,“真的做多了你就会发现,不只比赛,连准备过程很多时候也能让人学到很多。”


理想情况是,所有队员都要掌握逆向分析、二进制程序和常见的安全技能,还必须有成员擅长逆向分析,因为对程序逻辑的理解有助于尽快发现潜在的安全漏洞。这之后,团队才有机会思考怎样弥补漏洞和开发漏洞利用程序,才能思考得分策略和是否有机会争夺冠军。经过这些,每个学生都会清楚怎样学习理论、怎样分析漏洞、怎样利用团队力量弥补自身不足。


DEFCON的夺旗赛比所有其他赛事都更考验参赛者的体力、精神、斗志、技术能力和团队精神,15支以上的参赛队伍面临着相同的漏洞,机会稍纵即逝,过程极度艰苦:52小时内,每个人只能在比赛间隙有几小时休息时间,晚上必须用来分析数据以确定随后的策略。经历过这些,大家在面对极端情况时才不会力不从心。他们的对手太强,疏忽只会招致失败。


从全球看,蓝莲花最大的对手是卡内基·梅隆大学的Plaid Parliament of Pwning。目前,这支被对手们称为PPP的队伍拥有两个全球顶尖黑客,很多成员也是身经百战的安全公司员工,再加上几个学生精英,其优势之巨大几乎令人望尘莫及,是这群明星中的明星。在2013年和2014年,这支队伍都以很大的优势赢得了最后的冠军,他们是所有战队的目标。


韩国队伍是另一个重要对手。因为众所周知的不安全感,韩国在几乎所有安全领域都是“举国体制”的忠实拥趸。2012年,韩国政府启动Best of the Best计划,宣布以无上限的经费培养超过100名年轻的信息安全参赛者。同时,政府不但强制要求企业定期进行渗透测试,还规定黑客竞赛获胜可抵高考成绩,信息安全公司雇员甚至能免服兵役。重赏之下必有勇夫,韩国队伍DEFKOR在DEFCON夺旗赛上的成绩同样出色,2015年甚至还拿下了总冠军。


要想获得冠军,蓝莲花就必须在赛场上战胜这些强大的对手。当然,这绝对不容易。


鏖战


2015年,随着实力的提高——在一次止步DEFCON资格赛后,他们已经连续三年杀入决赛;稳定的赞助也让他们不必为了赢得去拉斯维加斯的路费而四处参赛,核心成员开始有选择地规避国内赛事,集中精力挑战最有难度的国际比赛,他们想在更大舞台上获得成功。


2015年参加DEFCON比赛的蓝莲花战队队员。


他们的比赛技巧也更纯熟,对很多问题都不再纠结。例如,发现和利用漏洞在理论上都应该遵循由易到难的原则,因为这样可以在不暴露自己的同时争取分数。但由于比赛规定利用相同漏洞发起攻击的队伍平分积分,场上的暗战气氛和极度的信息不对称也考验着每个人的神经,没人能在这时继续保持超然物外的冷静,尽快找到漏洞并发起攻击就成了最佳选择。同时,即便不能率先发起攻击,他们从攻击流量分析中学习攻击方法的能力也越来越强。


连续拿了两次第五名之后,蓝莲花的信心也更足了,“每次比赛前都觉得能冲击冠军。”担任领队的诸葛建伟也开始让蓝莲花更开放,不但清华大学软件学院和电子系的学生开始加入,甚至一些校外力量——例如浙江大学的陈宇森和复旦大学的刘炎明也加入了进来,蓝莲花终于有了“明星联队”的样子。


明星联队的队长是段海新的博士生杨坤。他连续参加了蓝莲花过去几年中的每次DEFCON之旅,同时代的中国选手在经验上无人能出其右;他也发表过几篇高质量的学术论文,在安全技术研究领域成绩尚算不错;他还能娴熟地寻找到很多软件的漏洞,获得过GeekPwn漏洞挖掘比赛的冠军;在参与创办了一家名为长亭科技的安全公司后,他接触实战的机会更多了。


2016年,蓝莲花也更成熟了,大家都觉得有机会赢下冠军。他们在资格赛中获得全球第二名,在以“资格赛+决赛”综合计分的赛制中,这是个不错的起点;决赛前,蓝莲花和上海交通大学的0ops组成了联队,实力跃居全球前三,中国战队常见的短板——开发能力和底层代码分析能力不足都得到弥补;杨坤在伯克利访问期间还研究过这次比赛采用的自动化攻防的对战平台;惟一的遗憾是签证出问题的诸葛建伟没能赶到现场,但他觉得杨坤和0ops队长冯思稷完全能应对这一切,万事俱备,“只要临场发挥出色,一切皆有可能。”


中国联队在第一个比赛日的表现并不好,但他们在当天晚上做出了杰出的工作,找到了两个非常隐蔽的漏洞,这帮助他们迅速扭转了被动的局面。结果,他们在第二天大杀四方。再加上为第二天其他服务写出的攻击脚本,联队在第二天火力强劲,一路从第五攀升到了第二。


到了第二天晚上,杨坤决定认真分析下形势。DEFCON会在夺旗赛的第一天实时公布各队积分和排名,第二天关闭积分榜,第三天再关掉排名,让选手充分发挥,第二天晚上是个重要关口。“当时,大部分服务上我们都有能力攻击全场,还有一两个服务我们能攻击PPP,而PPP无法攻击我们。”杨坤觉得形势不错,他让一部分人赶紧休息,为第三天的比赛留力,全队都要做好放手一搏的准备,“如果能在第三天的新服务上拿下一血,说不定还有希望。”


不过,部署意外被规则的改变打乱。第三天上午,主办方突然宣布,由于比赛中接入的资源已经不能满足各支队伍的需求,必须下线几项服务。再加上第二天下午被强制下线的服务,联队在第一天晚上找到的两个漏洞全都失去了价值,杨坤清楚这对团队的影响,“从赛后积分曲线大致看出,我们跟榜首的差距在服务下线前逐渐缩小,随后就又慢慢扩大了。”


“DEFCON的规则不像足球那么明确,主办方有权力随时增加题目和下线题目环境,但这不是我们输掉比赛的关键。”诸葛建伟说联队其实只是接近冠军,但从未真正有机会赢下冠军:“我们和PPP之间的差距还是很大的,他们在最后一天的火力更猛,得分也更多。”


而对于错失这次冠军,杨坤的态度非常洒脱。他从大四就开始打比赛,转眼之间博士都即将毕业。之前三年,蓝莲花每次出征前都希望至少打进前三,却从来没能如愿。虽然这次错失冠军,但最初的目标终于达成了。至于冠军,他们今后还有机会“再来一次”。

 

夺旗


学术型白帽黑客是个特殊群体,“再来一次”的愿望因此没有想象中那么容易变成现实。


这些人确实对安全情有独钟,他们很能享受技术对抗带来的成就感——这很难,网络安全比赛的技术性太强,对战和备战过程虽然精彩也确实枯燥,外行很难体会到比赛过程的跌宕起伏和比赛场面的波澜壮阔,裴中煜说:“你很难体会到那种快乐,但它真的存在。


裴中煜在2015年加入蓝莲花。当时,他在清华大学获得保研资格,硕士期间的研究方向就是网络安全。于是,他开始打比赛学习知识和积累经验。他对比赛兴趣浓厚,不仅完整参加了过去两届DEFCON夺旗赛,他还一直保持着每月参加两次个人赛和一次团体赛的习惯。


但这些年轻人必须扮演的角色往往成为兴趣的羁绊。他们有学术追求和职业理想,必然要面临课题压力、择业苦恼、离校挑战和年龄增长带来的体能下降,很少有人能连续多年参加比赛。而且,优秀黑客并不总能不断出现,再建立一个具有冠军实力的队伍很不容易。对他们来说,身在学校,就代表着他们可以沉浸在对战中的最好时光,每次挑战高手的机会其实都格外珍贵。


DEFCON比赛现场


2016年的功亏一篑后,蓝莲花和冠军的距离又开始慢慢增加。2017年,比赛从2016年的人机大战回到选手之间的对决,蓝莲花和XCTF的Nu1L、110066等组建的新联队也重新回到了第五名,在华人世界中落后于中国台湾的HITCON联队和由腾讯、复旦、交大、浙大组成的A*0*E联队。PPP的优势则更大了:他们获得了33850分的高分,而排名垫底的队伍竟然只得了37分。


更大的变化也在发生。最优秀那批队员已经先后告别大学——杨坤和陈宇森创立的长亭科技已经走上正轨,他们在过去几年都是一边读书、一边创业、一边比赛,但年龄的增长让他们担心不能继续在这类比赛中应对自如——高手通常会输给岁月,参加网络安全比赛的选手们对这一点往往有非常深刻的认识,他们因此很可能无法保证继续参加哪怕是最重要的国际比赛;越来越多国内优秀团队的成长也开始稀释蓝莲花的影响力,他们不再是网络安全战队中的绝对巨星;再加上新成员不是总能坚持下来,这个团队的实力已经开始下滑。


但他们也确实收获了当初最在意的东西——成长。由于现实生活中的所有黑客行为都是非法行为,杨坤说他今天掌握的所有重要攻防技术几乎都来自于不断参赛积累的经验,其他人就更是如此——DEFCON的夺旗赛已经变成了一种信仰,他们至少有机会接近顶峰。


即便裴中煜这样“武痴”型的对战狂人都开始意识到,国内比赛的套路在重复,国际比赛的质量在下滑,他不是每次参加比赛都能学到新东西,常年参加最高水平的国际比赛带来的视野正慢慢提升他的“品位”。“刚打比赛的时候,我确实能感觉到自己每次都在进步,但现在我觉得该去学学理论。”裴中煜想了想说;“当然,这也可能是因为我当时的水平太差。”


因此,段海新和诸葛建伟没打算改变,他们仍然认可这种建立在个人兴趣基础上的模式,他们不想让比赛成为学生生活的全部,也不认为像韩国那样建立职业化的团队冲击冠军有多大现实意义。段海新说,学生们要靠自己的研究和实践、靠和高手过招提升实战能力,课堂教学和科研活动并不能为比赛提供所有知识和能力。


他们自己也不可能让比赛成为生活的全部。除了讲授网络安全相关课程,段海新将更多精力花在了网络安全研究上——那是他一直以来的最大兴趣,他最近刚提出一种检测地下产业常用黑话的新方法,这可以帮助互联网公司或执法部门更好地追查地下黑产在网络上的蔓延。比赛在诸葛建伟的生活中占据的比重确实在变大,他是XCTF联赛的发起人和最主要操盘手,他想建立一个一流的夺旗赛来培养学术型白帽黑客,这个目标正在实现——第三届XCTF已经有来自100多个国家和地区的6万多人参赛,但这也意味着他只能把更少时间留给蓝莲花。

 

蓝莲花因此更像一段岁月的象征和一种精神的寄托。尽管一直没有问鼎DEFCON,但确实有越来越多的中国学生开始知道、参与CTF,有越来越多的学校开始组织参加比赛,开始认可实战的价值——蓝军最重要的使命已经完成。“也许有一天中国战队终会夺冠,也许不一定是蓝莲花,这不重要,”段海新说,“重要的是,突破极限、向往自由的精神会在每代年轻人中流传。

推荐↓↓↓
电商