有时候(例如,当检查恶意软件感染的机器时),以离线的方式在不知道用户的密码的情况下以域用户身份login是非常有用的。 怎么做? 在任何情况下,本地计算机pipe理员帐户都可用。
我知道的一个select涉及转储caching的域凭据,然后将其解密,但这意味着密码不再是秘密,有时根本不可行。 在linux / unix中,我只需要做sudo -u'johndoe'即可完成。 Windows XP / Vista / 7中有什么等价物?
编辑:只是为了提供上下文。 这是为了检查受恶意软件感染的机器。 某些恶意软件只有在以最初受感染用户身份login时才会启动。 我不能把它放回networking来重置密码,因为这太危险了。 所以,这个盒子是离线的,我有一个本地pipe理员帐户,它是在安装时创build的,用于排除故障。
在Windows世界里没有su 。
获得用户login的唯一select是在活动目录中更改用户的密码。
托pipe(.Net)自定义代码是可能的。 从Windows 2003 / XP开始,有一个名为S4U的function,可以在没有凭据或现有令牌的情况下启用模拟。
我没有提供代码示例,但是如果您知道有人可以编写代码,那么相当简单。
所以结果是有可能运行一些像impersonate.exe [域\用户名],并以该用户的身份打开一个新的命令提示符。 这是你的想法? 如果是这样,你可能想要closures它,并在stackoverflow.com上打开一个新的问题。
让我换一个问题,如果我不正确,请告诉我。
如何在离开networking时使用pipe理权限login到计算机?
最直接的选项(提前)是设置强制本地pipe理员密码为已知密码的组策略。 然后,即使PCclosuresnetworking,本地pipe理员帐户也将可用。
http://pogostick.net/~pnh/ntpasswd/
我推荐这个。 将它刻录到光盘/闪存驱动器上并进行操作。