搜索
楼主: gailium

[讨论] 关于explorer签名验证 [复制链接]

Rank: 2Rank: 2

UID
1976477
帖子
191
PB币
493
贡献
0
技术
0
活跃
382
发表于 2022-1-18 19:36:15 |显示全部楼层
快御云安全
laomms 发表于 2022-1-18 19:13
既然因为签名自校检,静态改变了,能不能通过hook LoadIcon实现动态修改。
因为自校检,这个hookdll注入ex ...

嗯,hook LoadIcon()的思路没问题,感觉可以一试。只是ci里面有基于内存页的扫描,专门针对动态patch的,有被拦下来的可能。

Rank: 7Rank: 7Rank: 7

UID
4880329
帖子
1180
PB币
38
贡献
0
技术
2
活跃
329
发表于 2022-1-18 20:56:34 |显示全部楼层
zedous 发表于 2022-1-18 19:10
修改ci.dll之前,ci.dll本身也有校验的,而且WIN8以后不允许通过测试模式绕过。ci的校验在引导程序里面具 ...

这个加上upgdsed(github上搜)就是绝妙了!!!

Rank: 7Rank: 7Rank: 7

UID
4880329
帖子
1180
PB币
38
贡献
0
技术
2
活跃
329
发表于 2022-1-18 20:57:55 |显示全部楼层
zedous 发表于 2022-1-18 19:36
嗯,hook LoadIcon()的思路没问题,感觉可以一试。只是ci里面有基于内存页的扫描,专门针对动态patch的, ...

这个explorerpatcher可以添加这个功能,我要的是静态修改方法

Rank: 7Rank: 7Rank: 7

UID
4880329
帖子
1180
PB币
38
贡献
0
技术
2
活跃
329
发表于 2022-1-19 15:43:29 |显示全部楼层
zedous 发表于 2022-1-18 18:02
可以看看Code Integrity的系统日志,应该还是校验失败了。如果只是想绕过Force Integrity可以改PE头去掉这 ...

屏幕截图 2022-01-19 154124.png

请勿使用多线程下载工具下载论坛附件!


确实是explorer的锅,taskmgr没这毛病

Rank: 2Rank: 2

UID
1976477
帖子
191
PB币
493
贡献
0
技术
0
活跃
382
发表于 2022-1-19 16:22:58 |显示全部楼层
gailium 发表于 2022-1-19 15:43
确实是explorer的锅,taskmgr没这毛病

确切的说,是UWP(Modern UI)的锅(Modern UI)。taskmgr没有UWP组件,所以没有第二层检查了。 Screenshot 2022-01-19 161417.png

请勿使用多线程下载工具下载论坛附件!



explorer的话,替换之后如果仅以文件浏览器的模式启动,不加载UWP部分(explorer.exe /e),是可以起来的




1

查看全部评分

Rank: 7Rank: 7Rank: 7

UID
4880329
帖子
1180
PB币
38
贡献
0
技术
2
活跃
329
发表于 2022-1-19 16:41:52 |显示全部楼层
zedous 发表于 2022-1-19 16:22
确切的说,是UWP(Modern UI)的锅(Modern UI)。taskmgr没有UWP组件,所以没有第二层检查了。

怎么不修改ci仅破 解modernui?22000的winload好像不好整

Rank: 2Rank: 2

UID
1976477
帖子
191
PB币
493
贡献
0
技术
0
活跃
382
发表于 2022-1-19 16:59:37 |显示全部楼层
gailium 发表于 2022-1-19 16:41
怎么不修改ci仅破 解modernui?22000的winload好像不好整

modernUI的验证涉及某些UWP相关API调用,必须要有微软的有效签名才能成功。比如音量调节、飞行模式启停的时候出现的那些flyout浮动窗口,需要绑定特定的ZBID,它们要求exe文件同时具有Force Integrity标志、Microsoft Windows签名以及.imrsiv区段:
QQ图片20220119165755.png

