Windows 10默认情况下是否以管理员身份运行任务管理器?


29

我试图关闭一个无响应的进程,并且第一次单击“结束进程”后,什么都没有发生。所以我又做了一次,这次弹出一个窗口,说“访问被拒绝”。最终,过程确实结束了,但这让我开始思考。

如果我以管理员身份运行任务管理器,是否仍会给我此“访问被拒绝”消息?或者,实际上,Windows 10是否默认以管理员身份运行任务管理器(当用户帐户是管理员时)。此外,是否以管理员身份运行有什么区别

通过此方法以管理员身份运行它:

我觉得这样做和Ctrl+ Shift+ 之间没有任何明显的区别Escape

注意:此问题专门针对Windows 10(可能是8 / 8.1),我正在运行Pro。另外,我的UAC设置为“从不通知”。


如果UAC已关闭并且您使用管理员帐户,则您启动的每个进程都将以管理员权限运行。
Alexey Ivanov

@AlexeyIvanov我不相信那是真的。也许是某些过程,但不是全部过程和应用程序
。.– Insane

2
您是对的:Windows 8 对此进行了更改:“永不通知”设置的UAC行为不再禁用UAC。“从不通知”设置为您提供拆分令牌,并始终自动提升所需的特权。…您仍然可以通过使用组策略或手动设置注册表项来禁用UAC。来源:用户帐户控制。但是,如果完全禁用UAC,则所有进程都将以管理员权限启动。
Alexey Ivanov

1
@AlexeyIvanov现在我已经从组策略中禁用了UAC,您是对的!现在一切都在提升。
疯狂

是的 尽管IIRC Windows Metro应用程序依赖于提升。
qasdfdsaq '16

Answers:


37

Windows 10默认情况下是否以管理员身份运行任务管理器?

仅从管理员帐户运行时。Ben N下面的答案很好地解释了如何实际实施。

如果我以管理员身份运行任务管理器,它是否还会向我显示此“访问被拒绝”消息?

是。有很多过程甚至都不允许管理员结束。此外,尝试结束不存在的任务也会产生此错误消息。

如果获得“访问被拒绝”消息的原因是由于任务管理器未以管理员身份运行,则您将得到此非常明确的消息,告诉您:

在此处输入图片说明

此外,是否以管理员身份运行有什么区别?

是的,但是您必须从非管理员帐户运行它才能看到它。

顺便说一句,所有上述行为与Windows 8 / 8.1中的行为完全相同


1
它的确是。涵盖了所有要点,但我倾向于给出48小时的其他答案才有机会(因为我多次因接受太早而被大喊:)
Insane

以我的经验,这通常发生在进程停滞等待内核模式I / O请求完成时。尝试在Windows 8上结束进程时,
Christopher Oicles

如果通过使用“ psexec -d -i -s taskmgr”将taskmgr作为SYSTEM启动,则可能会终止这些进程
drake7707

1
@ drake7707实际上,即使您以SYSTEM身份运行,受保护的进程也无法终止,甚至无法从用户模式写入DAC。我不相信用户模式也不能权威地处理挂在内核模式下的进程。您必须关闭所有句柄(请参阅我的其他回答),然后等待所有内核模式请求完成。
本N

@BenN更一般地说,是在内核中的某个点挂起;您是否可能会面临比仅通过任何安全方法无法终止的应用程序严重得多的问题。
Dan Neely

18

现有答案非常好。对于那些喜欢这些东西的人,我将提供一些技术细节。

Taskmgr.exe(中的\Windows\System32)是调用“任务管理器”时运行的程序。通过十六进制编辑器对其进行了检查,我发现其清单设置requestedExecutionLevelhighestAvailable。这意味着,如果您以本地管理员身份运行,则任务管理器将要求您提升权限。您可以通过将UAC设置为最高级别并按Ctrl + Shift + Esc来启动任务管理器来轻松演示这一点,注意它会生成一个海拔提示。如果UAC不在最高级别,则任务管理器可以静默提升,因为它是Windows不可或缺的组件。简而言之,是的,默认情况下,任务管理器默认以admin身份运行

highestAvailable(而不是requireAdministrator)允许非管理员运行程序而无需被要求提升,但他们当然不能从该程序执行任何管理工作。

快速查看程序是否正在运行的方法是启用任务管理器“详细信息”选项卡中的“ UAC虚拟化”列。当且仅当进程在该列中的条目为Allow时,才将其提升。(管理过程不能重定向兼容性。)您还可以SeSecurityPrivilege使用Sysinternals Process Explorer检查它是否具有强大的特权(例如)。

为了回答您仍然无法访问某些进程的问题,Windows提出了一种受保护的进程的概念,绝对不能从用户模式下访问它,即使运行为SYSTEM;该保护由内核实施。只有基本的系统服务才能获得这种保护。一个这样的过程是csrss


2
许多防病毒应用程序(包括Microsoft自己的防病毒应用程序)也受到保护。
qasdfdsaq '16

因为它是Windows不可或缺的组件,这 听起来像是一种在没有UAC提示的情况下利用admin特权启动恶意软件的方式……我想知道游戏如何通过内核来实现这种安全性。
CauseingUnderflowsEverywhere'Oct4

@CausingUnderflowsEverywhere为了篡改选择“整体Windows组件”的逻辑,恶意软件必须已经以管理员身份运行,尽管还有其他几种UAC绕过利用策略。另外,我相信应用程序信息服务(用户模式程序)负责处理海拔请求。
本N

1

我发现了此错误消息的另一个可能原因,当对“访问被拒绝”错误进行故障排除时,我从来没有想过要检查该错误消息。

背景

Microsoft从Windows 8开始引入了一种新的资源管理机制。当系统的资源需求量很大时,Windows可能会选择将某些进程置于“已挂起”状态,以便为其他进程释放其资源。挂起的进程实际上是冻结的,直到系统取消挂起为止,这通常是响应用户启动与该进程的交互而发生的。无论出于何种原因,任务管理器均不受此机制的限制,实际上它具有特别意外的行为:当Windows将taskmgr.exe置于“挂起”状态时,其“更新速度”设置也会更改,无论您设置了什么设置到,到暂停。但是,当取消暂停该过程时,“更新速度”设置不会恢复到其原始值-它会保留在“ 暂停”设置中!

错误原因

当任务管理器的“更新速度”设置为暂停时,“详细信息”选项卡可以显示不再运行的进程。如果是这种情况,并且您尝试在这样一个不存在的进程上“结束进程”,则会收到“访问被拒绝”错误。(短期)解决方案*是在尝试结束进程之前,确保将“ Update Speed”设置为其他值,例如Normal

 

*关于防止“更新速度”设置首先切换为“ 暂停 ” (这会不断发生)的长期解决方案...我仍在寻找那个!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.