klxb 发表于 2014-5-13 17:08:29

Windows 7系统DCOM组件对象的自动提升

  可能很多读者朋友已经发现,有些以COM组件形式提升权限的Windows自带管理任务,也不需要弹出“用户账户控制”对话框。例如前面提到的“日期和时间”组件,就是以COM组件的形式通过Dllhost进程加载运行的。如果以管理员身份登录,无需弹出“用户账户控制”对话框,就可以直接修改系统时间。
  前面我们提过,当提升权限时,“日期和时间”组件实际上是寄宿在Dllhost进程中的,其AppID为{9df523b0-a6c0-4ea9-b5f1-f4565c3ac8b8}。
  打开注册表编辑器,定位到以下注册表项:
  HKLM\SOFTWARE\Classes\CLSID\{9df523b0-a6c0-4ea9-b5f1-f4565c3ac8b8}\
  其中有一个Elevation子项,就是定义该COM组件是否需要自动提升权限。在右侧的详细窗格中可以看到一个名为“Enabled”的键值,其数值数据为1。
  原来如此,那么很容易想到,如果把这个“Enabled”键值的数值数据改为“0”,“日期和时间”组件是不是就无法自动提升权限了?
  不过默认情况下,用户无法直接修改这个“Enabled”健值,原来是Elevation注册表子项的权限设置为管理员组的成员账户,只有读取权限,必须修改其注册表权限,将其改为管理员组,才有完全控制权权限。
  使用鼠标右键单击Elevation注册表子项,在弹出的菜单中选择“权限”,打开权限对话框,选中Administrators,然后确保在下方选中“完全控制”的“允许”复选框。
  修改好权限,接下来就可以把“Enabled”键值的数值数据改为“0”,然后重新启动计算机,再尝试修改系统时间,这下就不能直接修改了,而是弹出没有权限,拒绝执行的报错消息框。更多系统下载ghost xp、win7 ghost !

页: [1]
查看完整版本: Windows 7系统DCOM组件对象的自动提升