请勿使用多线程下载工具下载论坛附件!



而这些API内部的签名检查最终也是走到ci里面的。

Rank: 7Rank: 7Rank: 7

UID
4880329
帖子
1180
PB币
38
贡献
0
技术
2
活跃
329
发表于 2022-1-19 18:18:36 |显示全部楼层
zedous 发表于 2022-1-19 16:59
modernUI的验证涉及某些UWP相关API调用,必须要有微软的有效签名才能成功。比如音量调节、飞行模式启停的 ...

请问Github上有没有这样的项目?感觉肯定很难不然早有人发在论坛了

Rank: 2Rank: 2

UID
1976477
帖子
191
PB币
493
贡献
0
技术
0
活跃
382
发表于 2022-1-19 19:24:36 |显示全部楼层
gailium 发表于 2022-1-19 18:18
请问Github上有没有这样的项目?感觉肯定很难不然早有人发在论坛了

github上就算有可能也会被微软DMCA task down,而且万一被别有用心的人恶意利用了,作者也可能会受牵连。

Rank: 7Rank: 7Rank: 7

UID
4880329
帖子
1180
PB币
38
贡献
0
技术
2
活跃
329
发表于 2022-1-19 19:54:10 来自手机 |显示全部楼层
zedous 发表于 2022-1-19 19:24
github上就算有可能也会被微软DMCA task down,而且万一被别有用心的人恶意利用了,作者也可能会受牵连。

那请你能不能告诉我什么地方能找到这样的东东呢?

Rank: 2Rank: 2

UID
1976477
帖子
191
PB币
493
贡献
0
技术
0
活跃
382
发表于 2022-1-20 10:24:06 |显示全部楼层
gailium 发表于 2022-1-19 19:54
那请你能不能告诉我什么地方能找到这样的东东呢?

modernUI的签名验证,以及一些内核例程的签名验证(例如nt!ObRegisterCallbacks)最终还是会交给CI。关于CI的分析,网络上以及有无数文章了,善用搜索引擎。成品是不大可能有的,至少能用的最新版不会有,因为ci里面也涉及DRM保护内容的解码播放,不大可能随意放出来。而modernUI,目前只见过动态方法,例如ModernFlyouts项目。

Rank: 7Rank: 7Rank: 7

UID
4880329
帖子
1180
PB币
38
贡献
0
技术
2
活跃
329
发表于 2022-2-11 08:44:28 |显示全部楼层
zedous 发表于 2022-1-18 19:10
修改ci.dll之前,ci.dll本身也有校验的,而且WIN8以后不允许通过测试模式绕过。ci的校验在引导程序里面具 ...

ci.dll自校验已去除,请问接下来怎么改?是不是让这两个函数直接返回0

Rank: 2Rank: 2

UID
1976477
帖子
191
PB币
493
贡献
0
技术
0
活跃
382
发表于 2022-2-18 20:48:09 |显示全部楼层
gailium 发表于 2022-2-11 08:44
ci.dll自校验已去除,请问接下来怎么改?是不是让这两个函数直接返回0

yeah,如果你有办法让他正确返回0 的话

点评

gailium  另:explorer以win10的非uwp模式启动不用,所以也没有必要了  发表于 2022-2-18 20:54

Rank: 7Rank: 7Rank: 7

UID
4880329
帖子
1180
PB币
38
贡献
0
技术
2
活跃
329
发表于 2022-2-18 20:53:12 |显示全部楼层
zedous 发表于 2022-2-18 20:48
yeah,如果你有办法让他正确返回0 的话

返回0不就是 xor eax,eax

Rank: 2Rank: 2

UID
1976477
帖子
191
PB币
493
贡献
0
技术
0
活跃
382
发表于 2022-2-18 21:37:17 |显示全部楼层
gailium 发表于 2022-2-18 20:53
返回0不就是 xor eax,eax

没那么简单,段首直接33 C0貌似会蓝屏的·
回顶部
Copyright (C) 2005-2022 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