华信知识服务平台
首页 业界快讯 会议活动 培训信息 专家专栏 每周病毒播报 安全小百科 图书专区 网络营销 定制出版 Intel
Google 在互联网上找 在站内找
安全会议
 
  2008全球数字监控论坛(2008-7-2)
 
  2008年全国信息安全类专业学生创新能力培养研讨会(2008-7-11)
 
  全国“信息安全实验”课程教学经验交流暨师资培训会议(2008-7-14)
 
  全国第19届计算机技术与应用(CACIS2008)学术会议(2008-7-15)
 
  more
每周病毒播报
 

病毒预报 第二百八十四期(2008.7.14-2008.7.20)

 
 

病毒预报 第二百八十三期(2008.7.7-2008.7.13)

 
 

病毒预报 第二百八十二期(2008.6.30-2008.7.6)

 
 

病毒预报 第二百八十一期(2008.6.23-2008.6.29)

 
 

病毒预报 第二百八十期(2008.6.16-2008.6.22)

 
 

病毒预报 第二百七十九期(2008.6.9-2008.6.15)

 
  more
邮件订阅每周病毒播报
E-mail:
 
信息安全系列培训
软件安全系列培训——安全编程(2008-3-29)
“网站安全保护”培训课程
(每月一期)
“企业网络与信息安全”培训课程(2008年6月前每月一期)
 
资源导航
 
  漏洞  
引言  

  一个系统从发布的那一天起,随着用户的深入使用,系统中存在的漏洞会被不断暴露出来,这些早先被发现的漏洞也会不断被系统供应商发布的补丁软件修补,或在以后发布的新版系统中得以纠正。而在新版系统纠正了旧版本中具有漏洞的同时,也会引入一些新的漏洞和错误。因而随着时间的推移,旧的漏洞会不断消失,新的漏洞会不断出现。漏洞问题也会长期存在。

 
   
定义  

  漏洞是在硬件、软件、协议的具体实现或系统安全策略上存在的缺陷,从而可以使攻击者能够在未授权的情况下访问或破坏系统。具体举例来说,比如在Intel Pentium芯片中存在的逻辑错误,在Sendmail早期版本中的编程错误,在NFS协议中认证方式上的弱点,在Unix系统管理员设置匿名Ftp服务时配置不当的问题都可能被攻击者使用,威胁到系统的安全。因而这些都可以认为是系统中存在的安全漏洞。系统漏洞又称安全缺陷,对用户造成的不良后果如下所述:如漏洞被恶意用户利用,会造成信息泄漏,如黑客攻击网站即利用网络服务器操作系统的漏洞。对用户操作造成不便,如不明原因的死机和丢失文件等。

 
   
原理结构  

  漏洞的产生大致有三个原因,具体如下所述:
  编程人员的人为因素,在程序编写过程,为实现不可告人的目的,在程序代码的隐蔽处保留后门。
  受编程人员的能力、经验和当时安全技术所限,在程序中难免会有不足之处,轻则影响程序效率,重则导致非授权用户的权限提升。
  由于硬件原因,使编程人员无法弥补硬件的漏洞,从而使硬件的问题通过软件表现。

 
   
相关知识  

漏洞的包含范围:
漏洞的狭义范围
  漏洞会影响到很大范围的软硬件设备,包括作系统本身及其支撑软件,网络客户和服务器软件,网络路由器和安全防火墙等。怎么理解呢,就是在这些不同的软硬件设备中都可能存在不同的安全漏洞问题。
漏洞的广义范围
  这里的漏洞是指所有威胁到计算机信息安全的事物。包括人员、硬件、软件、程序、数据。
漏洞的性质:
漏洞的长久性
  漏洞问题是与时间紧密相关的。一个系统从发布的那一天起,随着用户的深入使用,系统中存在的漏洞会被不断暴露出来,这些早先被发现的漏洞也会不断被系统供应商发布的补丁软件修补,或在以后发布的新版系统中得以纠正。而在新版系统纠正了旧版本中具有漏洞的同时,也会引入一些新的漏洞和错误。因而随着时间的推移,旧的漏洞会不断消失,新的漏洞会不断出现。漏洞问题也会长期存在。
漏洞的隐蔽性
  系统安全漏洞是指可以用来对系统安全造成危害,系统本身具有的,或设置上存在的缺陷。总之,漏洞是系统在具体实现中的错误。比如在建立安全机制中规划考虑上的缺陷,作系统和其他软件编程中的错误,以及在使用该系统提供的安全机制时人为的配置错误等。
