1.总体来讲,计算机与网络漏洞的存在是不可避免的,其中根本的原因包括:
(1).计算机所采用的冯诺依曼体系结构
(2).网络通信协议TCP/IP协议
(3).新的应用和技术,需求等带来技术上上的漏洞和挑战。
2.对于第一点,冯诺依曼体系结构之所以会产生漏洞是因为冯诺依曼计算机的如下工作原理造成的:
(1)计算机内的指令和数据均是由二进制来表示的,根据控制器判断当前的指令周期来决定二进制是指令还是数据,这就意味着,
指令可以成为数据,数据也可以称为指令。病毒感染就是通过外来数据破坏原有指令,使得原有指令的功能遭到破坏。而木马植入
和自修改就是入侵者将自己的二进制代码导入计算机中,并当作指令来执行称为恶意代码。
(2)冯诺依曼机将指令和数据编成程序存储到计算机内,由控制器控制自动执行。这种模式使得程序执行起来存在依赖关系,执行
数据的操作可以影响到指令和控制。所以造成数据区或堆栈区的越界经常被作为攻击者控制指令的手段。
(3)程序依据代码设定的逻辑,接受外部输入进行计算,并输出结果。这就使得程序的执行是根据编码逻辑和外部输入数据来选择
路径。业务逻辑漏洞和后门就是攻击者通过输入数据出发特定的程序执行分支来实现。
TCP/IP协议栈是造成网络漏洞的主要原因:
(1)TCP/IP设计之初主要强调的是互联互通,好多协议的内容并考虑安全因素。
(2)TCP/IP协议栈的实现是由程序员完成的,有可能有意无意的引入漏洞。
(3)网络技术的高复杂性决定不能通过技术手段来发现所有的漏洞。
针对第三点,一些新的应用和技术的出现包括:
(1)互联网,移动互联网,物联网的发展使得网络终端设备的数量成几何倍增长,包括个人PC,pad,smart phone,computer等以及物
联网中每个设备所对应的网络终端。
(2)工控系统全面联网,而设计之初并未考虑网络安全的威胁,核心网IP化使得国家的基础容易成为网络攻击的目标。
(3)数据挖掘,云计算,大数据等技术的发展使得攻击者可以获得大量的数据,并进行用户资料挖掘从而实现大批的攻击。
(4)社交网络的发展使得攻击者可以获得详尽的人际关系图。