行业新闻

零信任架构1.0的开始:从“漏洞为王”到“携漏生存”

零信任架构1.0的开始:从“漏洞为王”到“携漏生存”

零信任架构是美创数据安全实践的核心遵循思想。美创从数据不应该自动信任任何人的基本观点开始,从2010年开始实践,在2015年左右正式形成了零信任架构1.0版本,在美创科技的每个数据安全产品中无缝落地。在经过5年的成熟实践之后,近期美创科技零信任架构即将升级为2.0版本,以更好的满足数据安全和网络安全的诉求。

我们在上篇文章中已经对零信任1.0架构四大基本原则之一的“灯下黑”进行了详细探讨(点击阅读)。与狼共舞,带毒生存是零信任架构四大基本原则之二,也是最核心的原则。而携漏生存是与狼共舞,带毒生存的一种表现形态,今天我们就以此出发进行探讨。从漏洞为王到携漏生存是一篇旧文,但可以清晰的表达美创在零信任架构上的思考。


一、概述

网络安全史从某种程度上是一部漏洞(包括弱配置)攻防史,漏洞在网络安全史上一直处于核心地位,无论是黑客还是白帽都以漏洞挖掘和利用(检测)能力作为其技术水平的重要标签。在年复一年的攻防拉锯战中,攻防双方的水平都在不断上升。非常遗憾的是,在这个过程中,作为真实利害方:最终用户的风险并未大幅降低,似乎安全漏洞越来越多,安全相关的成本费用也越来越高,安全风险反而越来越大。而作为这场拉锯战的另一个主角,软件开发商似乎也收益不多,开发的软件在安全性上也没有多大进步或者远远落后于攻防双方。在这个网络安全风险威胁越来越大的今天,我们来重新审视流行的“漏洞为王”的防御策略是否合适,也许到了需要改变防御思路的时候了。

 

二、近10年漏洞分布和发展

我们来看360CERT发布的一些漏洞统计报告:

image.png

近十年漏洞数量披露趋势 数据来源:360Cert


image.png

近十年单月漏洞数量披露趋势 数据来源:360Cert

 

从最近10年的漏洞披露趋势报告,我们很悲伤的发现,漏洞数量并没有因为我们的投资和努力而减少,反而在2017年出现披露漏洞的大幅度上升。2017年披露漏洞的大幅度上升,应该可以确定为由于2016年底和2017年度的勒索病毒大爆发,使各种漏洞阳光化,加速了漏洞披露的速度。

image.png

漏洞质量图 数据来源:360cert

 

从漏洞质量和利用效果分布来看,甚至也没有通过我们的努力降低高危漏洞数量。漏洞似乎完全脱离我们的努力我行我素,按照自己的节奏行动。当然同样可以看到2017年的爆发情况,这无非是因为勒索病毒的影响漏洞被阳光化了。

 

三、以漏洞攻防为核心的网络安全防御困境

从360cert 10年漏洞趋势发展报告可以明显的告诉我们当前的困境,这个时候你只能无助的感叹:道高一尺,魔高一丈。当然从乐观的来说,由于我们的有效防御迫使黑客们去寻求更多的漏洞以进行攻击,漏洞攻防是有效的。但是从悲观的角度来说,如果大家都不做太多防御,其最终结果是否也是类似的。

 

我们可以简单的分析一下其中的原因:

1.    攻击分析思路决定了防御方的弱势

“不知攻焉知防”是当前以漏洞攻防为核心的网络安全体系的核心观点或者指南之一。从简单的攻防战役来讲,具有绝对的真理性,毕竟知己知彼,百战不怠。但是网络攻防和一般的战场战役不同,你不知道你的攻击者是谁。古语云:人心难测,这还是建立在你知道对方是谁的情况下。当你不知道对方是谁,又需要去揣摩对方的想法,有所纰漏难以避免。攻击分析主导的网络攻防注定防御方是处于弱势地位,注定了必需存在一定概率的牺牲,甚至是大概率的牺牲才可以达到“知攻”的目的,然后才能改善“知防”。

2、网络攻防力量对比不均衡

在真正的战场上,只有绝对的力量才是制胜法宝,以少胜多的案例在历史上极少发生才会成为经典。在网络攻防战场上,黑客方占据着绝对的优势力量,是白帽、安全厂商、开发商和用户所无法匹配的。这种力量对比不平衡是有其深刻的内在动因:黑客是逐利的,巨大的利益可以聚集海量的资源。而作为防御方的白帽,开发商和最终用户则没有足够的利益驱动去完成这场对抗。我们以一个简单的漏洞发现为例子:黑客发现一个具有高利用价值的漏洞,其收益可以达到几百万甚至几千万,同样这个漏洞被白帽发现则收益非常少,甚至是不可兑现的。

3、软件代码是“不完美”的人写的

构成应用程序的软件代码是人写的,是人写的代码必然会在代码中犯下很多错误。事实上,在软件开发实践中,代码不仅仅是人写的,而且绝大部分代码是由3年之内的年轻工程师写的,知识和经验上的缺乏必然使代码中充满漏洞。即使发现了漏洞,由于高昂的修复成本,很多时候软件开发商也缺乏足够的动力去修复相关的漏洞。

4、漏洞修复和应急响应的成本极为高昂

对于很多用户而言,很多漏洞即使已经发布了补丁也是不可修复的。比如数据库漏洞,由于修复漏洞内置的巨大业务风险,使很多运行中的数据库不敢去应用补丁修复漏洞。另外由于网络对抗的极强专业性和巨大成本消耗,很少有机构具有快速反应和入侵对抗能力。

5、几乎不可防御的后门

很多软件会出于各种不同的目的预留后门,也许这些后门预留的初始目的并不是恶意的。但是随着时间的推移,这些后门可能会被坏人掌握。甚至开发商有可能由于各种不同原因,从一个不带恶意目的的后门最终演变为一个恶意攻击的后门,毕竟现在无害并不意味着未来无害。

      

四、未来的漏洞防御之道

在信息化和数字化渗透到日常生活每一个角落的今天,网络安全风险已经成为了一支高悬的达摩克利斯之剑,不知道哪天会彻底摧毁我们的生活。为了我们的生活可以延续,以漏洞为中心的攻防之战需要延续。在延续漏洞攻防的同时,我们也可以想想新思路新方法:我们需要承认漏洞存在是一种客观现实,是不可消灭的。即使当前漏洞全部修复也并不意味着没有漏洞,只是没有被发现而已。甚至漏洞已经存在于黑客的武器库之中,只是没有被曝光而已。从这个角度出发,也许和漏洞共存共生(携漏生存)是一种可以选择的方案。

 

如何携漏生存,我们可以从以下几个方面去考虑:

1、低风险的自动化或者半自动化补丁应用机制

在企业级应用中,打补丁总是一门高风险的专业活。我们需要一种低风险的补丁自动化或者半自动化应用机制,至少对于高危的漏洞补丁提供。通过自动化补丁机制可以帮助用户及时止损,避免风险敞口不断扩大。在补丁应用实践中,虚拟补丁作为补丁应用的快速响应具有比较好的价值。

2、防止应用程序被静态或者动态代码注入

可以采用签名、md5校验等方式来防止应用程序被注入。一个无法被静态和动态代码注入的应用程序,攻击者只能通过应用自身的开放接口或者漏洞来进行攻击和伤害。

3、控制漏洞危害范围

所有的漏洞都由应用程序产生,操作系统,数据库从本质上只是一个复杂的应用程序而已。我们可以考虑隔离漏洞影响,让漏洞影响不会脱离应用软件本身。简单点说,一个应用程序的漏洞不会成为黑客的媒介,危害到其他应用程序和数据,让损害范围保持在漏洞应用程序本身。

4、业务逻辑伤害控制

在控制了漏洞危害范围之后,所有伤害将会局限于应用程序自身伤害和应用程序业务逻辑伤害。对于业务逻辑伤害则可以通过Web防火墙和数据库防火墙等安全措施来加以控制和消除。


来源:美创科技 柳遵梁


关闭