首页
学习
活动
专区
圈层
工具
发布

在 Windows 系统上降低 UAC 权限运行程序(从管理员权限降权到普通用户权限)

对于部分文件夹(ProgramData),管理员权限创建的文件是不能以非管理员权限修改和删除的。 然而,一个进程运行之后启动的子进程,会继承当前进程的 UAC 权限;于是有时我们会有降权运行的需要。...} 此代码如果在 .NET Core 中编写,需要额外安装 Windows 兼容包:Microsoft.Windows.Compatibility。...方法三:在启动进程时传入用户名和密码 ProcessStartInfo 中有 UserName 和 Password 属性,设置此属性可以以此计算机上的另一个用户身份启动此进程。...方法四:使用 Shell 进程的 Access Token 来启动进程 此方法需要较多的 Windows API 调用,我没有尝试过这种方法,但是你可以自行尝试下面的链接: c# - How do you...- Super User High elevation can be bad for your application: How to start a non-elevated process at the

3.3K40

ATT&CK视角下的红蓝对抗之UAC用户账户控制

UAC原理概述 用户帐户控制(User Account Control,UAC)为Windows Vista中所推出的安全技术之一,其主要特点在于通过限制应用软件对系统层级的访问,从而改进Windows...UAC级别定义 用户账户控制UAC最早出现在Windows Vista上面,当时只有关闭和开启UAC的选项,在后续的Windows 7操作系统中UAC进行了更新,增加了UAC白名单,并且更新了4...个等级取代了Windows Vista只有开和关的功能,Windows 7操作系统允许用户根据自身应用场景需求动态调整UAC的安全级别,Windows 7系统为用户定义了如下4个安全级别。...1)第一级别(最高级别) 相当于Windows Vista中的UAC,即对所有改变系统设置的行为进行提醒(例如:安装应用程序、更改windows设置),如图1-1 所示。...UAC虚拟化 UAC虚拟化也被称为重定向操作 当用户权限没有达到程序要求的权限,就会进行重定向操作,虚拟化由俩个部分构成文件虚拟化和注册表虚拟化。

