第10章 信息安全 信息技术基础
本章教学意义 随着信息化进程的深入,越来越多的人受到计算机病毒及网络黑客侵袭,计算机的安全问题也成为亟待解决的问题。这对于国家安全、经济发展、社会稳定和人们的日常生活有着极为重要的意义。所以,每个当代大学生都要学习和掌握一定的信息安全与管理知识。本章就针对信息安全威胁和防护措施给以介绍。
本章目录 10.1 信息安全概述 10.2 计算机病毒 10.3 黑客 10.4 信息安全技术简介
10.1信息安全概述 10.1.1信息安全基本概念 所谓信息安全,是指为信息处理系统建立和采取的技术和管理的安全保护措施,以保护计算机系统中的硬件、软件及数据,防止其因偶然或恶意的原因而使系统或信息遭到破坏、更改或泄漏。
信息安全的目标 信息安全的目标就是要保证信息系统保密性、完整性、可用性、可控性等特征不被威胁和破坏。 保密性是指信息不泄露给非授权的用户 ; 完整性是指数据不得非法篡改; 可用性是指被授权的实体需要存取信息时可以存取信息; 可控性是指对信息的传播及内容具有控制能力。
信息安全的内容 信息安全的内容包括实体安全、运行安全、信息资产安全和人员安全等几个方面 : 实体安全就是计算机设备、设施及其他媒体免遭自然灾害和其他环境事故破坏的措施和过程; 运行安全是一套保护信息处理过程安全的措施,包括风险分析、审计跟踪、备份与恢复、应急等内容;
信息资产安全是指文件、数据、程序等防止被故意或偶然的非授权泄露、更改、破坏或信息被非法控制,包括操作系统安全、数据库安全、网络安全、病毒防治、访问控制、加密、鉴别等方面; 人员安全主要是指信息系统使用人员有较强的安全意识、法律意识和安全技能。
10.1.2信息安全威胁的来源 1.人为的无意失误:如操作员安全配置不当造成的安全漏洞,用户安全意识不强,用户口令选择不慎,用户将自己的帐号随意转借他人或与别人共享等都会对信息安全带来威胁。
2.人为的恶意攻击:这是计算机网络所面临的最大威胁,敌手的攻击和计算机犯罪就属于这一类。此类攻击又可以分为以下两种:一种是主动攻击,它以各种方式有选择地破坏信息的有效性和完整性;另一类是被动攻击,它是在不影响网络正常工作的情况下,进行截获、窃取、破译以获得重要机密信息。这两种攻击均可对计算机网络造成极大的危害,并导致机密数据的泄漏。
3.软件的漏洞和“后门”:网络软件不可能是百分之百的无缺陷和无漏洞的,然而,这些漏洞和缺陷恰恰是黑客进行攻击的首选目标,曾经出现过的黑客攻入网络内部的事件,这些事件的大部分就是因为安全措施不完善所招致的苦果。另外,软件的“后门”都是软件公司的编程人员为了方便软件测试而设置的,一般不为外人所知,一旦“后门”洞开,由其造成的后果将不堪设想
10.1.3信息安全策略 全局和总体的信息安全策略应该包含以下三部分: 1.严肃的法律保障:面对日趋严重的网络犯罪,必须建立与信息安全相关的法律、法规。我国已经颁布《全国人民代表大会常务委员会关于维护互联网安全的决定》、《中华人民共和国计算机信息系统安全保护条例》、《中华人民共和国电子签名法》等多种与信息安全相的法律、法规,将对网上计算机犯罪起到极大的遏制震慑作用。
2.先进的安全技术工具:先进的安全技术是信息安全的物质保证。用户对于自身面临的威胁进行风险评估,决定其所需要的安全服务种类,选择相应的安全机制,集成先进的安全技术,形成全方位的安全系统。
3.严格的安全管理措施:严格的安全管理是信息安全的决定性因素,信息系统的运营者必须建立相应的信息安全管理办法,加强内部管理,建立安全审核和跟踪体系,加强安全培训,提高整体信息安全意识。
10.2计算机病毒 10.2.1计算机病毒的定义及危害 计算机病毒定义:所谓计算机病毒,是指编制或在计算机程序中插入的破坏计算机功能或者毁坏数据,影响计算机使用,并能自我复制的一组计算机指令或程序代码。
计算机病毒的危害 2007年春天“熊猫烧香”病毒肆虐互联网,计算机感染这一病毒后,所有程序图标变成熊猫烧香图案,并使它们不能应用。在两个多月的时间里,数百万电脑用户被卷将进去。仅从2006年11月至年底短短一个多月的时间,该病毒就变种将近30余次,造成全国数百万台计算机被感染和破坏,影响恶劣、损失巨大,造成的经济损失达76亿元 。
2000年Love bug(“爱虫”病毒)也通过电子邮件附近传播,其传播速度和范围让安全专家吃惊。数小时之内,这个小小的计算机程序征服了全世界范围之内的计算机系统,对全球包括股票经纪、食品、媒体、汽车和技术公司以及大学甚至医院在内的众多机构造成了负面影响。
10.2.2计算机病毒的分类及特征 1.计算机病毒的分类:目前存在的已知病毒种类繁多,但根据其属性总体上可分为以下几类:引导扇区病毒、文件病毒、特洛伊木马病毒、宏病毒、逻辑炸弹和蠕虫病毒。
1.计算机病毒的分类 (1)引导扇区病毒:能够替换计算机启动时要使用的引导扇区程序,当计算机运行受感染的引导程序时,实际上使用的是改变之后的、受感染的引导程序,这样计算机便把病毒加载到了内存之中。计算机病毒一旦进入内存,便会传染到插入该计算机中的任何磁盘上。
(2)文件病毒:文件病毒依附于程序文件上或者替换掉原来的文件,这样当其他文件访问这个文件时,病毒便乘机传播过去。
(3)特洛伊木马病毒:该病毒隐藏在一个正常程序之中,或者干脆化装成看上去似乎合法的程序。它驻留在目标计算机里,可以随计算机自动启动并在某一端口进行侦听,在对接收的数据识别后,对目标计算机执行特定的操作。并因此而用一个希腊神话命名这种病毒。
(4)宏病毒:宏病毒使用像Word、电子表格之类的应用程序的宏来隐藏病毒代码,当用户打开一个感染宏病毒的文档时,宏病毒便会加载到内存之中。同样,类似打开文档之类的操作也会激活宏病毒。应当注意,宏病毒制造者常常把病毒隐藏于模板之中,因此它将感染所有用模板创建的文档。
(5)逻辑炸弹:大多数病毒,在计算机访问或运行染毒文件或程序时就立即发作。也有一些病毒,需要特定的条件才能触发,称作逻辑炸弹或时间炸弹的病毒就是如此。
(6)蠕虫:另一种恶性程序叫蠕虫。尽管经常把它叫做病毒,但蠕虫与病毒有所不同,它不把本身程序依附在其他程序之上,而是不断地把本身程序复制到内存中或硬盘上,直到占满所有存储空间为止。这时计算机被迫停止工作。有的蠕虫程序还会把自身复制到网络中的其他计算机上去。
2.计算机病毒的特征 (1)传染性:传染性是计算机病毒的重要特征。计算机病毒一旦进入计算机并得以执行,它就会搜寻符合其传染条件的程序或存储介质,并将自身代码插入其中,达到自我繁殖的目的。而被感染的文件又成了新的传染源,在与其他机器或网络进行数据传送时,病毒会继续进行传染。
(2)破坏性:破坏性是绝大多数病毒的主要特点。主要表现在:占用CPU时间和内存开销,从而造成进程堵塞;对数据或文件进行破坏;打乱屏幕显示等。不同计算机病毒的破坏情况表现不一,有的干扰计算机的正常工作,有的占用系统资源,有的修改或删除文件及数据,有的破坏计算机硬件。
(3)隐蔽性:病毒一般是具有很高编程技巧、短小精悍的程序,通常附在正常程序中或磁盘较隐蔽的地方,用户难以发现它的存在,其隐蔽性主要表现在传染的隐蔽性和自身存在的隐蔽性。 (4)寄生性:病毒程序嵌入到宿主程序中,依赖于宿主程序的执行而生存,这就是计算机病毒的寄生性。宿主程序一旦执行,病毒程序就被激活,从而可以进行自我复制和繁衍。
(5)潜伏性:计算机病毒侵入系统后,往往不是立即发作,而是有一定的潜伏期。当满足病毒触发条件时便会发作。计算机病毒的种类不同,触发条件也不同,潜伏期也不一样。
(6)触发性:计算机病毒一般都设定了一些触发条件,如系统时钟的某个时间或日期,系统运行了某些程序,某些文件使用了一定的次数等。 (7)不可预见性:不同种类的病毒,它们的代码千差万别,且随着计算机病毒的制作技术的不断提高,使人防不胜防。病毒对反病毒软件永远是超前的。
10.2.3计算机病毒的传播方式 1.通过不可移动的计算机硬件设备进行传播,如计算机硬盘。 2.通过移动存储设备来传播,如软盘、光盘、USB闪存盘等。 3.通过计算机网络进行传播。这是目前病毒传播的重要途径。 4.通过点对点通信系统和无线通信传播。随着信息时代的发展,这种传播方式与网络传播方式所占比例会越来越大。
10.2.4计算机病毒的防范 对计算机病毒采取“预防为主”的方针,是简单、可行、而且有效。 1.在使用的所有机器上安装反病毒软件。 2.将不需要写入的软盘设置成写保护状态,以防止病毒的侵入。 3.只用硬盘来启动机器,如果必须用软盘启动,一定要保证系统盘是干净的,并要对系统盘进行写保护。
4.在使用任何一个软盘或者下载的软件之前,要对其检测,确认无毒后再使用。 5.对购置的软件,如果可能的话应做拷贝副本。工作时使用副本而不用原始盘,保证原始盘干净以备再用。 6.定期拷贝重要的软件和数据作为备份,以免遭受病毒侵害后不能恢复。 7.制订有关规章,避免无关人员接触系统,防止潜在的病毒罪犯。
10.3黑客 黑客一词,源于英文Hacker,原指痴于计算机技术、水平高超的电脑专家,尤指程序设计人员。但到了今天,黑客一词已被用于泛指那些专门入侵破坏系统和盗窃系统中有用数据的人。对这些人的正确英文叫法是Cracker,有人翻译成“骇客”。黑客主要是利用系统、协议及数据库等设计上的缺陷发起攻击。因此,要防止黑客攻击给系统带来损害,我们首先要了解黑客攻击的一般过程和攻击手段。
10.3.1黑客攻击的一般过程 1.信息的收集 信息的收集并不对目标产生危害,只是为进一步的入侵提供有用信息。黑客可能会利用下列的公开协议或工具,收集驻留在网络系统中的各个主机系统的相关信息: (1)TraceRoute程序能够用该程序获得到达目标主机所要经过的网络数和路由器数。
(2)SNMP协议用来查阅网络系统路由器的路由表,从而了解目标主机所在网络的拓扑结构及其内部细节。 (3)DNS服务器该服务器提供了系统中可以访问的主机IP地址表和它们所对应的主机名。 (4)Whois协议该协议的服务信息能提供所有有关的DNS域和相关的管理参数。 (5)Ping实用程序可以用来确定一个指定的主机的位置或网线是否连通。
2.系统安全弱点的探测 在收集到一些准备要攻击目标的信息后,黑客们会探测目标网络上的每台主机,来寻求系统内部的安全漏洞,主要探测的方式如下: (1)自编程序:对某些系统,互联网上已发布了其安全漏洞所在,但用户由于不懂或一时疏忽未打上网上发布的该系统的“补丁”程序,那么黒客就可以自己编写一段程序进入到该系统进行破坏。
(2)慢速扫描:由于一般扫描侦测器的实现是通过监视某个时间段里一台特定主机发起的连接的数目来决定是否在被扫描,这样黑客可以通过使用扫描速度慢一些的扫描软件进行扫描。 (3)体系结构探测:黑客利用一些特殊的数据包传送给目标主机,使其作出相对应的响应。由于每种操作系统的响应时间和方式都是不一样的,黒客利用这种特征把得到的结果与准备好的数据库中的资料相对照,从中便可轻而易举地判断出目标主机操作系统所用的版本及其他相关信息。
(4)利用公开的工具软件:像审计网络用的安全分析工具SATAN、Internet的电子安全扫描程序IIS等一些工具对整个网络或子网进行扫描,寻找安全方面的漏洞。
3.建立模拟环境,进行模拟攻击 根据前面两小点所得的信息,建立一个类似攻击对象的模拟环境,然后对此模拟目标进行一系列的攻击。在此期间,通过检查被攻击方的日志,观察检测工具对攻击的反应,可以进一步了解在攻击过程中留下的“痕迹”及被攻击方的状态,以此来制定一个较为周密的攻击策略。
4.具体实施网络攻击 入侵者根据前几步所获得的信息,同时结合自身的水平及经验总结出相应的攻击方法,在进行模拟攻击的实践后,将等待时机,以备实施真正的网络攻击。
10.3.3黑客攻击的防范 1.协议欺骗攻击防范 (1)源IP地址欺骗防范措施:抛弃基于地址的信任策略:阻止这类攻击的一种十分容易的办法就是放弃以地址为基础的验证。不允许r类远程调用命令的使用;删除.rhosts文件;清空/etc/hosts.equiv文件。这将迫使所有用户使用其它远程通信手段,如telnet、ssh、skey等等。
使用加密方法:在包发送到网络上之前,我们可以对它进行加密。虽然加密过程要求适当改变目前的网络环境,但它将保证数据的完整性、真实性和保密性。
进行包过滤:可以配置路由器使其能够拒绝网络外部与本网内具有相同IP地址的连接请求。而且,当包的IP地址不在本网内时,路由器不应该把本网主机的包发送出去。有一点要注意,路由器虽然可以封锁试图到达内部网络的特定类型的包。但它们也是通过分析测试源地址来实现操作的。因此,它们仅能对声称是来自于内部网络的外来包进行过滤,若你的网络存在外部可信任主机,那么路由器将无法防止别人冒充这些主机进行IP欺骗。
(2)源路由欺骗攻击防范措施 最好的办法是配置好路由器,使它抛弃那些由外部网进来的却声称是内部主机的报文。 用命令noipsource-route在路由器上关闭源路由。
2.拒绝服务攻击预防措施 (1)建议在该网段的路由器上做些配置的调整,这些调整包括限制Syn半开数据包的流量和个数。 (2)要防止SYN数据段攻击,我们应对系统设定相应的内核参数,使得系统强制对超时的Syn请求连接数据包复位,同时通过缩短超时常数和加长等候队列使得系统能迅速处理无效的Syn请求数据包。
(3)建议在路由器的前端做必要的TCP拦截,使得只有完成TCP三次握手过程的数据包才可进入该网段,这样可以有效地保护本网段内的服务器不受此类攻击。 (4)对于信息淹没攻击,我们应关掉可能产生无限序列的服务来防止这种攻击。比如我们可以在服务器端拒绝所有的ICMP包,或者在该网段路由器上对ICMP包进行带宽方面的限制,控制其在一定的范围内。
3.网络嗅探攻击防范措施 (1)网络分段:一个网络段包括一组共享低层设备和线路的机器,如交换机,动态集线器和网桥等设备,可以对数据流进行限制,从而达到防止嗅探的目的。 (2)加密:一方面可以对数据流中的部分重要信息进行加密,另一方面也可只对应用层加密,然而后者将使大部分与网络和操作系统有关的敏感信息失去保护。选择何种加密方式这就取决于信息的安全级别及网络的安全程度。
(3)一次性口令技术:口令并不在网络上传输而是在两端进行字符串匹配,客户端利用从服务器上得到的Challenge和自身的口令计算出一个新字符串并将之返回给服务器。在服务器上利用比较算法进行匹配,如果匹配,连接就允许建立,所有的Challenge和字符串都只使用一次。 (4)禁用杂错节点:安装不支持杂错的网卡,通常可以防止兼容机进行嗅探。
4.缓冲区溢出攻击防范措施 (1)程序指针完整性检查:在程序指针被引用之前检测它是否改变。即便一个攻击者成功地改变了程序的指针,由于系统事先检测到了指针的改变,因此这个指针将不会被使用。 (2)堆栈的保护:这是一种提供程序指针完整性检查的编译器技术,通过检查函数活动记录中的返回地址来实现。在堆栈中函数返回地址后面加了一些附加的字节,而在函数返回时,首先检查这个附加的字节是否被改动过。如果发生过缓冲区溢出的攻击,那么这种攻击很容易在函数返回前被检测到。但是,如果攻击者预见到这些附加字节的存在,并且能在溢出过程中同样地制造他们,那么他就能成功地跳过堆栈保护的检测。
(3)数组边界检查:所有的对数组的读写操作都应当被检查以确保对数组的操作在正确的范围内进行。最直接的方法是检查所有的数组操作,通常可以采用一些优化技术来减少检查次数。
10.4 信息安全技术简介 信息在使用或传输过程中很有可能会被截获、篡改或监听。信息安全技术是从信息在信道上传输的角度对信息加以保护的一种手段。
10.4.1 信息安全产品 随着信息化进程的深入,大家对信息安全的要求越来越强烈。许多信息安全产品应运而生,如防火墙、加密设备、入侵检测系统、漏洞扫描修复软件、病毒防治软件、VPN、安全认证系统、安全审计系统等等。下面我们就以防火墙为例简要介绍信息安全产品。
防火墙的介绍 防火墙是近期发展起来的一种保护计算机网络安全的访问控制技术。它是一个用以阻止网络中的黑客访问某个机构网络的屏障,也可称之为控制进/出两个方向通信的门槛。防火墙是一个位于内部网络与Internet之间的计算机或网络设备中的一个功能模块,是按照一定的安全策略建立起来的硬件和软件的有机组成体,其目的是为内部网络或主机提供安全保护。
1.防火墙的基本准则 (1)一切未被允许的就是禁止的 基于该准则,防火墙应封锁所有的信息流,然后对希望提供的服务逐项开放。这是一种非常实用的方法,可以造成一种十分安全的环境,因为只有经过仔细挑选的服务才被允许使用。其弊端是,安全性高于用户使用的方便性,用户所能使用的服务范围受限制。
(2)一切未被禁止的就是允许的 基于此准则,防火墙应转发所有信息流,然后逐项屏蔽可能有害的服务。这种方法构成了一种更为灵活的应用环境,可为用户提供更多的服务。其弊端是,在日益增多的网络服务面前,网管人员疲于奔命,特别是受保护的网络范围增大时,很难提供可靠的安全保护。
2.防火墙的基本功能 过滤进出网络的数据; 管理进出网络的访问行为; 封堵某些禁止的业务; 记录通过防火墙的信息内容和活动; 对网络攻击进行检测和告警。
3.防火墙的关键技术 (1)包过滤技术 它一般作用在网际层(IP层),由路由器审查每个数据包。主要根据防火墙系统所收到的每个数据包的源IP地址、目的IP地址、TCP/UDP源端口号、TCP/UDP目的端口号及数据包头中的各种标志位来进行判定。
(2)代理服务技术:它作用在应用层,它用来提供应用层服务的控制,起到外部网络向内部网络申请服务时的中间转接作用。内部网络只接受代理提出的服务要求,拒绝外部网络其他节点的直接请求。运行代理服务的主机被称为代理服务器。
(3)状态监控技术 它是一种新的防火墙技术,在网络层完成所有必要的防火墙功能——包过滤和网络服务代理。目前最有效的实现方法一般采用Check Point公司提出的虚拟机方式。
4.防火墙存在的主要问题 (1)限制服务类型和灵活性:最明显的是可能封锁用户所需的某些服务,如封锁Telnet、FTP、NFS(Network File System,网络文件系统)等。 (2)防火墙不能对抗私有网中的后门:如果不受限制的调制解调器访问允许进入网络,攻击者能够有效地跳过防火墙的保护。Internet内的SLIP(Serial Line Internet Protocol,串行线路网际协议)或PPP(Point To Point Protocol,点对点协议)连接在本质上是其网络的连接点和潜在后门。
(3)潜在危险仍然存在:不熟悉的软件、硬件、应用程序等,里面可能潜藏危险电路、致病模块、特洛伊木马等,都可能绕过防火墙策略,破坏安全设施。此外,防火墙不能扫描病毒特征,对于上载和下载软件和文档中的病毒大多无法防治。 (4)潜在的效率瓶颈:防火墙一般都要求额外的开销,制约了传输的速度。 (5)防火墙一般不保护来自内部的攻击:最初的防火墙的设计思想是以本地私有网的安全为前提,要防范的只是来自外部的可能的攻击。
5.防火墙的发展 随着Internet的用户数量增加和向社会所有领域的渗透,即使大型企业也希望部署仅需很少配置的简单解决方案。防火墙产品朝着可互操作性和可管理性等方面发展。网络和桌面环境将增加加密、智能卡、攻击检测以及审计功能,包括防火墙功能在内的综合产品将替代单纯的防火墙产品,如URL阻塞、中央管理、内容安全管理、病毒预防甚至有内置VPN功能等。
10.4.2 数据加密、SSL及信息安全服务 1.数据加密 数据加密的基本过程就是对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的代码,通常称为“密文”,使其只能在输入相应的密钥之后才能显示出本来内容,通过这样的途径来达到保护数据不被非法窃取、阅读的目的
常用的密码体制 (1)私钥密码体制:又称对称密码体制、单钥密码体制,即加密密钥和解密密钥相同或不相同,但可以从其中一个推导出另一个。 (2)公钥密码体制:又称非对称密码体制、双钥密码体制。这一体制更宜为网络用户采用。采用公钥密码体制的用户都有一对选定的密钥,加密密钥是公开的,而解密密钥由用户秘密保存。
常用的密码体制 (3)“私钥算法”和“公钥算法”的区别 DES是私钥算法,单纯使用DES是无法实现密钥交换的。这要求采用RSA一类的“公钥算法”。譬如,“传统算法”中只有一个密钥,加密、解密均使用相同的密钥;“公钥算法”每个用户有两个密钥,一个是公开的“公钥”(Public Key),另外一个是保密的“私钥”(Security Key)。
2.SSL (Secure Socket Layer) SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为SSL记录协议和SSL握手协议两层。SSL记录协议建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。
SSL协议提供的服务 (1)认证用户和服务器,确保数据发送到正确的客户机和服务器; (2)加密数据以防止数据中途被窃取; (3)维护数据的完整性,确保数据在传输过程中不被改变。
SSL协议的工作流程 服务器认证阶段:(1)客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;(2)服务器根据客户的信息确定是否需要生成新的主密钥,如需要则服务器在响应客户的“Hello”信息时将包含生成主密钥所需的信息;(3)客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;(4)服务器恢复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。
用户认证阶段:在此之前,服务器已经通过了客户认证,这一阶段主要完成对客户的认证。经认证的服务器发送一个提问给客户,客户则返回(数字)签名后的提问和其公开密钥,从而向服务器提供认证。
3.信息安全服务 国际标准化组织于 1989 年对 OSI 开放互联环境的安全性进行了深入的研究,在此基础上提出了 OSI 安全体系,作为研究设计计算机网络系统及评估和改进现有系统的理论依据。 OSI 安全体系定义了五种安全服务
(1)认证安全服务:用于识别对象的身份和对身份真实性的证实。认证是安全的最基本要素。信息系统的目的是给获得授权的使用者使用,因此,首先必须对来访者进行身份认证。OSI 环境提供对等实体认证和信源认证等安全服务。对等实体认证用来验证对方没有假冒身份;信源认证用于验证所收到的数据来源与所声称的来源是一致的,防止数据中途被修改。
(2)访问控制(授权)安全服务:授权就是授予合法使用者对系统资源的使用权限并且对非法使用行为进行监测。该服务提供对越权使用资源的防御措施。 (3)数据保密性安全服务:保密是要确保信息在传送过程和存储时不被非法使用者“看”到。该服务是对信息泄露而采取的安全措施,它的基础是采用数据加密方法。
(4)数据完整性安全服务:防止非法篡改信息, 如修改、 复制、 插入和删除等。 (5)抗否认(防抵赖)安全服务:无论是授权的使用还是非授权的使用,事后都应该有据可查,使用者无法否认或抵赖。该服务是针对对方否认发送信息的防御措施。