四、漏洞等级评定
考察漏洞的危害性应该紧密的和利用该漏洞带来的危害相关,并不是通常大家认识的所有缓冲区溢出漏洞都是高危漏洞。以远程漏洞为例,比较好的划分方法为:
1 可远程获取OS、应用程序版本信息。
2 开放了不必要或危险得服务,可远程获取系统敏感信息。
3 可远程进行受限的文件、数据读取。
4 可远程进行重要或不受限文件、数据读取。
5 可远程进行受限文件、数据修改。
6 可远程进行受限重要文件、数据修改。
7 可远程进行不受限得重要文件、数据修改,或对普通服务进行拒绝服务攻击。
8 可远程以普通用户身份执行命令或进行系统、网络级的拒绝服务攻击。
9 可远程以管理用户身份执行命令(受限、不太容易利用)。
10 可远程以管理用户身份执行命令(不受限、容易利用)。
本地漏洞几乎都是导致代码执行,归入上面的10分制可以为:
远程主动触发代码执行(如IE的漏洞)。
远程被动触发代码执行(如Word漏洞/看图软件漏洞)。
五、DEMO
一个防火墙隔离(只允许运维部的人访问)的网络里运行一台Unix服务器;操作系统中只有root用户和oracle用户可登陆,操作系统中运行了Apache(nobody权限)、Oracle(oracle用户权限)等服务。
一个攻击者的目的是修改Oracle数据库中的帐单表的数据。
其可能的攻击步骤为:
1.接入运维部的网络,获得一个运维部的IP地址从而能通过防火墙访问被保护的Unix服务器。
2.利用Apache服务的某远程缓冲区溢出漏洞直接获得一个nobody权限的shell访问。
3.利用操作系统某suid程序的漏洞将自己的权限提升到root权限。
4.用Oracle的sysdba登陆进入数据库(本地登陆不需要密码)。
5.修改目标表的数据。
以上5个过程分析下来为:
第1步:认证绕过
第2步:远程漏洞、代码执行(机器码)、认证绕过
第3步:权限提升、认证绕过
第4步:认证绕过
第5步:数据写
标签: