从今天起,咱们开始谈安全系统里最重要的要素“威胁”。《安全的本质到底是什么?》的文章中提出了“安全的本质是威胁对抗”,但是威胁是什么?这个看似极简单的问题,事实上安全行业还没有统一答案。
这里的“威胁(Threat)”跟“风险(Risk)”是安全行业里最常用的两个词汇,都是信息世界的“有害物质”。因为这两者有关系,因此在很多场景下,威胁和风险是混用的。例如,有人把没发生的威胁称之为风险,这种用时间尺度来区分定义的说法是有问题的。举个例子,勒索病毒在没有爆发的时候它都应该是一种威胁,就像原子弹,不管它有没有被引爆,都应该是威胁一样。
咱们再看看微软的定义:威胁是指一个系统被危害的可能性[1]。后来微软研究员Talhah Mir又补充做了一个定义:威胁是攻击产生的、攻击是漏洞产生的,前提是在它们还没有被缓解之前[2]。
通过微软的定义可以看到,微软认为的威胁就是我们常说的“黑客攻击”,这种定义其实也不完整。举例来说,计算机病毒也是一种威胁,但它并不是一种攻击;而像DDoS这种典型的攻击也并不是由漏洞产生的。它们都只是利用了计算机系统的特有机制而已。你仔细想想,威胁和风险其实并不在一个维度上。威胁是一个定性的概念,而风险是一个定量的概念。
对威胁的正确认知,是首先要对威胁进行分类;而对风险的正确理解,则是要对风险进行分级。也可以把风险当成是对威胁进行定量分析的工具,或者把风险当成是威胁产生的其中一个后果。因此我们可以把风险定义为:小概率发生的或低等级的威胁事件。
讲清楚了威胁跟风险的关系,下面的篇幅里,则要讲讲什么是威胁?威胁的本质又是什么?计算机科学界的先驱维纳,利用生物的信息和反馈机制开创了“控制论(cybernetics)”,成了人工智能的理论基础。如果从智能角度来定义:威胁是一种恶意智能。它可以是根据当前的环境情况,自动进行判断和感染的计算机智能—病毒;也可以是不断发现系统脆弱性、并突破系统脆弱性的人类智能—黑客;还可以是未来根据智能算法进行自我演化的人工智能—黑AI。
如果我们再深究一下计算机智能,事实上它是计算机科学里最核心的东西—“算法(Algorithm)”。算法就是我们常说的计算机程序的构成要素,它本质上是一个逻辑系统:给定信息的输入、能产生新的信息输出。
因此,威胁的本质其实是:一种能够产生破坏行为的算法。这个算法可以由程序自动执行,也可以由人来手工执行。如果再仔细想想,算法就像生物界里的DNA一样,输入和输出都可以无穷变化,但是执行的逻辑总保持一致。因此可以说:算法是信息世界的DNA,而DNA就是生物世界的算法。
如果想了解更多网络安全人和事,欢迎搜索微信公众号:锐安全,或下方扫码进入:
用户评论