用CPAU替代RUNAS

使用CPAU帮助受限用户安全地以管理员权限运行程序和命令

在现在域管理中,经常会遇到一些程序或工具无法以普通用户权限运行,而必须用到管理员权限的情况,有的甚至于生产业务息息相关。出现这种问题的原因多种多样,如早期开发人员的认识不够,有的是为了拦截、修改某些文件而不得已采取的手段,等等。随着Vista、Windows 7的部署,问题也日渐凸显。

为此,微软提供了runas命令来提升用户权限,但runas的缺点就在于,每次使用都必须输一遍密码,极不方便。

使用脚本自动完成操作虽然能满足要求。但是脚本的编写、加密的工作量大,且不利于管理。

 

CPAU是个轻巧、灵活的命令行工具,能以更简单的批处理方式帮助受限用户安全地以管理员权限完成操作。支持200/XP/2003/VISTA。在我的Windows 7 M3上测试通过。(下载请看2F)

CPAU的用法和runas相似,但扩展功能更多。

基本用法:

CPAU -u user [-p password] -ex "WhatToRun" [switches]

-u                   执行该任务的用户名,域环境需要全称 如:domain\administrator

-p                   该用户的密码,如果没有此开关,回车后要求输密码(不可见)

-ex                 需要执行的程序,对于有空格出现的路径,建议加双引号,如 "c:\Program Files\qq.exe"

-lwp或-lwop    如果是本地账户,必须使用此开关才能交互式认证。

举例: CPAU -u administrator -p 123456  -ex  CMD -lwp       管理模式下的命令行

          CPAU -u administrator -p 123456  -ex  "cscript e:\lock.vbs"  -lwp     运行脚本

          CPAU -u  小小 -p 123456  -ex  "c:\Program Files\QQ2008 Beta2\qq.exe" -lwp   运行程序

扩展:

直接把命令写入批处理或快捷方式交给用户运行无异于暴露了管理员密码。CPAU提供了加密开关将整个命令加密,避免账号和密码以明文出现。

首先,将准备要执行的命令加密,例如:   

CPAU -u  administrator -p 123456  -ex  "f:\Program Files\QQ2008 Beta2\qq.exe"  -enc  -file G:\temp\start.mp3

-enc  为加密开关

-file   加密文件的输出路径,后缀名不限。

(-lwp和-lwop开关请暂时忽略。)

完成后如果显示: The command completed successfully.  表示成功完成。

 

用记事本可以打开加密后的文件:

 

现在,非管理员用户只需要调用该加密文件就可以运行程序了,不会再有明文的密码出现:

CPAU -dec -file g:\temp\start.mp3 -lwp

-dec  解密开关

-file  加密文件所在的路径

(-lwp和-lwop开关在这里补上)

 

接下来, 创建一个bat文件或快捷方式供用户启动。

以快捷方式为例:

为CPAU创建一个快捷方式,将该快捷方式剪切到桌面。修改目标路径和图标。

 

大功告成!

 

警告:不要在高安全强度的环境使用该工具!加密算法是作者私有的;在时间充裕的情况下可以被破解。尽量使用本地账号替代域管理员账号。

posted @ 2015-05-06 13:59  injectionbak  阅读(797)  评论(1编辑  收藏  举报