作者 | Tina、魏星
网络安全领域的极客也被称之为“黑客”,这个词曾是完全的褒义词,也一度是中文互联网上最闪耀的一颗星。
20 世纪 90 年代,一批极客为兴趣爱好所驱动,热衷于研究网络安全技术,并崇尚分享、自由、开放的互联网精神。他们启蒙了中国的安全行业,为安全圈子建立起来了一种独特魅力,也创造出了一个让后来人虽身不能至但心向往之的黄金时代。
2010 年之后,云计算开始普及,随着云上业务带来的流量和数据越来越多,云成为了安全攻防的主战场。相对传统的攻防,云安全是一个全新、无所参照且极为复杂困难的命题。当年的安全极客会用什么方式保证云上安全呢?
技术高手的风云际会
董志强和李滨因网络安全技术相识于 2000 年左右,他们都属于中国最早的一批网安极客,也同是那个时代的弄潮者。
董志强,在网络安全圈有个响亮的名号“Killer”。跟那个时代的安全极客一样,Killer 虽然并非计算机专业科班出身(汉语言文学专业),但本着对漏洞挖掘和反病毒技术的兴趣投身网络安全领域,做漏洞挖掘和网络渗透,最终投向反病毒领域。他曾于 2006 年创建了“超级巡警”。2007 年 1 月,因为遏制了“熊猫烧香”病毒的肆虐,“超级巡警”之父 Killer 一战成名。
李滨在 1998 年开始参与安全相关工作,曾经跟中国最早的一批网络安全极客“绿色兵团”一起创建了中国的第一家网络安全公司,担任该公司的华东区技术总监,负责技术团队的构建和运营。
在随后的十年内,安全圈风云变幻,但是由于市场和行业对安全的重视程度不够、技术创新不足,小众且专业的老技术人才逐渐流失。安全行业逐渐进入产业发展瓶颈,“产品缺乏创新,从业人员缺乏对客户行业和业务的理解,产业发展和技术创新停滞,看不到什么希望,需要一些新的思路进行整个领域的开拓和发展”,这个时期,李滨选择“出走”去了甲方企业从事企业 IT 治理工作,”学习甲方的经验”,而 Killer 也一度从圈子里“销声匿迹”。
幸运的是,他们因云计算再次回到安全的主战场。
2016 年,腾讯正式宣布推出安全联合实验室矩阵,旗下科恩实验室、玄武实验室、云鼎实验室等几大实验室首次集体亮相。掌舵几大实验室的人囊括了享誉业界的吴石、于旸等国际顶尖白帽黑客,而云鼎实验室,其掌门人正是 Killer——董志强。
“云鼎”寓意“铸力为鼎,护云安全”,发起初衷是为了帮助腾讯云做好底层安全建设。Killer 表示其定位是建设领先的云计算安全能力和最佳实践,包括云安全架构与技术研究,产品与平台安全体系,安全运营和治理体系。随后,李滨也从华为中央软件院首席安全专家的岗位上离任,加入了云鼎实验室,任职腾讯云安全总经理。
云技术对安全人来说是“颠覆性”的
腾讯在传统网络安全方面已有十多年积攒。
2010 年,QQ 进入鼎盛时期,同时在线人数突破 1 亿。为了反黑产反诈骗、保护自己赖以生存的生态,腾讯升级 QQ 医生并推出了具备 PC 端查杀能力的“QQ 电脑管家”。此举也相当于打响了互联网历史上著名的“3Q 大战”的第一枪。2010 年 9 月,腾讯针对安卓等系统再次推出“手机管家”。数据显示,腾讯手机管家的装机量曾于 2015 年超过所有同类产品,跃居行业第一,活跃用户数达到了 1.8 亿。彼时,腾讯手机管家、腾讯电脑管家和应用宝并列 MIG“一门三杰”,加之几大实验室的组建,网络安全也成为腾讯一支王牌之师。
在 3Q 大战结束之后,腾讯公司开展了 10 多场“诊断腾讯”的公开会议,探讨了许多尖锐而敏感话题,比如,腾讯为何必须开放?腾讯的创新模式是什么?腾讯可能的颠覆者有哪些?腾讯创始人马化腾在其中一场“诊断腾讯”的会上说,解决腾讯的问题主要办法是开放,“3Q 大战成了催化剂,让我们在开放的路上更加坚定,走的更快。”于是在 3Q 大战之后,我们看到腾讯推出开放平台,这也是腾讯云的前身,腾讯安全也相应从 C 端社交走向了云计算,服务产业互联网 B 端用户。
云计算处于发展的早期阶段,安全作为伴生技术,出现的时间更晚。早期的安全建设虽然可以借鉴海外的经验,但过去无论是国内还是国外,能做云安全的厂商并不多。
作为云鼎实验室的早期成员、拥有十多年安全从业经验的“老兵”,张祖优介绍说,“虽然腾讯具备十几年的在传统安全上的经验,但是在云的场景下,其实这种安全的模式是有差异的。”
传统 IT 环境中,安全的边界和资源实体清晰,而云上的一切都是在动态变化的。
在原来的环境中,系统跟物理服务器一一对应,一旦出现漏洞,就相对容易确定所在域名、IP 地址以及应用、系统、设备的边界接口。这些系统使用什么软件解决方案,靠什么网络支撑,部署在什么位置,都是可以看得见摸得着的,所以能清晰地分析出一个系统的安全边界和安全威胁,然后设置相应的防范机制。
但上云之后,首先应用接口是模糊的,比如微服务架构中,由于抽象层下面都是动态的,调用接口后指向的服务资源随时可能变化。底层虚拟计算资源和物理计算资源也不是一一对应的关系。热迁移或灾备技术,甚至导致会这些应用跑在哪个区域、哪个物理机上都是不确定的。李滨解释:“也许今天(应用服务跑)在上海(的数据中心),可能下一周(跑)在广州(的数据中心)了。服务的抽象和资源池化虚拟化导致的动态性,是云架构对安全带来的一个最大的挑战。”
其次是容器等新技术的应用,资源变化周期也更快,引入 Serverless 以后资源的动态性甚至是毫秒级的,这个时候定位一个安全问题也需要在毫秒级的时间内完成。资源生命周期的变化使得传统的漏洞管理过程和 IT 风险模型在云上遇到了巨大的挑战。面对新的场景,传统的安全管理方式、思维方法和理论模型都已经完全不适用了。
总结而言,云在架构上已经变化了,从上层应用层和底层的资源层都实现了抽象,带来了动态性,导致原来的方式方法不适用。因此,“云安全从底层的架构思维和管理方式上都有本质上的不同”,李滨认为,“云计算的导入对安全的影响是颠覆式的”。
云计算对安全老将意味着什么?
随着企业上云的增多和加速,数据和流量越来越集中,云已经成了一个“大蜜罐”。如果云平台被攻陷,那后果是不堪设想的。云厂商必须投入大量资金、大量的顶尖安全人才来保证云的安全。
张祖优以前从事的是 Web 安全,主要是以攻击者的视角寻找网络上的漏洞,2016 年加入云鼎之后,就变成了一个防御者。“攻击”是能找到一个突破点就行,“防御”讲究的是面面俱到。原来的“攻击”更偏向于技术深度,或者是技术上的突破。现在的“防御”更多是去做管理、管控,是架构体系上的事情,与之前的工作方式有很大的差别。
对于反病毒出身的 Killer 而言,以前面对的是 C 端用户,一个产品就可以“打穿”所有场景。转战云安全,就意味着需要构建多个产品,成体系化的去解决不同场景的安全风险。
“在云上管好安全是非常困难的一件事情,要有新方法、新技术和新思路。”尤其最近几年,国内数字经济发展迅猛,有很多独特的场景,对安全提出了新的要求,这使得大家重新审视云平台的安全架构,重新定义安全度量标准,李滨认为,“在云安全这个领域,我们遇到的是‘百年未有之大变局’。时代在变,而今天所处的行业正好处在这个时代变革的潮流之上,今天完全是一个全新的时代,甚至对于整个安全产业来说它都是一个全新的开始。”
云鼎如何建设云安全
2016 年的时候,云鼎刚成立,处于 SNG 的安全平台中心。当时安全平台中心主要分为两部分,一部分是运维部门,负责 QQ 等关键产品的安全;另一部分负责研发安全产品,不少 “爆款”产品最早是从这里孵化出来的。
云鼎实验室的第一个关键任务是负责研发一款主机安全产品,这个产品被命名为“云镜”。当时团队不到 10 个人,既没有足够多成熟的云安全攻防人才,市面上对于如何做好云的安全建设,也没有可参考的成功案例。在这种条件下,云鼎对云镜的设想是通过大数据分析的手段,为用户提供黑客入侵检测和漏洞风险预警等安全防护,主要基于腾讯过去在 PC 安全的积累,比如恶意文件和漏洞检测。参与产品研发的张祖优表示,“这是将一些传统的安全能力在云场景下去适配、去做模式上的创新。”
云鼎的另一个职能是承担腾讯云自身的安全运营管理职能,落实安全责任共担等需求。腾讯云下产品和团队本身从软件开发周期安全各个角度都是由云鼎实验室负责协同管理。这个时间段以满足用户直接需求和市场需求为主,客户需要什么或者解决哪些问题就去构建相应的安全服务。
了解业务,才能做好安全产品
研发和安全之间最常见的就是内部权责以及管理方法上的冲突,最基础的一个问题是“发现问题后,该如何进行决策?”早先,安全部门习惯从安全人的角度去思考,风险评估发现问题以后就要整改或者更改产品安全策略。但是往往会受到开发部门非常大的抵触,担心变更安全策略会影响开发进度,或云上业务的稳定性,毕竟这是给跑在高速路上的汽车换轮胎。
这时候,其实是需要安全人员了解企业本身管理体系、运营治理,站在对方的立场去思考问题。作为国内最早期一批做安全的人,李滨对此深有感触。
“最典型的问题比如打补丁,做安全的人认为运维打补丁是一件很简单的事情,只是需要运维在规定的时间内打上补丁,以防带来严重的安全后果。这是安全人的思维角度,看似很合理,但往往会受到运维非常大的抵触和百般推诿。这是安全人不理解的地方,当我到了甲方后才明白打补丁到底是一件什么样的事情。”
李滨曾任职于一家重资产型企业,核心生产系统外加周边几十个系统一起才能保证一个工厂 24 小时不间断地运行。生产每中断 1 小时,损失就是千万级的,当时曾因供电的故障导致整个工厂停产了半天,造成了巨大的损失。在这样高价值的连续运转的工厂系统里,打补丁不是安装后重启机器这么简单,因为给核心生产系统打补丁期间工厂必须停产,视停产时间的长短基本上打一个补丁要损失几千万。如果失败了需要回滚和修复,造成的损失更无法估算。
在这样的情况下,需要对补丁进行评估和分级,建立一整套的管理流程指导技术操作。除了主生产系统和备份生产系统以外,还需准实时和相对脱机的两套测试环境,测试系统兼容性、稳定性没有问题之后,制定一个严格的操作指引,保证整个系统运转的精密性。
“通过这个案例就能理解甲、乙方之间思维存在巨大的差异:作为乙方,安全人员可能对很多问题的认知和理解相对局部化、简单化,而作为甲方来说,他所考虑的不只是安全一件事,更重要的是要保证业务的连续性、稳定性等。”
“在 2008 年到 2010 年左右,安全产业为什么会走向至暗时刻?一个原因是早期做安全的人和企业由于思维和技术的限制,对真正甲方的业务、产业情况、技术情况、管理方法等不够了解,当时的产业现状是乙方做了很多产品,但甲方并不买账。原因很简单,因为当时的安全产品没有真实解决客户的问题或者体现出相应的价值。”
研发也需要对安全负责
在以前传统 IT 模式下,软件可能是采用瀑布流的开发方式,建设周期基本上是半年到几年时间,系统的生命周期可以是几年到几十年的时间。面对 5 到 10 年长周期的系统,安全管理可以年为单位进行滚动周期。
上云之后,传统研发模式已经难以适配云上快速迭代开发的方式了,比如腾讯会议在 260 天迭代了 29 个版本,过去倡导的最小化可行产品等概念,安全模式中强调的威胁建模等理念,在云计算模式下难以推广。
其实现在我们很多人都知道安全考虑是开发过程的一部分,比如说很多漏洞就是在开发阶段引进来的,漏洞的修复越早越好,上线之后修复跟开发阶段修复,成本就不一样了。对应的解决之道是 Gartner 在 2012 年提出的 DevSecOps,它是一种糅合了开发、安全及运营理念的全新安全管理模式,提出安全是整个 IT 团队(包括开发、测试、运维及安全团队)所有成员的责任,贯穿从研发到运维整个业务生命周期的每一个环节。
这里面包含有一个“安全左移”的理念,强调不只是安全团队要为安全负责,业务开发团队也要为安全负责。研发团队可以使用简单高效的工具进行代码检查,因此云鼎基于腾讯安全的能力,构建了 DevSecOps 工具链,将安全能力嵌入到 DevOps 平台,通过 CI/CD 流水线检查等方式在业务的研发甚至运营阶段前置、高效的收敛安全防护,保障业务快速迭代中的安全质量。
一次关于云安全体系的重建
随着云计算在国内的快速增长,云安全需求相应也发展起来。2018 年,云鼎的工作也从主机安全扩展到例如抗 DDoS、WAF 等领域,也承接一些腾讯云的安全应急响应工作。这一年,随着腾讯史上第三次组织架构调整——也被称为“9・30”组织架构调整,云鼎实验室从原来的“中心”级别升级到了“部门”级别,云鼎开始全面负责腾讯云安全保障工作。
常态化红蓝对抗:没有绝对的安全
这次调整还包括成立了一个虚拟团队“云全栈安全研究工作组”,由腾讯旗下几大安全实验室和腾讯安全平台部超过 300 人的顶尖人员组成,除了围绕云平台展开比如机密计算这些前瞻性的研究,还会在内部由云鼎牵头,联合玄武、科恩以及 TEG(技术与工程事业群)的安全平台部等多个团队,组织大规模的云全量红蓝对抗演练。
红蓝对抗每年都会进行几次,已经是常态化的工作,通过实战对日常各种安全事件进行验证。
“最近一次是在 2021 年底,总共进行了 2 个星期。我们靶标定为一个云基础设施的管理平台,拿到这个平台(权限),就意味着腾讯云就可能会被攻击方控制了。另外,我们也不会限制通过什么路径进来,只要他们能进来拿到靶标就算赢。”
这次对抗,攻击方分为了三个团队,会用不同的方式,比如使用内部的 IM 系统,弱口令爆破、从子公司或者合作伙伴系统着手(这些地方默认为安全性相对更弱)、挖掘安全系统的 0day 漏洞,甚至会使用社会工程攻击。张祖优举例说,攻击队在红蓝对抗演习之前,已经收集好了外网的一些目标,包括腾讯员工暴露在外网上的一些资料、员工的信息,对抗开始他们假冒成猎头,这个猎头可能在演习之前的前一两个礼拜就已经加上这个员工的微信,通过微信给他 JD。这个 JD 可能是个病毒文件,员工一旦点击,电脑就会被控制。
防御方措施更多是采用监控机制,比如攻击了员工的 PC,那么其实员工 PC 上对应的安全系统会监测到相关的操作,如果收到钓鱼邮件,或者电脑被植入木马,防御方发现后会第一时间进行阻断,将员工的电脑下线。然后再去溯源,分析是不是攻击队的行为。这次演练,虽然没有拿到靶标,但也被攻击方发现了一些路径,这些路径也在逐步修复中,最终达到“以攻促防”的目的。
构建云原生安全体系
近些年来云原生席卷全球,容器技术处于云原生计算的最前沿,却频频出现安全问题:2018 年,特斯拉、Weight Watchers 在内的多家公司的 Kubernetes 环境遭到攻击;2019 年,黑客利用了一个 Docker Hub 的安全漏洞导致一个企业的 19 万用户数据泄露......
有报告指出,75% 正在运行的容器至少存在一个“高”或“严重”漏洞”。目前大部分容器的漏洞,主要是由于镜像引入的,研发将业务代码和依赖的组件与底层运行环境打包成容器镜像文件,然后通过 Kubernetes 等容器编排系统进行部署运行。其中业务代码、第三方组件、底层操作系统均可能存在漏洞。
Kubernetes 技术起源于谷歌的 Borg 系统,这些容器技术在谷歌诞生的时候,本身并没有太多的考虑安全性,当时谷歌假设容器所处的环境已经足够安全。在这样的情况下进行设计,更多的是考虑本身计算的高效和便捷性。这就导致现在整个以容器为核心的云原生计算领域,安全方面有非常多的先天不足,包括缺乏对计算的隔离、网络的隔离。容器共享操作系统内核,但并未实现完全隔离,若虚拟化软件存在漏洞,或宿主机被攻击,将会造成容器逃逸或资源隔离失效。
除此之外,李滨表示,“云原生领域本身也在快速发展的过程中,所以本身生态相对碎片化也缺乏统一标准来进行相应的规范化。”
2019 年初,云鼎实验室开始研究容器安全领域,针对容器安全漏洞,研发了相应的自动化工具,对容器进行漏洞检测,确定漏洞引入的镜像文件层级并进行修复;针对容器先天不足,云鼎根据已有的大规模集群环境,加强了在容器底层内核以及虚拟层面的隔离、容器网络的隔离两方面的布局。
解决容器逃逸威胁,相应的防范技术是容器虚拟化隔离,云鼎除了加固内核,也会对 Kubernetes、runc 等容器基础设施组件漏洞和配置类导致的逃逸问题进行安全加固,对进程 capability、系统调用、容器间通信隔离等进行细粒度的管理,这样能有效降低容器逃逸发生的可能。
2020 年后云鼎将容器安全技术产品化,在腾讯内部落地和实践,在云上已经覆盖了上千万核的容器计算的环境,形成云原生安全核心领域优势。在规范化方面,作为参与单位和信通院一起起草了容器安全标准以及云原生相关标准。
云全栈安全基础设施
“9・30”变革之后,云鼎实验室人员增至 100 多位。团队整合和业务重塑后,也取得了一定成果,但外部威胁也开始发生变化:
第一是加密货币的流行,使得黑产更容易实现隐秘的变现,所以挖矿、勒索这类黑产比较流行。从现象上看,针对云服务器攻击植入挖矿软件,加密重要数据资产进行勒索变多了。
第二是供应链安全问题凸显。传统边界防御建设的相对完善,供应链上下游薄弱环节开始被黑客关注。国际组织 Forrester Research 的研究表明,应用软件 80%-90% 的代码来自开源组件,而开发者往往对开源社区默认信任。所以对开源组件的攻击,通过源码投毒污染下游生态就成为黑客青睐的有效攻击手段。
第三是新的计算形态带来新的安全挑战。比如 Serverless,函数计算等。要保证新技术快速发展同时安全防护不缺位,有比较大的实践挑战。
第四是合规要求带来新的技术挑战和新的业务场景。各国不同的数据安全要求,给数据安全带来新的挑战和发展机会。
由于这样一些因素,云鼎提出新的全栈安全思维,开始构建“云全栈安全基础设施”。从整个系统堆栈的角度考虑构建完整的安全体系,坚持基础设施从底层到上层全链路的安全建设,坚持安全左移,进行 DevSecOps 的云平台最佳实践,在每个云产品里面设立安全卡点,把安全能力做到云里面去。Killer 表示,“这个阶段很多工作还在持续进行中,但是整体架构构建完成了。”
云整体安全架构包含云安全治理、数据安全、应用安全、计算安全、网络安全等多个维度。在这个安全架构下,主要有三个基础支撑点:云原生的数据安全、云原生的安全治理和服务、云原生计算安全,也是云鼎构建产品的三个技术方向。
这三个基础层次底层是计算资源安全,以容器和 serverless 为主的云原生技术正成为计算技术的主流,传统的如虚拟主机方面虽然还在延续,但是在技术上也会做进一步云原生化,所以云鼎以虚拟主机安全、容器安全为核心构建了一系列云原生技术和产品,以容器安全产品为支撑,保障用户底层计算资源、计算环境的安全。
另外,这两年国际到国内数据安全、隐私合规变得越来越重要,未来整个数据安全也会成为云安全最重要的模块,所以云鼎也构建了云原生数据安全相关的技术和产品体系,保证用户数据在云上的安全。
云安全对一般企业来说是一件非常复杂的事情,云鼎基于自身的最佳安全实践,打造了云原生的安全托管服务 MSS,用智能化、数据驱动、自动化的方式给用户提供一整套的安全治理托管服务,按照技术研究、进行产品孵化和实践、进行内部推广的过程,最终形成可对外的托管产品。
国内安全产业起步虽晚于国外,但也有属于自己专有场景上的想法和规划,在实践中逐渐也有了自己的布局。李滨认为,云安全领域是在整个安全技术领域跟国外差距最小的一个领域,“甚至从整个思维方法到技术产品上,在局部领域赶超国外,也是非常有可能的”。
采访嘉宾简介:
董志强,腾讯安全副总裁、腾讯安全云鼎实验室负责人。从著名的 2006 年专杀“熊猫烧香”,到创建“超级巡警”,再到拓展海外安全,董志强在安全领域一直拥有卓越的技术能力和影响力。2016 年加入腾讯,从反病毒领域转向云安全领域,从无到有牵头组建成立了云鼎实验室,带领团队梳理腾讯云安全架构,并逐步承担云平台的基础安全工作。专注于云领域前沿安全技术研究与创新、安全漏洞研究和处置、云架构和解决方案规划设计、云标准化和合规体系建设等工作。
李滨,腾讯云安全总经理、腾讯云鼎实验室首席架构师,目前负责腾讯云的安全运营、架构规划与租户安全治理工作,并带领团队一起在可信软硬件基础设施、云数据安全、大规模安全事件分析和对抗等方面展开研究。在二十多年的安全从业历程里,李滨在企业架构和信息安全治理、云计算和安全技术等领域具备丰富经验,并获得了多项国际认可的专业资质证书 CCSP、CISSP、ISSAP、CISA、CISM、PMP、ITIL、ISO 27001/22301 LA 等。
张祖优,2016 年加入云鼎,腾讯云产品安全负责人,腾讯安全云鼎实验室高级工程师,负责构建腾讯云产品安全及攻防体系,主要研究方向为企业安全建设、安全攻防、安全自动化、云安全风险处置与应急响应等。13 年安全攻防经验,长期进行 Web 漏洞的挖掘与研究,给国内外各大甲方安全公司解决过多个严重安全问题,获得过微软、阿里巴巴、腾讯、360、新浪等公司致谢等;在 KCon、WOT2014、ISF、赣安杯、QCon、BlackHat、国泰君安•信产峰会、网络安全创新大会、DevOps 在线峰会、信通院企业级 DevOps 赋能主题活动等安全与技术会议上做过安全相关演讲,受邀参加过北京广播电台等访谈,接受过《人物》、雷锋网、法制晚报等采访,在《计算机文摘》等杂志报刊发表过文章;参与过 《研发运营一体化(DevOps)能力成熟度模型》、《网络安全标准实践指南—远程办公安全防护》、《面向云计算的可信研发运营安全能力成熟度模型》等标准以及 Freebuf《2020 DevSecOps 企业实践白皮书》、信通院《研发运营安全白皮书(2020)》行业报告编写与制定。Pocsuite、3102 等安全工具核心开发者。原知道创宇安全安全研究员,负责 Seebug 漏洞平台、ZoomEye 网络空间搜索引擎为主的漏洞社区,Seebug 创始人,多届 KCon 黑客大会技术负责人,发起并策划兵器谱环节。