我的实验:域普通用户临时提升权限(总结)

1、临时提升权限的目的。

A、域普通用户安装管理员发布的软件(比如使用zap发布)。

B、完成管理权限才能完成的安全设置(比如调用一些命令,完成一些安全配置)。


2、临时提升权限的方法(3种)

Arunas.exe法:这个小软件是win2000以上的系统自带的,一般存放在system32文件夹下。当你按住shift键,点右键,选择“运行方式 ...”的时候,其实调用的就是这个命令。RUNAS的用法很简单:


RUNAS [/profile] [/env] [/netonly] /user:program


/profile 如果需要加载用户的配置文件

/env 要使用当前环境,而不是用户的环境。

/netonly 只在指定的凭据限于远程访问的情况下才使用

/user 应使用 USER@DOMAIN DOMAIN\USER形式

program EXE. 的命令行。


参阅下面的例子

例如:

> runas /profile/user:mymachine\administrator cmd

> runas /profile /env /user:mydomain\admin"mmc %windir%\system32\dsa.msc"


总结:这个软件用着不太爽,因为每次都要输入密码,不太方便。大家不学也罢。



Bcpau.exe法:这个软件解决了runas.exe每次要输入密码的麻烦。Cpau.exe使用方法:


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 运行脚本


我实验中是这样使用的,在域策略中发布相应的软件,以zap为例:


[application]

friendlyname="搜狗拼音输入法"

setupcommand="\\192.168.0.221\soft$\tools\cpau.exe-u yft.com\administrator -p abc#123 -ex"\\192.168.0.221\soft$\sogou_pinyin.exe" -lwp -hide"

[ext]

arj=

lzh=


备注:主要命令是调用\\192.168.0.221\soft$\tools\下的cpau.exe软件,以用户名为yft.com\administrator域管理员,密码为abc#123,打开\\192.168.0.221\soft$\sogou_pinyin.exe这个软件安装。其它均为zap的格式,不变即可。


顺便再给大家介绍一下另外一个命令:lsrunas.exe(后面介绍的命令和这个很像,大家注意哟)

Lsrunas.exe /user:(用户)/password:(密码) /domain(域名) /command:(程序) /runpath:(程序启动的路径 )


所有的参数必须齐全,其中: user 为运行的账号password 为密码密文(lsrunas则使用的为明文) domain 为机器名或域名,也可留空代表本机command 为要运行的程序名,如果携带参数需要在命令的首尾加引号 runpath 为程序启动的路径


[application]

friendlyname="搜狗拼音输入法"

setupcommand="\\192.168.0.221\soft$\tools\lsrunas.exe/user:administrator /password:abc#123 /domain:yft.com /command:"\\192.168.0.221\soft$\sogou_pinyin.exe " /runpath:c:\windows\system32"

[ext]

arj=

lzh=


注意:上面两个实例相信大家都能看懂。但是有一个小小的安全问题,就是不管使用哪个件都需要在命令中直接使用密码明文,给整个网络带来安全引患。如何解决这个问题呢?来看看我们下面的命令吧。


CLsrunase.exe法:(接近完美的解决方案)(这个命令与上个命令多一个E大家注意)

Lsrunase.exe可以让密码可入成密文,如何将密码转换成密文呢?我们可以使用lsencrypt.exe这个小软件将正常密码转换成密文,是不是很神奇,嘎嘎。我们先看看用法:


Lsrunase.exe/user:(用户) /password:(密码) /domain(域名) /command:(程序) /runpath:(程序启动的路径 )


所有的参数必须齐全,其中: user 为运行的账号password 为密码密文(lsrunas则使用的为明文) domain 为机器名或域名,也可留空代表本机command 为要运行的程序名,如果携带参数需要在命令的首尾加引号 runpath 为程序启动的路径


Zap实例:

[application]

friendlyname="搜狗拼音输入法"

setupcommand="\\192.168.0.221\soft$\tools\lsrunase.exe /user:administrator /password: 7F1zzKdcrQ==/domain:yft.com /command:" \\192.168.0.221\soft$\sogou_pinyin.exe "/runpath:c:\windows\system32 "

[ext]

arj=

lzh=


备注:看看这回你们看不懂我的密码是什么了吧,目的达到了。其实上面的其它工具也可以达到,只是使用比较麻烦,没有这个方便,所以我推荐大家使用lsrunase.exe这个软件。


3、理解了以上域策发布方式,我们是不是又有其它很多想法了呢?比如说在电脑启动的时候做一些安全设置,比如根据用户禁用光盘,更改本地管理密码,停用防火墙等等。(你可能会说这配置不是在策略里有吗?但是你肯定没办法根据用户来设置)


例:公司要求所有员工使用域普通用户权限登录计算机,且同一台电脑根据用户权限是否可以使用光驱。


我的实现方法是:先建立一个禁止用驱的bat文件。取名:cdrom-disable.bat里面的内容为:

@echo off

\\192.168.0.221\soft$\tools\devcon.exe /disable*cdrom*

@echo on


再建立一个调用这个文件bat文件。取名cdrom-dis.bat里面的内容为:

\\192.168.0.221\soft$\tools\cpau.exe-u yft.com\administrator -p abc#123 -ex "\\192.168.0.221\soft$\tools\cdrom-disable.bat"-lwp -hide


然后添加用户策略,让用户在登录的时候运行cdrom-dis.bat由此调用cdrom-disable.bat完成公司要求。



全文总结:以上只是我个人的思路和理解,也许有很多不足的地方,也许您还有更好的方法,那就让我们一起进步吧。QQ:21584379