1.1.3 网络系统脆弱的原因

1.开放性的网络环境

网络空间之所以易受攻击,是因为网络系统具有开放、快速、分散、互连、虚拟、脆弱等特点。网络用户可以自由地访问任何网站,几乎不受时间和空间的限制,信息传输速度极快,因此,病毒等有害的信息可在网络中迅速扩散开来。网络基础设施和终端设备数量众多,分布地域广阔,各种信息系统互连互通,用户身份和位置真假难辨,构成了一个庞大而复杂的虚拟环境。此外,网络软件和协议之间存在着许多技术漏洞,让攻击者有了可乘之机。这些特点都给网络空间的安全管理造成了巨大的困难。

Internet是跨国界的,这意味着网络的攻击不仅可以来自本地网络的用户,也可以来自Internet上的任何一台机器。Internet是一个虚拟的世界,所以无法得知联机的另一端是谁。

网络建立初期只考虑方便性、开放性,并没有考虑总体安全性。因此,任何个人、团体都可以接入。网络所面临的破坏和攻击可能是来自多方面的。例如,可能是对物理传输线路的攻击,也可能是对网络通信协议及应用的攻击;可能是对软件的攻击,也可能是对硬件的攻击。

2.协议本身的脆弱性

网络传输离不开通信协议,而这些协议也有不同层次、不同方面的漏洞。针对TCP/IP等协议的攻击非常多,在以下几个方面都有攻击的案例,如表1-1所示。

表1-1 针对TCP/IP等协议的攻击

3.操作系统的缺陷

操作系统是计算机系统的基础软件,没有它提供的安全保护,这些计算机系统及数据的安全性都将无法得到保障。操作系统的安全性非常重要,有很多网络攻击方式都是从寻找操作系统的缺陷而入手的。操作系统的缺陷有以下3个方面。

(1)系统模型本身的缺陷。这是系统设计初期就存在的,无法通过修改操作系统程序的源代码来弥补。

(2)操作系统程序的源代码存在Bug(程序错误)。操作系统也是一个计算机程序,任何程序都会有Bug,操作系统也不例外。例如,冲击波病毒针对的就是Windows操作系统的RPC缓冲区溢出漏洞。那些公布了源代码的操作系统所受到的威胁更大,黑客会分析其源代码,找到漏洞并进行攻击。

(3)操作系统程序的配置不正确。许多操作系统的默认配置安全性很差,进行安全配置比较复杂,并且需要一定的安全知识,许多用户并没有这方面的能力,如果没有正确地配置这些功能,就会造成一些操作系统的安全缺陷。

漏洞的大量出现和不断快速增加补丁是网络安全总体形势趋于严峻的重要原因之一。不仅仅操作系统存在这样的问题,其他应用系统也一样。例如,仅2020年4月,Microsoft就发布了113个漏洞补丁,涉及产品涵盖Windows、Internet Explorer、Office和Web Apps等。在实际的应用软件中,可能存在的安全漏洞更多。

4.应用软件的漏洞

操作系统给人们提供了一个平台,人们使用最多的还是应用软件,随着科技的发展,工作和生活对计算机的依赖越来越大,应用软件也越来越多,软件的安全性也变得越来越重要。

现在许多网络攻击利用了应用软件的漏洞。应用软件有这样的特点:开发者众多、个性化的应用、注重应用功能等。

如果软件在设计和实现时因安全防护考虑不周而被黑客利用,黑客就能达到获得隐私、窃取信息,甚至破坏系统的目的。例如,软件使用明文存储用户口令时,黑客可以通过数据库泄露直接获取明文口令;软件存在缓冲区溢出漏洞时,黑客可以利用溢出攻击而获得远程用户的系统权限;软件对用户登录的安全验证强度太低时,黑客可以假冒合法用户登录;软件对用户输入没有严格删除时,在被黑客利用后可能会执行系统删除命令,从而导致系统被破坏。对系统维护的工程师来说,应用软件维护的难度也很大。

5.人为因素

许多公司和用户的网络安全意识薄弱、思想麻痹,这些人为因素也影响了网络的安全性。