作者:腾讯安全平台部 lake2

前言

十几年前,安全公司的销售套路是先给甲方做一轮模拟黑客攻击的渗透测试(Penetration Testing),发现一堆安全漏洞控制服务器,然后顺势推销诸如漏洞扫描器、防火墙、WAF、IDS、IPS之类的安全产品以收敛安全风险。十几年过去了,甲方已经把各种产品都采购了,也算建立了纵深的安全防御体系。那么,渗透测试还要怎么玩呢?没问题的,甲方升级了装备,那乙方就升级策略 —— 红蓝对抗(Red Teaming),专门检验防御体系。

当然以上是笑谈,但是确实说明这些年随着黑客事件频发和日趋严格的安全监管,大中型企业对信息安全更加重视,也投入了大量预算采购安全产品招募安全团队建立起了安全防御体系,但有了设备和团队不等于有效果,君不见很多设备只是放在那里没有开启或者无人运营,那么实际效果如何验证呢?所以必须要有一种手段来验证当前安全体系的实际能力,毕竟实战是检验安全防护能力的唯一标准(换成英语就是Talk is cheap,show me the shell),红蓝对抗就应运而生。

一、渗透测试与红蓝对抗

渗透测试这个概念在信息安全行业应该属于上古时代的名词,也是行业常见的服务,即模拟黑客攻击行为,做得浅可能就是用漏洞扫描器扫一遍,做得深入甚至可以到APT级别。渗透测试非常贴近实战,有很强的实践性,又能够直观地暴露安全风险,所以比较受企业青睐,毕竟摆出实际的能够产生危害的安全风险可以引起重视进而从容推动安全工作。另外,很多实战派安全从业者进入安全圈就是从渗透测试开始的。

参考军事演习中的红蓝对抗,信息安全领域的红蓝对抗是指攻守双方(本文以蓝军攻红军防)在实际环境中进行网络进攻和防御的一种网络安全攻防演练。蓝军在攻击过程中,红军如有发现可以立即启动应急响应,最终复盘对黑客攻击行动中的防御体系的识别、加固、检测、处置等各个环节,发现薄弱位置并优化之。

可以认为红蓝对抗是渗透测试的升级版,或者说它们是企业在不同时期的安全需求。

两者都是模拟黑客真实攻击,渗透测试和红蓝对抗所需要的技能树差不多,只是渗透测试关注安全漏洞(毕竟要用漏洞拿下目标),而红蓝对抗在关注安全漏洞的基础上还关注行动过程中安全防御体系的有效性或者薄弱环节。

在企业安全体系建设初期或者一穷二白没有任何安全体系的时候可以多采用渗透测试,这个阶段就是要多暴露安全风险从而针对性地建设安全能力,而安全体系具备一定规模能力后可以建设红蓝对抗 —— 毕竟,安全体系本身的缺陷也是很大的风险。

二、红蓝对抗体系建设

红蓝对抗已成为近年安全行业的热点话题,在国家相关部门推动下得到了各大单位前所未有的重视,不管是攻防技术研究还是蓝军团队建设,在各大安全峰会以及技术网站,都很多同行都有分享和探讨(见附录),笔者也结合这些年的实际工作探讨一下红蓝对抗体系建设以及泛蓝军新思路。

大多数时候我们说的网络安全红蓝对抗,其实是指的渗透攻击,不管是关注高级可持续渗透(APT)还是网络攻击杀伤链(Cyber Kill Chain)还是MITRE的ATT&CK,都是传统意义的信息安全时代的红蓝对抗。随着时代的发展,各种新技术新架构的出现,红蓝对抗建设思路得从传统的信息安全视角转向网络空间安全视角 —— 毕竟,安全防护是随着安全威胁的变化而变化的。所以笔者认为红蓝对抗领域不应该仅仅只是网络渗透攻击,还应该包括新兴的物联网、工业互联网、业务风控,甚至还包括商业间谍(窃听/窃视)等领域,只要企业的信息资产和安全体系所涉及的领域,都应该需要有效性检验。华为蓝军就有点这个思路,当然它包含的范畴就更大了。

基于以上思路,就会对蓝军团队的整体综合能力要求很高,所以蓝军应该分为单兵作战能力强的攻击团队和研发能力强的技术支持团队,前者具体执行蓝军任务,后者提供强大的弹药支援。

除了自建蓝军,定期邀请外部蓝军来进行测试也很重要。尽管是模拟外部黑客,但长期在内部的蓝军的攻击视角难免会出现局限,同时也是担心多次对抗后红军建设的策略只能防住特定蓝军手法(所以笔者一直说检测策略尽量要通用,避免使用容易被绕过的黑特征)。众多的外部白帽子就是无数外部蓝军,所以TSRC收到的每一单安全漏洞我们都会复盘优化安全系统的缺陷,同时内部蓝军也学习到了外部白帽子的思路。

