Rhzhi.Net 主页 | 访问新版
rhzhi.net
网站首页 | 软件新闻 | 操作系统 | 工具软件 | 办公软件 | 网站设计 | 组网专栏 | 平面设计 | 多 媒 体 | 程序开发 | 硬件资料 | 聊天软件
栏 目 索 引
首页 -> 组网专栏-> 网络安全-->文章正文
网络系统安全漏洞分类研究(下)
ChinaUnix.net
2005-5-10 文/未知




  B.按漏洞的成因  

  对其分类,是对漏洞进行分类最另人头疼的一个方面,因为对漏洞研究的不同抽象层次,会对同一个漏洞做出不同的分类,对下面提到的ps竞争条件漏洞,从最低层次上来说是参数验证错误,因为相继的系统调用并没有检查他们所处理的是否为同一个对象,从高一些的层次看,这是一个同步或竞争条件错误,从更高的层次看,这则是一个逻辑错误,因为对象可能在使用过程中被删除。至今也没看到一个比较完美分类方案,包括securityfocus上的分类也不能让人满意,现大致分成以下几类:  

  一、输入验证错误  

  大多数的缓冲区溢出漏洞和cgi类漏洞都是由于未对用户提供的输入数据的合法性作适当的检查。

  二、访问验证错误  

  漏洞的产生是由于程序的访问验证部分存在某些可利用的逻辑错误,使绕过这种访问控制成为可能。上面提到的那个早期AIX的rlogin漏洞就是这种典型。  

  三、竞争条件  

  漏洞的产生在于程序处理文件等实体时在时序和同步方面存在问题,这处理的过程中可能存在一个机会窗口使攻击者能够施以外来的影响。早期的Solaris系统的ps命令存在这种类型的漏洞,ps在执行的时候会在/tmp产生一个基于它pid的临时文件,然后把它chown为root,改名为ps_data。如果在ps运行时能够创建这个临时文件指向我们有兴趣的文件,这样ps执行以后,我们就可以对这个root拥有文件做任意的修改,这可以帮助我们获得root权限。  

  四、意外情况处置错误  

  漏洞的产生在于程序在它的实现逻辑中没有考虑到一些意外情况,而这些意外情况是应该被考虑到的。大多数的/tmp目录中的盲目跟随符号链接覆盖文件的漏洞属于这种类型。例子:Sco UNIX openserver的/etc/sysadm.d/bin/userOsa存在盲目覆盖调试日志文件的问题,而文件的名字是固定的,通过把文件名指向某些特权文件,可以完全破坏系统。  

  五、设计错误  

  这个类别是非常笼统的,严格来说,大多数的漏洞的存在都是设计错误,因此所有暂时无法放入到其他类别的漏洞,先放在这。

  六、配置错误  

  漏洞的产生在于系统和应用的配置有误,或是软件安装在错误的地方,或是错误的配置参数,或是错误的访问权限,策略错误。  

  七、环境错误  

  由一些环境变量的错误或恶意设置造成的漏洞。如攻击者可能通过重置shell的内部分界符IFS,shell的转义字符,或其它环境变量,导致有问题的特权程序去执行攻击者指定的程序。上面提到的RedHat Linux的dump程序漏洞就是这种类型。  

  漏洞的威胁类型和产生漏洞的错误类型之间存在一定的联系,有直接联系的威胁类型与错误类型用直线相连,可以看到如下的图示:

  

  

  可以看到输入验证错误几乎与所有的漏洞威胁有关,设计错误与错误的配置也会导致很多威胁。

  C、对漏洞严重性的分级  

  一般来说漏洞的威胁类型基本上决定了它的严重性,我们可以把严重性分成高,中,低三个级别。远程和本地管理员权限大致对应为高,普通用户权限,权限提升,读取受限文件,远程和本地拒绝服务大致对应中级,远程非授权文件存取,口令恢复,欺骗,服务器信息泄露大致对应低级别。但这只是最一般的情况,很多时候需要具体情况具体分析,如一个涉及到针对流行系统本身的远程拒绝服务漏洞,就应该是高级别。同样一个被广泛使用的软件如果存在弱口令问题,有口令恢复漏洞,也应该归为中高级别。

文章页数:[1] [2] 



相关文章
打印此页 投稿与建议 返回顶部
关于我们 - 联系方式 - 合作伙伴 - 网站大事记 - 网站地图 - 我要投稿
Copyright © 1997-2008 先创网 All Rights Reserved.
先创科技 版权所有