是否可以为Windows为管理员用户创建的标准用户令牌添加权限?

时间:2015-04-29 23:34:56

标签: windows security uac privileges

这个问题是后续问题 Why is SeCreateSymbolicLinkPrivilege ignored on Windows 8?

假设:

  1. 用户位于Administrators组
  2. 关闭UAC对我来说不是一个选择。
  3. 不能选择跑步升空。
  4. 问题:是否可以将SeCreateSymbolicLinkPrivilege添加到Windows为管理员用户创建的标准用户令牌中?

    附录

    非提升管理员用户:

    C:\dayforce\SharpTop>whoami /priv
    
    PRIVILEGES INFORMATION
    ----------------------
    
    Privilege Name                Description                          State
    ============================= ==================================== ========
    SeShutdownPrivilege           Shut down the system                 Disabled
    SeChangeNotifyPrivilege       Bypass traverse checking             Enabled
    SeUndockPrivilege             Remove computer from docking station Disabled
    SeIncreaseWorkingSetPrivilege Increase a process working set       Disabled
    SeTimeZonePrivilege           Change the time zone                 Disabled
    
    C:\dayforce\SharpTop>
    

    普通用户:

    C:\Windows\system32>whoami /priv
    
    PRIVILEGES INFORMATION
    ----------------------
    
    Privilege Name                Description                          State
    ============================= ==================================== ========
    SeShutdownPrivilege           Shut down the system                 Disabled
    SeChangeNotifyPrivilege       Bypass traverse checking             Enabled
    SeUndockPrivilege             Remove computer from docking station Disabled
    SeIncreaseWorkingSetPrivilege Increase a process working set       Disabled
    SeTimeZonePrivilege           Change the time zone                 Disabled
    SeCreateSymbolicLinkPrivilege Create symbolic links                Disabled
    
    C:\Windows\system32>
    

    请注意,普通用户具有SeCreateSymbolicLinkPrivilege权限,因为我已在安全策略中启用了该权限。但管理员用户被搞砸了,因为这样做不会影响其标准用户令牌!

1 个答案:

答案 0 :(得分:1)

(这是实际问题的一个问题,但这是对我认为是实际目标的答案的尝试)

我感到很痛苦 - 我一直在寻找一种方法来允许管理员用户无法创建符号链接,但没有成功......

  • 我调查过改变过程令牌("资源管理器"也许) 添加SeCreateSymbolicLinkPrivilege权限,但它出现了 没有办法改变现有令牌的权限集。 即使您的补丁进程以SYSTEM和/或具有 SeTcbPrivilege特权。

  • 我使用CreateRestrictedToken进行了调查,以创建您自己的" 非升级进程,但使用SeCreateSymbolicLinkPrivilege 特权保持启用状态。但是我读过的所有轶事 CreateRestrictedToken表示生成的令牌不能 与'"真实"充分相似非升级令牌。那里 是完整性水平或高架旗帜难以逾越的问题 与令牌相关联。

  • 无论您分配给create-symlink用户的用户是什么 安全策略管理器,如果您的进程没有升级(来自 具有admin的用户),获得SeCreateSymbolicLinkPrivilege权限 除去。即使添加的唯一用户是" Everyone"。

  • ,也会发生这种情况

微软真的在这个问题上对我们犯了错误,似乎没有好的解决方法。虽然有一个可能的解决方案......

现在,对于hackish解决方案 - 在用户登录期间,启动后台程序(已提升),这将代表其他进程创建符号链接。这将需要使用某种IPC(可能是命名管道)来接收来自客户端进程的create-symlink-requests。它很丑陋,可能很慢,但除了运行Elevated(或禁用UAC)或从管理员组中删除用户之外,我还没有看到任何其他方式。