所以我们内部的“腾讯蓝军”的大概架构如下:

最后谈一些组织结构上的一些注意点。为了更好地检验安全防护能力避免左右手互搏的情况出现,蓝军团队成员需要精通相关领域的攻击而且要是独立的,与红军不能是同一拨人。同时也要注意红蓝军之间的矛盾或者说差别:蓝军只攻点,红军防护面,并不是说蓝军发现问题就证明红军很差,而是应该有一系列指标来量化红军能力(比如攻破时长、难度、发现率、有效率、响应时长等)。另外就是应该鼓励红蓝双方换位思考互相学习,引导蓝军针对性地提出解决方案,引导红军用蓝军思维去评审安全系统。最后注意安全是个动态过程,蓝军发现的问题要分清楚主次矛盾排优先级来解决,一定情况下特别刁钻古怪的问题可以接受短期内不解决。

三、腾讯蓝军实践

腾讯安全团队在早期是以渗透测试为主,后来逐步建立了安全体系后开始有针对地启动红蓝对抗 —— 只是当时还没有红蓝对抗这个概念,也是现在回过头来看,才发现原来我们已经开展了十多年的入侵演习就是红蓝对抗。如下图即是2010年由笔者执行的一次入侵演习后的复盘邮件,对腾讯自研的服务器安全系统“洋葱”的入侵检测能力进行复盘并提出改进建议。

类似这种入侵演习腾讯内部每年都会执行多轮,蓝军不断发现当前业务的主要安全风险以及各个安全系统(如前述洋葱、漏洞检测的洞犀/金刚系统、WAF门神、DDoS防护宙斯盾)的防护能力短板,然后红军不断去修复和完善。除了内部演练,还依托TSRC邀请外部安全专家来测试,比如今年联合云鼎实验室开展的“云上保卫战”,还有联合PCG运营团队开展的PCG业务安全众测等等,效果都还不错。

按照“往死里帮腾讯云”的老规矩,腾讯蓝军在渗透测试和红蓝对抗领域积累的工具、方法论也输出为腾讯云安全的专家服务,并在几家政企金融大客户实战证明效果不错(当然也离不开支援团队,比如Blade Team提供的某平台虚拟化0day漏洞演示,直接让大客户高层领导震撼)。

除了传统的渗透攻击,腾讯蓝军还结合实际业务需求联合内外部团队把红蓝对抗领域延伸到了AIoT、DDoS、业务风控、窃听窃视等领域。比如:联合Blade Team物理侵入办公室、无人机渗透智能楼宇、智能设备物理拆解攻防;与服务器安全系统“洋葱”进行硬件木马的检测与反检测对抗;与宙斯盾团队进行DDoS蓝军测试平台建设及测试,瞬间能打出上百G几十种DDoS攻击类型;与行政和外部反窃密专业机构RC2反窃密实验室合作的办公室窃听对抗……

因为涉及这么多领域,所以腾讯蓝军是一支集各种领域安全能力为一体的联合大战队,下设青龙、白虎、朱雀、玄武、黄龙等各小分队,既能单兵作战又能协同团战。

高光时刻,以腾讯蓝军工作为背景的文章也得到了马化腾先生的高度赞扬并在朋友圈宣传 ,所以本文的标题改成《连马化腾都点赞的腾讯蓝军是个什么军种》可能访问量还更多一些。

后记

本文是笔者对红蓝对抗的一点思考,也可以算是重新定义了红蓝对抗或者说是拓展了红蓝对抗的边界,不管如何,安全是一个动态过程,对于业务系统和安全系统来说,唯有不断地查缺补漏优化迭代才能够保护信息资产。实战是检验安全防护能力的唯一标准,开放心态,接受缺陷,努力完善,才能最终提升整体安全水平。

最后要注意,红蓝团队是相辅相成的,切不可厚此薄彼。任正非说过,“蓝军只攻其一点,红军要统筹全局,顾及方方面面,又要进攻又要防御,要困难得多”。诚哉斯言,当明白了这个道理,我们就又回到系统建设运营的康庄大道了。

【附录】红蓝对抗相关文章

avfisher@安全小飞侠:

Red Team从0到1的实践与思考

Mark4z5@腾讯蓝军:

以攻促防:企业蓝军建设思考

he1m4n6a@webank基础安全:

《安全之红蓝对抗简介》

奇安信安服团队:

红队视角下的防御体系突破

孟极实验室:

大型攻防演练游戏红方总结(附彩蛋)

声明:本文来自腾讯安全应急响应中心,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。