82810
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Windows 中的 UAC 用户账户控制

    阅读本文,你可以初步了解 Windows 上的 UAC 用户账户控制机制。本文不会涉及到 UAC 的底层实现原理和安全边界问题。...image.png Windows Vista 开始引入了 UAC,不过在 Windows Vista 上只有两种 UAC 设置——开启和关闭。...Windows Vista 的 UAC 一直饱受诟病就是因为这种情况下的 UAC 提示是非常频繁的(而且以前的程序迁移到不需要管理员权限需要时间)。...无论是 Windows Vista 还是 Windows 7,一旦你将 UAC 设置拖到最底,那么此时 UAC 将彻底关闭。如果你是管理员账户,那么运行的程序都将以管理员权限运行。...完整性级别(Integrity Level) 从 Windows Vista 开始,进程在创建的时候,可以得到一个访问令牌(Access Token),这个令牌有四个完整性级别: System(系统)

    2.6K10

    SeLoadDriverPrivilege 在提权中的应用

    UAC 对权限的限制 UAC 和 windwos 访问令牌 windows 访问令牌(access token),与用户所执行的所有程序相关联,决定用户能够访问哪些资源。...自从 Windows 2000 开始出现了受限令牌(restricted token,直到 vista 才开始使用受限的令牌去运行大多数程序,也就是 UAC) ,它只有访问部分资源的权限。...vista 之后的系统,用户登陆以后会获得两个令牌,一个受限的和一个不受限的,受限的令牌用来运行绝大多数程序,除非用户主动用不受限的令牌运行程序,这样就更安全了。...UAC(User Account Contrl),是 windows vista 及更高版本操作系统中采用的一种控制机制。...其表现是通知用户是否对应用程序使用硬盘驱动器和系统文件授权,以达到帮助阻止恶意程序损坏系统的效果。 过了 UAC 也就获取到不受限的访问令牌了。

    2.8K00

    CS学习笔记 | 12、特权提升

    0x00 用户账户控制 自 Windows vista 开始,Windows 系统引进了用户账户控制机制,即 UACUser Account Control机制,UAC 机制在 Win 7中得到了完善。...UAC 与 UNIX 中的 sudo 工作机制十分相似,平时用户以普通权限工作,当用户需要执行特权操作时,系统会询问他们是否要提升权限。...此时系统用户可分为以下三种等级: 高:管理员权限 中:一般用户权限 低:受限制的权限 使用whoami /groups命令可以看到当前用户所在的组以及权限,使用net localgroup administrators...elevate:将任意用户的权限提升至系统权限,适用于2018年11月更新之前的 Win 7 和 Win 10 系统。 getsystem:将本地高级管理员权限提升至系统权限。...0x03 Spawn As 的使用 首先,右击待提权的会话,选择Access --> Spawn As,输入目标系统用户身份信息,其中域信息填写一个“点”代表本地用户,监听器这里选择的 SMB 监听器,

    75320

    windows UAC 浅谈及绕过

    非交互式登陆(例:net user、访问共享文件) 用户双击运行一个程序都会拷贝“explorer.exe”的Access Token 用户注销后系统将会使主令牌切换到模拟令牌,不会将令牌清除,只会在重启机器后才会清除...更改系统保护或者高级系统设置 五、UAC触发流程 在触发 UAC 时,系统会创建一个consent.exe进程,该进程通过白名单程序和用户选择来判断是否创建管理员权限进程。...这个UAC框会创建新的安全桌面,屏蔽之前的界面。同时这个UAC框进程是SYSTEM权限进程,其他普通进程也无法和其进行通信交互。...Yuubari 会生成一个UacInfo64.exe,可以快速查看系统的UAC设定信息以及所有可以利用的程序和COM组件,会在同一目录下生成一个log文件记录所有输出结果。 ?...这里只是拿cmstp举例,可以用来绕过UAC的白名单有很多 3、利用com接口Bypass UAC COM提升名称(COM Elevation Moniker)技术允许运行在用户帐户控制(UAC)下的应用程序用提升权限的方法来激活

    8.4K21

    可执行文件名中包含 install 或 setup

    在 Vista+ 的操作系统下任务栏右键该程序缺少「将此程序锁定到任务栏」和软件名同名项。 程序名 运行时任务栏右键 a.exe ? setup.exe ?...你的程序没打算要求管理员权限的,但是运行的时候却弹 UAC 了。 完全相同的两个 EXE 文件,名字不一样: ?...PCA relies on the User Account Control (UAC) feature in Windows Vista and Windows Server 2008 to know...: Standard User Changes 解决方案 问题 1: 如下三项任选其一: 一、给程序改个名字,不要包含「install」、「update」和「setup」字样。...问题 2 和 3: 这是 Windows Vista+ 系统对「安装包」的「特殊待遇」,如果你正在做安装包,那你应该不在乎这些;如果你正在做的不是「安装包」,那么将程序改名吧!

    88210

    BypassUAC

    常见的利用方式有: DLL注入(RDI技术),一般注入到常驻内存的可信进程,如:explorer DLL劫持,常和注册表配合使用达到劫持目的 伪装进程PEB绕过UAC 上面在利用COM接口的ShellExec...右键查看CMSTPLUA组件的Elevation属性: ? 这里的Enabled和Auto Approval值都是True表示这个组件可以用来绕过UAC认证,这是第一点。...除了通过上面的方式在OleView中手动去找,还可以通过UACMe项目提供的Yuubari工具快速查看系统UAC设定信息以及所有可以利用的程序和COM组件,使用方法如下: 使用VS2019加载Yuubari...net为了跨平台,这里类似,同样有一个中间语言的文件,但不是class了,而是IL。 通过修改IL文件,也可以导出dll函数。...PoshC2 .NET Covenant,网页版的C2 其他参考 T1088

    2.6K30

    利用Com组件绕过UAC

    Com组件绕过UAC是一个很古老的话题了,这边以UACMe项目中索引为41的方法为例,看一下如何使用Com组件绕过UAC。...绕过,简单来说有两个要求: elevation属性启用,且开启Auto Approval; COM组件中的接口存在可以命令执行的地方,例如ICMLuaUtil的ShellExec; 而这两个条件我们一般都可以使用...OleViewDotNet和IDA来进行查看。...但是在执行时还是触发了UAC。 这是因为:如果执行COM提升名称代码的程序身份是不可信的,还是会触发UAC弹窗;若是可信程序,则不会触发UAC弹窗。因此,必须使这段代码在WIndows可信程序中运行。...但本质还是校验的PEB,把CommandLine和imagepath修改为指定进程的即可。 其代码中也有相关实现。

    2K30
    领券