首页
社区
课程
招聘
[分享]任务管理器中右键菜单,“UAC虚拟化”菜单的“坑”。
发表于: 2024-11-3 06:52 4243

[分享]任务管理器中右键菜单,“UAC虚拟化”菜单的“坑”。

2024-11-3 06:52
4243

(刚发原贴内容时,发现不能加表情,以为重新编辑一下贴子,进入高级模式就可以加表情了,结果还是没有找到)


抽空分析了任务管理器的“结束进程树”功能,并实现了后(以前不做这个功能,以为是有什么相关的专用 API,后来分析了任务管理器才发现没有,它考虑得很全面,感觉是系统中出现多个相同PID的进程也考虑了,个人感觉不会出现这个情况,先按任务管理器的方法来写吧, 还有,个人感觉WIN 7 任务管理器,当时按理是按兼容XP等旧系统来写的,部份进程访问权限方面,在 WIN 10 上不适用了)。


  后来又无聊,看看进程方面有什么功能,任务管理器中有的,我未做过的,后来发现,有一个“UAC虚拟化”菜单。给我的第一感觉就是,只要这个菜单如果能启用,一点就可以启用“UAC虚拟化”。因为有定义VIRTUALIZATION_ENABLED 这个枚举值。(我本身对UAC虚拟化不了解,以前只做过检测进程是否启用了“UAC虚拟化”。


所以把整个系统所有进程都点了右键菜单来测试,看看有什么进程可以让这个禁用状态的右键菜单可用,结果发现,没有一个进程是能让这个菜单激活的,就是说,这个菜单一直是禁用状态。


后来分析了一下 Win 7 任务管理器相关实现,结果发现,点菜单时,疑似传入的值,是 0(VIRTUALIZATION_UNKNOWN), 相关调用是SetTokenInformation(hToken, TokenVirtualizationEnabled, 0), 而不是我所想的 SetTokenInformation(VIRTUALIZATION_ENABLED),后来不断分析,都没有找到有直接调用 VIRTUALIZATION_ENABLED

 

  只找到了以下线索:


     1、从它保存的进程信息数组指针中,查询这个进程的一个枚举值,如果是 VIRTUALIZATION_UNKNOWN 或 VIRTUALIZATION_NOTALLOWED, 把这个菜单设置为禁用状态,相关调用:EnableMenuItem(“UAC虚拟化”菜单,MF_GRAYED or MF_DISABLED or MF_BYCOMMAND)。


     2、如果这个枚举值是 VIRTUALIZATION_ENABLED,为这个右键菜单增加“选中标记” ,CheckMenuItem(MF_CHECKED),没有发现激活菜单的调用。

  

    但又疑似做了菜单点击的相关实现细节:

       如果点击这个“UAC虚拟化”菜单,调用 SetTokenInformation(hToken, TokenVirtualizationEnabled, 0),设置为“未知状态?并保存这个进程指向的数据的自定义虚拟化枚举值为“”。(这样只有它内部生效?)


type   // 虚拟化枚举值

{$Z4}  

  TVIRTUALIZATION = (

    VIRTUALIZATION_UNKNOWN    = 0, // 未知

    VIRTUALIZATION_NOTALLOWED = 1, // 不允许

    VIRTUALIZATION_DISABLED   = 2, // 已禁用

    VIRTUALIZATION_ENABLED    = 3,   // 已启用

    VIRTUALIZATION_COUNT

);

{$Z1}


//疑似菜单点击的相关功能实现:

function xxVirtualization(const dwPID : DWORD; {忽略CreateTime : LONGLONGconst Virt : TVIRTUALIZATION): DWORD;


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

最后于 2024-11-3 19:50 被kagayaki编辑 ,原因:
收藏
免费 55
支持
分享
最新回复 (18)
雪    币: 1652
活跃值: (5365)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2

还有这个贴子的“点赞 / 回复可见”功能好像有问题,我在其他的浏览器输入网址就可以看到所有内容了,都没有登录账号。

加上现在这个贴子访问量有几百人,但只有几个人点赞,所以感觉是“点赞 / 回复可见”这个功能有问题。

最后于 2024-11-3 12:36 被kagayaki编辑 ,原因:
2024-11-3 12:35
1
雪    币: 589
活跃值: (1148)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
非常棒的帖子,学习了~
2024-11-4 16:15
0
雪    币: 73
活跃值: (811)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
还真是第一次注意这个uac
2024-11-4 16:33
0
雪    币: 1652
活跃值: (5365)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
frendguo 非常棒的帖子,学习了~
写这个帖子是希望大家不用像我这样白白浪费一晚时间
2024-11-4 19:42
0
雪    币: 3751
活跃值: (3156)
能力值: ( LV8,RANK:147 )
在线值:
发帖
回帖
粉丝
6
mark
2024-11-5 12:01
0
雪    币: 888
活跃值: (860)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
很棒的帖子
2024-11-5 23:05
0
雪    币: 890
活跃值: (1790)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
mark 学习
2024-11-6 14:51
0
雪    币: 94
活跃值: (475)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
mark 学习
2024-11-7 15:13
0
雪    币: 223
活跃值: (571)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
mark 学习
2024-11-8 09:13
0
雪    币: 238
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
11
看看技术贴
2024-11-9 15:14
0
雪    币: 1642
活跃值: (4733)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
12
牛逼啊啊啊
2024-11-10 11:51
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
13
牛逼666
2024-11-15 14:02
0
雪    币: 206
活跃值: (458)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
Mark
2024-11-15 19:20
0
雪    币: 230
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
15
这是什么技术
2024-11-17 22:50
0
雪    币: 203
活跃值: (1172)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
16
来看看 新技术
2024-11-18 08:27
0
雪    币: 0
活跃值: (439)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
看看 
2024-11-19 11:27
0
雪    币: 11213
活跃值: (17786)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
看一看后续的内容
2024-11-19 19:39
0
雪    币: 40
活跃值: (95)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
2024-11-20 14:36
0
游客
登录 | 注册 方可回帖
返回
//