典型漏洞:
Poll_It_SSI_v2.0.cgi存在漏洞能够使攻击者看到web目录外的任何有权限看的文档,发送如下的请求给服务器就能看到/etc/passwd文档,http://www.targethost.com/pollit/Poll_It_v2.0.cgi?data_dir=/etc/passwd
Windows IIS 5.0存在一个漏洞,通过向他发送一个特别的head标记,能够得到asp源码,而不是经过解释执行后asp页面。
Windows IE存在诸多漏洞允许恶意的web页面读取浏览用户的本地的文档。
九.口令恢复
因为采用了很弱的口令加密方式,使攻击者能够很容易的分析出口令的加密方法,从而使攻击者通过某种方法得到密码后还原出明文来。
典型漏洞:
Windows下的PassWD v1.2用来管理系统中的各种口令,并和URL一起储存起来。但他加密储存的口令加密方式很脆弱,经过简单的分析,就能够从加密后的口令还原出明文。
Pcanywhere 9.0采用很脆弱的加密方法来加密传输中的口令,只要窍听了传输中的数据很容易解码出明文口令。
Browsegate是个Windows下的代理防火墙,他的2.80.2版本,在配置文档中储存了加密后的口令而且配置文档对任何用户是可读的,然而加密方式极其脆弱,能够很容易地解码出明文。
十.欺骗
利用这类漏洞,攻击者能够对目标系统实施某种形式的欺骗。这通常是由于系统的实现上存在某些缺陷。
典型漏洞
Windows IE曾存在一个漏洞允许一个恶意网络在另一个风站的窗口内插入内容,从而欺骗用户输入敏感数据。
Linux kernel 2.0.35以下的tcp/ip堆栈存在漏洞,能够使攻击者进行ip地址欺骗很容易实现。
十一.服务器信息泄露
利用这类漏洞,攻击者能够收集到对于进一步攻击系统有用的信息。这类漏洞的产生主要是因为系统程式有缺陷,一般是对错误的不正确处理。
典型漏洞:
Windows IIS 3.0-5.0存在漏洞,当向系统请求不存在的.idq,.idq文档时,机器可能会返回出错信息,里面暴露了IIS的安装目录信息,比如请求http://www.microsoft.com/anything.ida,服务器会返回Response: The IDQ file d:/http/anything.ida could not be found。这些对攻击者进行攻击可能带来方便,比如广泛流行的msadc的攻击,需要知道系统的安装目录。
Linux kernel 2.1.53以下的tcp/ip堆栈开放和关闭的端口对特定的数据包有特定的回应,攻击者能够利用这个特性进行端口的秘密扫描。
某些cgi程式如DBMan (db.cgi)存在漏洞能够使攻击者看到一些系统的环境变量,使攻击者获得关于系统一些有用的信息。
十二.其他
虽然以上的几种分类包括了绝大多数的漏洞情况,可还是有可能存在一些上面几种类型无法描述的的漏洞,把他们归到这里。
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.对漏洞严重性的分级
一般来说漏洞的威胁类型基本上决定了他的严重性,我们能够把严重性分成高,中,低三个级别。远程和本地管理员权限大致对应为高,普通用户权限,权限提升,读取受限文档,远程和本地拒绝服务大致对应中级,远程非授权文档存取,口令恢复,欺骗,服务器信息泄露大致对应低级别。但这只是最一般的情况,很多时候需要具体情况具体分析,如一个涉及到针对流行系统本身的远程拒绝服务漏洞,就应该是高级别。同样一个被广泛使用的软件假如存在弱口令问题,有口令恢复漏洞,也应该归为中高级别。
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




