摘要:生物病毒与计算机病毒的特性、传播性有一定的相似性,通过新冠疫情的应对,可以反思网络安全防护的得与失,并分析相关的一些网络安全新趋势和新技术。
序言
2020年行将过半,谁也没有想到竟是如此多事之秋。新冠病毒在短短数月内席卷全球,疫情持续扩散和不断反复,也在改变了人们很多固有的认知,包括卫生医疗、公共安全、组织动员、经济政治等等。可以说,疫情也许在未来几年内趋于平静,但其对全球政治、经济、军事等方方面面产生的影响将会持续相当长的一段时间,世界格局也会发生深刻的变迁。
计算机病毒的概念本身就是源于生物病毒,两者有一定的相似性,例如变种、传播、感染机理等。一旦恶意软件爆发,后果同样很严重。一个典型的例子是勒索病毒WannaCry借NSA永恒之蓝武器库之威在2017年发难,短短几天内感染了150个国家的20万计算机,后来甚至还瘫痪了台积电等厂商的生产线,还突破物理隔离、攻破内网的重要资产,极大冲击了人们对网络攻击和网络战争的固有观念。
因此,分析、总结各国应对疫情的得失,或许对网络安全从业者应对未来网络攻击的防护思路有所启发。
总体而言,疫情期间各国处置有如下几点值得探讨:
一、经济(业务)发展 vs 公共(网络)安全
反思:重经济发展、轻公共安全的道路行不通
毫无疑问,疫情发展会对经济产生消极影响。一方面,新冠病毒扩散和传染性很强,如果对疫情不加控制,进行消极防控,或实施所谓的“群体免疫”,短期虽然不会大面积影响经济和生产,但会危害很多人的生命,长期看很可能发展为社区传染,造成更大的破坏;而另一方面,如果要彻底处置疫情,应当隔离中高风险人群,关闭工厂、企业、市场和第三产业等经济生产和交换场所,短期内对经济产生极大的冲击。到底是关注短期破坏性的损失,还是关注失控后的长期损失,则是一个两难的问题
2020年2月底,疫情开始在全球扩散时,作为经济的风向标,各国的股市出现了大幅下跌,如图1所示[16],体现了对未来经济预期的担心。美国在疫情爆发以后,自3月18日起十日内,美股三大股发生了史无前例的4次熔断。后来各州采取封锁城市、限制聚集等措施,从而逐渐降低了日感染增速。4月17日美国公布经济重启指南,5月各州重新开放,经济好转。但紧接着到6月,部分州新冠病毒感染单日确诊案例出现反弹式增长,出于对第二波疫情的担忧,6月11日美国三大股市下跌超过5%,创下3月后最大跌幅。
美国政府虽然很早就获知新冠疫情,也采取了断航撤人的措施,但在疫情初现和传播的整个过程中,一直顾虑经济下行而难下彻底隔离的决心,后疾控有所向好却又急于经济重启,结果是没有有效控制病毒传播,又拖累了整个第二季度甚至更久的经济发展。
图1 疫情对经济的影响
在IT领域,安全总是伴随业务而生的,安全的最终目的是保障业务正常运行,减少业务受攻击造成的损失。所以,安全团队也会遇到类似的情况,当一个业务出现脆弱性,或面临具体威胁时,是否需要当机立断进行处置,处置可能会对业务的可用性产生不可预测的影响,不处置如被攻破则后果更严重。如果面临的是关键业务(工控设备)或重要业务(金融核心服务),那CXO(CISO、CRO、CIO,甚至CEO)是否有决心当机立断,此时似乎陷入了与美国总统特朗普一样的困境。
最有代表性的是2013年Target数据泄露事件[17],当时安全团队发现了若干攻击事件,但市值黑五促销活动期间,且他们认为攻击者接下来不会采取行动。但事实上,攻击者窃取了4000万个信用卡和借记卡等敏感信息,事件曝光后,Target公司股价、营收和利润受到了极大影响,其CEO于次年下台。
举措:平衡业务收益和风险损失
与美国对比,中国在武汉出现疫情后的处置则更为果断,尽管人口一千万的大都市的经济发展非常重要,但已有2013年非典的前车之鉴,考虑到病毒蔓延造成的严重后果,武汉政府在关键时刻采取了封城的非常举措,对遏制病毒传播具有至关重要的作用。
而北京则又是一例,6月11日起,北京发现多例新冠肺炎确诊病例,一时间形势严峻,是否像初期武汉一样封城就成了决策者面前的难题。综合考虑城市体量、经济状况、全民防控意识、病例扩散情况,北京政府推出了提升应急响应级别、筛选密切接触者、大范围核酸测试、管控进出交通等措施,各项工作有序推进。
与病毒的抗争是动态的,国情不同、民情不同、疫情不同,都会做出不同的应对手段,其目的就是在控制疫情的前提下,保证经济发展,保障社会的稳定运行。
网络安全也是如此,安全团队的目标是保障业务的各项安全属性,但考虑到攻击者会使用各种手段进行攻击,不可能存在百分之百的绝对安全。安全是相对的、动态的、博弈的。攻击者如果在一定的成本约束下,没有达成自己的攻击目的,就可以认为防守方获胜。因而,安全团队应分析己方的保障目标和当前环境所面临的风险,在给定的预算、成本的约束下,调研、设计、部署和运营各项安全机制,增加攻击者的攻击成本和难度,进而减少业务遭破坏所造成的损失。
这就很考验安全团队的经验,例如判断当前攻击者在踩点,还是精准打击;攻击事件是尚在尝试,还是已经攻破;被保护资产是关键业务,还是无伤全局的;当前应该迅速隔离,还是观察其下一步动作,将其一网打尽。但无论防守方下一步是什么,那是具体战术问题,但大的原则是保障业务的前提下的平衡。
具体而言,决策者需要从业务投资中拿出一部分成本投入安全,这部分安全投入起效挽回的损失就是安全收益,但这种成本获得的收益不是无限线性增加的,所以决策者需要找到一个平衡点。表1说明了在各项安全投入花费的成本xi和其避免风险所造成的损失yi之间的关系,在保证己方风险可控的约束条件下,调整己方各种安全投入(xi),使得风险损失()最小化。(即)
表1 安全投入和收益的平衡
二、战役 vs 战争
反思:希望“毕其功于一役”的思路行不通
新冠病毒没有像非典病毒一样在夏天消失,反而趁着部分国家防范不严、卫生水平不高,继续在全球攻城略地,很可能会持续数年。虽然中国在短短两个月就控制住了疫情,完成了漂亮的“武汉守卫战”,但专家们一直强调不要掉以轻心,尤其防范境外输入。美国传染病学专家福奇也表示,第二波疫情很有可能发生,应做好应对。从各国确诊病例时间轴[18]可见,国外疫情仍在持续上升,国内虽然确诊病例持续减少,但4月以后各地仍不断发现外来输入病例,特别是6月北京的新疫情则清晰地表明了病毒死灰复燃的可能性和真实性。
另外,新冠病毒的变异性和传染性,世卫组织专家认为新冠病毒可能永远不会消失[1],也有中国专家认为该病毒可能转为慢性,长期存在于人类社会[2]。
计算机病毒同样也存在变异性和传染性,它们会不断地自主攻击可访问的脆弱资产,进而作为中间宿主继续传播,所以,希望通过一次有效的防守解决某类攻击是不现实的。正如“植物大战僵尸”游戏一样,安全团队往往会遭遇一波接一波的试探和攻击。
例如2016年的首次打出超1Tbps DDoS攻击的Mirai恶意软件,至今还能发现来自其变种的攻击。我们的物联网威胁主动捕获系统一直能捕获到攻击者利用N-day漏洞的探测,各大恶意软件家族的僵尸网络始终活跃。
而在持续高级威胁的场景中,攻击者也会持续侦查、渗透和控制内部资产,更不可能说发现攻击阻断就算大功告成了,相反要考虑对所有受影响和可能受影响的资产进行排查,复盘攻击路径。
总之,战役是短期就见分晓的,战争是长期较量的。面对各种网络攻击,安全团队不能怀有“毕其功于一役”的想法,攻防是长期、持续、拉锯的。
举措:持续性的风险评估和缓解
安全对抗是持久战,是一个此消彼长的动态过程。安全防护的聚焦点是资产所面临的风险,风险值受各种因素的影响,攻击者能力、不断出现的漏洞、时刻变化的业务、部署的安全机制和策略变化,诸如此类。虽然某刻上述因素综合而得的资产风险很低,但随着时间推移,其风险值会不断变化,攻击者如果利用其中某个时间窗口的防守方懈怠,就有可能得手。
因而,Gartner所提的自适应安全理念中的核心是CARTA(Continuous adaptive risk and trust assessment),即对当前的风险和信任平衡做持续的自适应评估。所谓风险,就是业务出问题的可能性,而所谓信任,就是业务正常运行的置信度,显然无论在疫情的场景,还是安全运营的场景,两者都是动态变化的,只有不松懈地对可能新出现的脆弱性和威胁保持警惕,才能有信心应对第二波、第三波乃至更多的挑战。
三、边界和控制策略
反思:”屯重兵于边境、拒敌以国门外”不可靠
长城名列世界七大奇迹,中国古代第一军事工程,在各朝国防中扮演了非常重要的角色;而在欧洲,具有代表性的就是巍峨耸立的城堡。似乎,最佳御敌之术就是“城防”,即依靠城高池深,让敌人无法靠近。这种思路,不仅仅存在物理世界中,还更广泛地影响了人们应对危机的应对思路,包括疫情应对、网络安全,均是如此。
但纵观历史,敌人绕过长城、收买内奸打开城门的案例屡见不鲜。本次疫情又贡献了一个反例。虽然美国早在2月初就宣布对曾经到过中国的非本国公民关闭边界,又于3月11日对欧洲推出旅行禁令,但不包括英国。而英国开始采取群体免疫导致疫情扩散,从图2看到英国[4]和美国[5]自三月中旬之后死亡案例不断上升,可以从侧面看出,美国对中国建立边界也许没错,但却忽视了病毒从其他国家入侵的途径。正如1940年德国绕开马奇诺防线,从法比边界突入法国,可以说历史不断在重演。
(a) 英国的新增新冠确诊数
(b) 美国的新增新冠确诊数
图2 英国和美国的新增新冠确诊数
回到网络安全,以防火墙、入侵检测防护系统、杀毒软件为基础打造的网络安全体系早已抵御不了零日攻击,更不用说装备先进武器库的国家级支持的高级威胁。早在2015年的RSA大会的,Amit的主题演讲“Escaping security’s dark ages”中就提到,以城防为基础的被动防御已经过时,攻击者可以用各种方法绕过我们的防守。虽然安全界不断提出各种技术,然而数据泄露和攻陷事件层出不穷,可以说那段时间是“黑暗时代”。
举措:重构边界和信任模型
首先,将危险因素隔离永远是我们在处置不明威胁的第一思路,所以,边界的概念本身没有问题,但问题的核心是:边界应该部署在哪里,边界用来防谁?无论是敌军绕过边界,还是内部人破坏边界,其本质是边界没有随着当前的态势变化,前者是边界没有随着敌方运动而调整,后者是边界防的对象发生了变化,所以,要突破 “黑暗时代”,就需要构建一条能够动态部署在己方和敌方之间的边界。
具体的,新的边界应该有下列特点:
第一,边界粒度要足够细、随时紧贴要防御目标或敌军个体。在疫情场景下,我们不仅能对国境线进行隔离,还能对城市、街道、小区、家庭,甚至个人都能画出一条边界,即便在局部有确诊、无症状感染者、密切接触者,都能可靠地就近隔离,而不影响其他正常人的生活。在网络安全场景下,当发现可疑告警,可以对相关的高风险网络、主机、应用进行隔离,以保证单个恶意点不会扩散到更大的范围。
通常我们把这种技术叫做微隔离(Micro-Segmentation),它最早出现在云计算系统中,通过NFV和SDN的技术容易实现细粒度的隔离和访问控制,随着5G、边缘计算和SDWAN地进一步普及,相信该技术会越来越多的应用于传统环境中。
第二,边界线能够随时调整,紧跟正常人群(业务)和异常人群(攻击者)的轨迹。边界上的策略根据上下文可以随时更新,在访问者或被访问对象发生变化时可及时调整访问规则。
在疫情场景中,我国创造性的推出了统一的健康码机制,每个人的安全码对应了高中低三种危险等级,而这个等级,又跟其所在地(固有属性)、14天行为轨迹(动态属性)关联,可以反映了个体人自身的威胁度。当然,前述的每条边界的粒度不一样,遵从的策略也不同,比如每个小区的策略分别继承街道、区县、省市、国家的策略,形成小区策略后,将身份验证结果、健康码、行程卡、测量温度等作为输入,最终才得到“是否允许通过”的规则。一旦访问者的体温异常、或所在地变成高风险区域,小区最终的动作很可能就是“不得进入”。可见,这一条条不可见的边界,隔离了大量存在风险的人群,限制了其行动范围,帮助我国疫情迅速下降。
回到网络安全,网络访问是基于网络标识(IP、MAC),所以传统防火墙的规则也是基于网络标识,而非访问主体和被访问客体的身份标识,所以随着业务迁移、攻击者获得跳板资源,很可能就绕过了防火墙的现有规则。可以说这是计算机网络应用层设计的“原罪“。现在一些通过标识寻址等研究,也是期望改变,但考虑到既有TCP/IP的兼容性,进展较缓。然而,网络攻击不会变缓,相反还在加剧。因而,重构传统的网络层访问控制和隔离已经刻不容缓,近年来,业界越来越多地在探讨零信任(Zero-Trust)的概念,如CSA提的软件定义边界,还有Google的BeyondCorps,都是体现零信任理念的技术路线。零信任体系需要对以往的网络访问机制、访问控制模型进行较大调整,所以对访问者和业务有明显影响,因而对其应用产生了很大挑战。当然看到疫情下动态准入机制表现出的良好效果,其前景可期。
四、账面安全 vs 实际安全
反思:“检查越少,报告越少“的思路行不通。
关于这一点,有两个反例:一例是日本,在疫情初期,日本考虑到马上要举办的奥运会,不宜渲染本国确诊病例过多,采取了被动式应对方式,例如只检测重症患者。所以其公开结果跟韩德等国明显不同,被检测人数和确诊数太少,但阳性比例太高。东京庆应义塾大学对因非新冠病毒相关疾病入院的患者进行了PCR检测,研究发现其中6%对新冠病毒呈阳性反应[6]。第二例是美国,5月11日数据显示在40多个州正处于封闭状态的情况下,全美仍没有足够的检测能力,人均检测水平低于意大利、德国、冰岛等国[7]。而在4月更早的“新冠肺炎追踪项目”表明全美共检测357万人中阳性率达到了20%[8]。
如此高的阳性率,表明疫情早已开始社区传播,并且没有在官方的掌控中,这可能会让疫情持续非常长的时间,造成更严重的影响。虽然表面上看检测数越少,阳性绝对数越少,但其背后未知的阳性患者传播必然会造成更多的严重案例。
作为对比,国内武汉前期因检测能力不足,也同样是确诊数少,但疑似病例激增不下,医院不堪重负。但2月中旬武汉将将临床诊断纳入确证方式,2月13日确诊数激增1.4万人,见图3。虽然确诊数增加,但整体更加透明,数据更加准确可靠,后续的隔离、治疗措施更加有效。后来随着核酸检测能力提升,全国执行“应检尽检、愿检尽检”策略,整体每日确诊数随后迅速下降[9]。
图3 中国新冠确诊数变化图
在网络安全领域,绝不能因为当前风平浪静就认为一切安好,不设防就没有安全事件,看似安全,但可能却是暗潮汹涌。例如,老旧的工控系统,一是部署安全机制困难,二是部署上后就会出现告警,不易处理,但不能为此就裸奔,如乌克兰、委内瑞拉等国严重的安全事故就是明证。
此外,部署了若干安全机制但缺乏协同机制,也会存在问题。单个安全机制只检测或应对某个方面的威胁,无法全面、一致地归纳观察到的事件,导致运营者无法对当前态势做出准确的判断。
举措:构建全面深度的感知能力
没有完美的犯罪,攻击者在行动的时候,总会与环境发生交换。构建感知能力,就是需要看到、听到、嗅到上下文的变化,从而感知到潜在的威胁。当发现威胁时,应具备全局态势感知、威胁定位、后果预测的能力。
越来越多的专家在提“可视度”(Visibility),当我们看不清自己的资产在哪里,有什么脆弱性,也不知道敌人在什么地方,攻击处于哪个阶段,目标是什么,就无从谈起应对。越是复杂的战场,侦察兵越重要;越是黑暗的环境,铃铛和热成像仪越重要。
在实践中,如借助各种网络流量统计信息(Netflow、OpenFlow等)获知全局网络访问行为,通过深度包检测、终端行为检测等获知具体网络和终端行为,通过聚合、关联形成全局一致的分析结果,提供从浅到深按需的可视能力。
进一步,通过主动防御机制,如通过欺骗(Deception)技术,在全域部署各类诱饵,监控非寻常的访问行为,诱使攻击者暴露行迹,判断其身份和行动目的。
五、流调vs朔源
反思:是蝙蝠、水貂,还是三文鱼?
十多年前,非典来去无踪,没有人能说清这场瘟疫是怎么发生的,后历时15年,中科院武汉病毒所寻遍28个省市,终于在云南发现一处蝙蝠SARS样冠状病毒的天然基因库,揭示了非典的天然宿主就是蝙蝠。然而,本次新冠疫情又最早在武汉爆发,病毒源于自然还是实验室,一时甚嚣尘上。通过专业的基因序列分析,世卫组织确认新冠病毒源于自然。但新冠病毒的中间宿主和天然宿主是什么,蝙蝠、水貂,或是6月北京传出的三文鱼(几乎不可能)?具体的传播路径还在确认中。
流行病学调查(简称“流调”)是一门专业的学科[12],在追踪病毒起源、从根本上解决疫情有重要的作用。可惜的是,在武汉疫情早期,3月就对华南海鲜市场进行消杀,造成流调无法溯源、跟踪和监测。
举措:全面的取证朔源
6月北京的疫情,最早是一名西城区男性发病,经过流调,在新发地市场的三文鱼案板上发现病毒,相关货物来自海鲜市场。政府随即排查全部进出、经过新发地市场的人员,对二十万人进行核酸测试,并对其中所有阳性案例进行流调,确认北京所有案例均有新发地活动史,最终得出疫情在早期及时发现,没有造成广泛传播的结论。另外,早在2月天津宝坻区某百货大楼出现一起聚集性疫情,疾控中心经过缜密排查和分析,理清了传染路径和影响范围,堪称教科书级别的流调[13]。
在网络安全领域,取证(Forensics)也是一个细分领域,通过对计算机系统和网络流量中的电子证据进行保护、收集、验证、鉴定等。取证溯源属于事后,找到攻击者入侵的时间轴、攻击手法、影响范围等,进而采取相应的行动,例如恢复业务、升级补丁、完成报告。除了系统恢复外,取证溯源在司法实践中有非常重要的作用,应得到管理层的重视。
六、等等就好党 vs 撸袖就干党
反思:如不掐断病毒早期传播就失去先机
如前所述,生物病毒和计算机病毒在传播方面有很多相似性,比如从统计学上看其传播速度是指数级的,如果不在早期干预,很可能会在一段时间后进入爆发期,彼时局面就无法收拾了。
美国的疫情就经历了两个阶段,第一阶段是4月前,可以说这段时间政府的动员能力明显不足,期望等到夏季“病毒会奇迹般地消失”,导致确诊数呈指数级增加。有批评指出美国政府的动作太慢,浪费了中国赢得的时间。在经历了深刻教训之后,美国疾控中心提出了“压平增长曲线”(flatten the curve)的倡议[14],即通过主动干预,大幅减少感染者,如图4(a)所示。在4月1日之后进入第二阶段,多地颁布居家隔离令后,增速明显放缓,如图4(b)所示。
病毒传播是符合统计学模型的,本质上这是一个科学问题,因而不施加干预是等不到所谓的奇迹的。依靠气候环境变化等不可控的“等等就好党”不过是在依靠未经证明的美好愿望作为获胜砝码,与古代祭天驱瘟的做法并无二致。在真正的危机前面,应该“撸起袖子加油干,把失去的时间抢回来”。
(a)经过干预后的压平曲线
(b) 美国两个阶段的确诊增速图
图4 确诊数变化图
考虑到我们提到的第一项平衡经济发展和公共安全投入,这条曲线不太可能直接压平成直线,但无疑措施越有力越精准,曲线陡度会越小。
回到网络安全,考虑在没有主动免疫、没有补丁升级机制的场景下,受蠕虫攻击的节点数量也急剧增加,但最终不会回落,只会稳定在所有脆弱节点数;当存在补丁修复的节点时,该曲线会收敛到一条直线,即所有脆弱节点都被感染[15],如图5所示。更严峻的是,计算机蠕虫的效率更高,通过自动化的手段,向所有网络可达的节点发动攻击并传播病毒、执行恶意代码。因而计算机病毒的感染者曲线会比生物病毒的更陡,传播速度更快。
图5 没有安全机制的感染节点时间变化示意图
安全团队在发现威胁时,不仅需要进行处置,回落到图4(a)的纯色填充的曲线;还需要尽快处置,尽量压平曲线,即图4(a)的阴影线填充的曲线。
举措:兵贵神速,自动化响应
压平曲线的关键是尽早响应处置,而响应的第一步是根据当前态势分析攻击行为,溯源评估受损情况,预测攻击者下一步动作。应对主要为两方面:一方面阻断攻击,延缓受害节点的增速,减少受害节点数;另一方面尽快恢复业务,减少损失。总体而言,通过人工响应的方式,可以将图5的受害者曲线右边压低,如图6的蓝色曲线所示。
图6 通过自动化响应压平感染曲线
更进一步,通过自动化响应压平整条曲线,即图6中的红色曲线。早在2013年,Gartner提出了软件定义安全的理念,借鉴软件定义网络,通过控制与数据分离,提升整个安全体系的敏捷性和灵活性。在这个思路启发下,2016年Phantom的自动化编排系统得到业界认可,后来相关的技术发展为安全编排自动化响应SOAR。
自动化的安全编排引擎可在秒级部署安全资源、快速调度可疑流量、灵活调整安全策略,即便攻击者非常迅速,防守者也可以快对快,隔离可疑业务、阻断恶意攻击、恢复受损业务。
结语
疫情还在继续,美国在恢复经济后,6月26日的单日新增病例回到疫情最严重时的高值;而中国北京的疫情也仍在发酵,但尚在可控范围内。可见,与生物病毒的战争将会旷日持久,正如网络攻防永远不会存在终点。只有多总结与病毒战斗的得失,不断调整应对策略,方能掌握主动,立于不败之地。
致谢
图6的制作是由张胜军完成,在此致谢。
参考文献
[2] https://world.huanqiu.com/article/3x7Ezm6ETNY
[3] https://www.bbc.com/zhongwen/simp/world-51329860
[4] https://www.worldometers.info/coronavirus/country/uk/
[5] https://www.worldometers.info/coronavirus/country/us/
[6] https://www.bbc.com/zhongwen/simp/world-52484609
[7] https://cn.chinadaily.com.cn/a/202005/12/WS5eba6e1ca310eec9c72b86b3.html
[8] http://world.qianlong.com/2020/0420/4016055.shtml
[9] https://www.worldometers.info/coronavirus/country/china/
[10] https://tech.sina.com.cn/d/f/2020-01-20/doc-iihnzhha3638660.shtml
[11] http://language.chinadaily.com.cn/a/202006/19/WS5eec0ba3a31083481725413b.html
[12] https://www.zhihu.com/question/31346652/answer/52049615
[13] http://www.bjd.com.cn/a/202002/03/WS5e37d067e4b002ffe994092e.html
[14] https://www.livescience.com/coronavirus-flatten-the-curve.html
[15] http://www-unix.ecs.umass.edu/~lgao/paper/AAWP.pdf
[16] https://www.bbc.com/zhongwen/simp/business-51731992
[17] https://wjla.com/news/business/target-ceo-fired-following-last-year-s-security-breach-102788