ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

第六章 提权技术---BypassUAC(基于白名单程序的Bypass UAC)

2021-09-25 12:35:22  阅读:279  来源: 互联网

标签:BypassUAC exe --- 进程 CompMgmtLauncher 注册表 白名单 UAC


一、UAC

触发UAC时,系统会创建一个consent.exe进程,该进程通过白名单和用户选择来判断是否创建管理员权限进程。请求进程将要请求的进程cmdline和进程路径通过LPC接口传递给appinfo和RAiLuanchAdminProcess函数。该函数首先验证路径是否在白名单中,并将结果传递给consent.exe进程,该进程验证请求进程的签名以及发起者的权限是否符合要求后,决定是否弹出UAC窗口让用户确认。这个UAC窗口会创建新的安全桌面,屏蔽之前的界面。同时这个UAC窗口进程时系统权限进程,其他普通进程无法和其进行通信交互。用户确认之后,会调用CreateProcessAsUser函数以管理员身份启动请求的进程。

二、基于白名单程序的Bypass UAC

白名单程序可以通过DLL劫持、注入或是修改注册表执行命令的方式启动目标程序,实现Bypass UAC的操作。

三、实现过程、

选取CompMgmtLauncher.exe进行详细分析。
首先,直接在System32目录下运行CompMgmtLauncher.exe程序,这时并没有出现UAC弹窗,直接显示计算机管理的窗口界面。使用进程监控器Procmon.exe来监控CompMgmtLauncher.exe进程的所有行为。

分析发现,CompMgmtLauncher.exe进程会先查询注册表HKCU\Software\Classes\mscfile\shell\open\command中的数据,发现该路路径不存在后,继续查询注册表HKCR\mscfile\shell\open\command(Default)中的数据并读取,该注册表路径中存储着mmc.exe进程的路径信息。
所以我们可以在HKCU\Software\Classes\mscfile\shell\open\command中写入数据。可以手动添加该注册表路径,并设置默认数据为C:\Windows\System32\cmd.exe,并运行CompMgmtLauncher.exe。

四、测试结果

这里在windows11中进行测试,发现windows defender将这标记为bypass uac,并且不是以管理员权限运行的cmd。故不在演示。

标签:BypassUAC,exe,---,进程,CompMgmtLauncher,注册表,白名单,UAC
来源: https://www.cnblogs.com/sakura521/p/15328148.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有