据称windows com结构存在安全问题,本地或远程攻击者可以利用这个漏洞提升特权或执行任意指令。受影响的操作系统和程序在处理com结构化存储文件时,在访问共享内存的方式中存在去那县提升漏洞,一个已登陆的拥护可以利用此漏洞完全控制系统。
漏洞的形成原理
webfldrs.msi是windows系统web文件夹中的修复工具, webfldrs.msi组件在卸载的时候由于权限的问题而出错,从而弹出一个提示窗口。这时线程被挂起,新线程创建初期会创建一个堆对象,而正好这个对象可以被写入,攻击者正是利用这个写入的机会将已经准备好的shellcode写如到这个对象中,从而执行自己的shellcode。
提示:shellcode是一组可以完成我们想要的功能的机器代码,这些代码通常都是以十六进制的数组形式存在的。
实战提升权限
我们将会利用这个漏洞进行本地权限的实验和远程权限提升实验。
本地权限提升操作
我们首先看看com远程缓冲区溢出漏洞在本地的操作使用。
在很多特定的环境下的电脑,为了防止使用者进行某些操作,电脑的管理员都会对自己电脑的使用权限加以限制,如只能读取已有的文件,不能创建新的文件等。然而,通过这个漏洞,我们可以将有有功能限制的帐户的权限提升到最高的管理员权限。
首先用一个普通用户的身份进行登陆(非管理员)。
今天,我们进行本地提升权限的系统是windows2000,下面我们就进行操作。运行“cmd”命令打开一个命令提示符窗口。执行“c:\ms05012.exe “c:\windows\system32\webfldrs.msi” “cmd.exe” ”命令,工具提示命令执行成功以后就会弹出一个新的命令提示符窗口。 在这个窗口中,我们就可以执行所有的命令。
如:添加管理员命令“net user 帐号 密码 /add 回车
net localgroup administrator 帐号 /add 回车 ”
远程权限提升操作
远程提升权限在黑客的入侵过程中是很常见的操作因为黑客为了能 完全控制远程计算机,必须拥有一个最高权限的用户帐号。
首先使用nc得到一个远程计算机的shell,当然这个权限是有限的 。现在我们就运行“ms05012.exe “c:\windows\system32\webfldrs.msi” “net localgroup administrator cj /add” ”.当工具提示运行成功后。我们就得到一个名称为“cj”的管理员帐号了。
这里提醒大家一句,无论远程系统是什么版本,都不要执行并激活“cmd.exe”。因为如果运行了这个命令,就会在远程计算机弹出命令符窗口,这样会引起远程用户的警觉。
防范方法:对于这个漏洞进行防范,最简单最稳妥的方法就是尽快安装微软的安全补丁.
[ 本帖最后由 暗夜精灵 于 2008-6-9 23:46 编辑 ]