是否有可能在没有登录他的情况下冒充用户?

den*_*isV 8 security impersonation winapi visual-c++

是否可以在不提供用户名/密码的情况下冒充用户?基本上,我想CSIDL_LOCAL_APPDATA使用该ShGetFolderPath()功能获取用户(而不是当前用户).我目前拥有的只是该用户的SID.

小智 8

您可以通过调用ZwCreateToken来模拟用户而无需提供密码.请参阅本文中的CreatePureUserToken函数: 基于GUI的RunAsEx 您必须以管理员(或LocalSystem)身份运行才能使其工作.

另一种技术是使用Windows Subauthentication Packages.这允许您覆盖Windows内置身份验证,并允许LogonUser成功,即使没有提供密码.请参阅此知识库文章.


Est*_*aya 6

不,您必须调用Win32 API LogonUser函数才能获取Windows帐户令牌,以便您可以进行模拟.