微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如果ImpersonateSelf失败后RevertToSelf是致命的吗?

MSDN说,如果RevertToSelf()失败,程序应该立即终止,因为否则它会继续以被模拟的客户端的名义运行,这是不合适的。 现在假设我做了

ImpersonateSelf( SecurityImpersonation );

并且调用成功,那么我调用RevertToSelf() ,后者失败。 线程继续以当前进程的权限运行。 它也是非常糟糕的?

validation内存中的进程完整性?

我需要/何时需要validation码?

APIloginWindows用户

什么是过时的com.ms.security的等效安全function?

是否可以configuration每个用户的Linuxfunction?

我喜欢你的问题,MSDN也不清楚。

我看了编程Windows安全 (基思·布朗)第112至117页ImpersonateSelf通过调用你所做的所有工作

OpenProcesstoken

DuplicatetokenEx(… … TokenImpersonation)

SetThreadToken

CloseHandle的

而RevertToSelf只是一个电话

SetThreadToken(0,0)

传递两个空参数指示方法返回到前一个标记。 您不必处理模拟与主令牌和令牌访问权限。 电话会一直成功。

而且,如果您查看RpcRevertToSelf函数错误代码,则可以看到不考虑RPC相关的代码,唯一的失败模式是如果您不模拟。

我认为假设RevertToSelf (从与ImpersonateSelf相同的线程调用)总是会成功是安全的。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