系统安全漏洞是在系统具体实现和具体使用中产生的错误,但并不是系统中存在的错误都是安全漏洞。只有能威胁到系统安全的错误才是漏洞。许多错误在通常情况下并不会对系统安全造成危害,只有被人在某些条件下故意使用时才会影响系统安全。
漏洞的必然被发现性
  漏洞虽然可能最初就存在于系统当中,但一个漏洞并不是自己出现的,必须要有人发现。在实际使用中,用户会发现系统中存在错误,而入侵者会有意利用其中的某些错误并使其成为威胁系统安全的工具,这时人们会认识到这个错误是一个系统安全漏洞。系统供应商会尽快发布针对这个漏洞的补丁程序,纠正这个错误。这就是系统安全漏洞从被发现到被纠正的一般过程。
系统攻击者往往是安全漏洞的发现者和使用者,要对于一个系统进行攻击,如果不能发现和使用系统中存在的安全漏洞是不可能成功的。对于安全级别较高的系统尤其如此。
系统安全漏洞与系统攻击活动之间有紧密的关系。因而不该脱离系统攻击活动来谈论安全漏洞问题。广泛的攻击存在,才使漏洞存在必然被发现性。
不同角度看安全漏洞的分类
1、从用户群体分类
  大众类软件的漏洞。如Windows的漏洞、IE的漏洞等等。
  专用软件的漏洞。如Oracle漏洞、Apache漏洞等等。
2、从数据角度看分为
  能读按理不能读的数据,包括内存中的数据、文件中的数据、用户输入的数据、数据库中的数据、网络上传输的数据等等。
  能把指定的内容写入指定的地方(这个地方包括文件、内存、数据库等) 。
  输入的数据能被执行(包括按机器码执行、按Shell代码执行、按SQL代码执行等等) 。
3、从作用范围角度看分为
  远程漏洞,攻击者可以利用并直接通过网络发起攻击的漏洞。这类漏洞危害极大,攻击者能随心所欲的通过此漏洞操作他人的电脑。并且此类漏洞很容易导致蠕虫攻击,在Windows。
  本地漏洞,攻击者必须在本机拥有访问权限前提下才能发起攻击的漏洞。比较典型的是本地权限提升漏洞,这类漏洞在Unix系统中广泛存在,能让普通用户获得最高管理员权限。
4、从触发条件上看可以分为
  主动触发漏洞,攻击者可以主动利用该漏洞进行攻击,如直接访问他人计算机。
  被动触发漏洞,必须要计算机的操作人员配合才能进行攻击利用的漏洞。比如攻击者给管理员发一封邮件,带了一个特殊的jpg图片文件,如果管理员打开图片文件就会导致看图软件的某个漏洞被触发,从而系统被攻击,但如果管理员不看这个图片则不会受攻击。
5、从操作角度看可分为
  文件操作类型,主要为操作的目标文件路径可被控制(如通过参数、配置文件、环境变量、符号链接灯),这样就可能导致下面两个问题:
1写入内容可被控制,从而可伪造文件内容,导致权限提升或直接修改重要数据(如修改存贷数据),这类漏洞有很多,如历史上Oracle TNS LOG文件可指定漏洞,可导致任何人可控制运行Oracle服务的计算机;
2内容信息可被输出,包含内容被打印到屏幕、记录到可读的日志文件、产生可被用户读的core文件等等,这类漏洞在历史上Unix系统中的crontab子系统中出现过很多次,普通用户能读受保护的shadow文件;
  内存覆盖,主要为内存单元可指定,写入内容可指定,这样就能执行攻击者想执行的代码(缓冲区溢出、格式串漏洞、PTrace漏洞、历史上Windows2000的硬件调试寄存器用户可写漏洞)或直接修改内存中的机密数据。
  逻辑错误,这类漏洞广泛存在,但很少有范式,所以难以查觉,可细分为:
1条件竞争漏洞(通常为设计问题,典型的有Ptrace漏洞、广泛存在的文件操作时序竞争)
2策略错误,通常为设计问题,如历史上FreeBSD的Smart IO漏洞。
3算法问题(通常为设计问题或代码实现问题),如历史上微软的Windows 95/98的共享口令可轻易获取漏洞。
4设计的不完善,如TCP/IP协议中的3步握手导致了SYN FLOOD拒绝服务攻击。
5实现中的错误(通常为设计没有问题,但编码人员出现了逻辑错误,如历史上博彩系统的伪随机算法实现问题)
  外部命令执行问题,典型的有外部命令可被控制(通过PATH变量,输入中的SHELL特殊字符等等)和SQL注入问题。

 
   
其他  

漏洞问题与不同安全级别计算机系统之间的关系
   目前计算机系统安全的分级标准一般都是依据“橘皮书”中的定义。橘皮书正式名称是“受信任计算机系统评量基准”(Trusted Computer System Evaluation Criteria)。橘皮书中对可信任系统的定义是这样的:一个由完整的硬件及软件所组成的系统,在不违反访问权限的情况下,它能同时服务于不限定个数的用户,并处理从一般机密到最高机密等不同范围的信息。
   橘皮书将一个计算机系统可接受的信任程度加以分级,凡符合某些安全条件、基准规则的系统即可归类为某种安全等级。橘皮书将计算机系统的安全性能由高而低划分为A、B、C、D四大等级。其中:
   D级——最低保护(Minimal Protection),凡没有通过其他安全等级测试项目的系统即属于该级,如Dos,Windows个人计算机系统。
   C级——自主访问控制(Discretionary Protection),该等级的安全特点在于系统的客体(如文件、目录)可由该系统主体(如系统管理员、用户、应用程序)自主定义访问权。例如:管理员可以决定系统中任意文件的权限。当前Unix、Linux、Windows NT等作系统都为此安全等级。
   B级——强制访问控制(Mandatory Protection),该等级的安全特点在于由系统强制对客体进行安全保护,在该级安全系统中,每个系统客体(如文件、目录等资源)及主体(如系统管理员、用户、应用程序)都有自己的安全标签(Security Label),系统依据用户的安全等级赋予其对各个对象的访问权限。
   A级——可验证访问控制(Verified Protection),而其特点在于该等级的系统拥有正式的分析及数学式方法可完全证明该系统的安全策略及安全规格的完整性与一致性。 '
可见,根据定义,系统的安全级别越高,理论上该系统也越安全。可以说,系统安全级别是一种理论上的安全保证机制。是指在正常情况下,在某个系统根据理论得以正确实现时,系统应该可以达到的安全程度。
   系统安全漏洞是指可以用来对系统安全造成危害,系统本身具有的,或设置上存在的缺陷。总之,漏洞是系统在具体实现中的错误。比如在建立安全机制中规划考虑上的缺陷,作系统和其他软件编程中的错误,以及在使用该系统提供的安全机制时人为的配置错误等。
   安全漏洞的出现,是因为人们在对安全机制理论的具体实现中发生了错误,是意外出现的非正常情况。而在一切由人类实现的系统中都会不同程度的存在实现和设置上的各种潜在错误。因而在所有系统中必定存在某些安全漏洞,无论这些漏洞是否已被发现,也无论该系统的理论安全级别如何。
   所以可以认为,在一定程度上,安全漏洞问题是独立于作系统本身的理论安全级别而存在的。并不是说,系统所属的安全级别越高,该系统中存在的安全漏洞就越少。
   可以这么理解,当系统中存在的某些漏洞被入侵者利用,使入侵者得以绕过系统中的一部分安全机制并获得对系统一定程度的访问权限后,在安全性较高的系统当中,入侵者如果希望进一步获得特权或对系统造成较大的破坏,必须要克服更大的障碍。

 
   
  返回>>  
信息安全系列培训听众登记表

    如果您对我们的培训有兴趣,请完整填写下表并提交
    ——您将有机会免费获得电子工业出版社图书一本。

    有相关问题也可通过以下联系方式咨询
    ①电话咨询:010-88254012;联系人:潘昕
    ②传真:010-88254490
    ③电子邮件:panxin@phei.com.cn

信息安全系列培训听众登记表(*为必填项)
 *姓   名:  * E-mail:
 办公电话:  手    机:
 邮寄地址:  邮政编码:
 感兴趣的课程(可多选):
  企业网络与信息安全   网站安全保护
  院校老师办公安全意识与技能培训  


关于本站|联系我们|业界快讯|会议活动|培训信息|专家专栏|病毒播报|安全百科|图书专区|应用技巧|安全学堂