首页
社区
课程
招聘
[求助]win10 x64下如何去掉用户态dll数字签名验证
发表于: 2018-12-1 09:07 5803

[求助]win10 x64下如何去掉用户态dll数字签名验证

2018-12-1 09:07
5803
win10 x64下修改系统dll 如何bypass微软signature的check
已经patch了PG但是
目前发现每次错误都发生在
fffff80c`8b11ee82 e8f56c0000      call    CI!CipProcessSIPolicyLogs (fffff80c`8b125b7c)
fffff80c`8b11ee87 e9bb000000      jmp     CI!CiValidateImageHeader+0x987 (fffff80c`8b11ef47)
fffff80c`8b11ee8c 81fb280400c0    cmp     ebx,0C0000428h ;signature error https://neosmart.net/wiki/0xc0000428/
fffff80c`8b11ee92 741c            je      CI!CiValidateImageHeader+0x8f0 (fffff80c`8b11eeb0)
fffff80c`8b11ee94 81fb030600c0    cmp     ebx,0C0000603h
fffff80c`8b11ee9a 7414            je      CI!CiValidateImageHeader+0x8f0 (fffff80c`8b11eeb0)
fffff80c`8b11ee9c 81fb050600c0    cmp     ebx,0C0000605h
fffff80c`8b11eea2 740c            je      CI!CiValidateImageHeader+0x8f0 (fffff80c`8b11eeb0)
fffff80c`8b11eea4 81fb0300ebc0    cmp     ebx,0C0EB0003h
fffff80c`8b11eeaa 0f855cffffff    jne     CI!CiValidateImageHeader+0x84c (fffff80c`8b11ee0c)

貌似需要修改ci.dll里的
CipValidatePageHash 和 CipValidateFileHash

各位大牛有没有什么建议?

非常感谢

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

最后于 2018-12-4 06:33 被blknit编辑 ,原因:
收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 12
活跃值: (67)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
自己顶一下。有没有别的方法
2018-12-3 11:02
0
雪    币: 12
活跃值: (67)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
自己顶一下。需要修改g_CiOptions么?
2018-12-4 07:55
0
雪    币: 4006
活跃值: (731)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
4
当年逆向某数字知道的,应用层hook NtCreateSection 替换掉handle(这个handle在内核创建或打开),应用场景是注入dll 在dll加载回调中实现.
2018-12-10 16:34
0
雪    币: 12
活跃值: (423)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
也可以把civalid函数返回正确的 
2018-12-11 19:13
0
雪    币: 12
活跃值: (67)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
MaMy 也可以把civalid函数返回正确的
ok 解决了,就是 楼上 的方法。
2018-12-28 08:41
0
雪    币: 231
活跃值: (2631)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
7
6666
2018-12-30 14:06
0
雪    币: 212
活跃值: (855)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
blknit ok 解决了,就是 楼上 的方法。
请问具体如何修改?我把两个函数直接返回0,Ci报错。已过pG,去Ci自校验。
2018-12-31 18:26
0
雪    币: 4006
活跃值: (731)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
9
最简单的 eprocess修改两个标志位
+0x6b8 WnfContext       : Ptr64 Void
   +0x6c0 ServerSilo       : Ptr64 _EJOB
   +0x6c8 SignatureLevel   : UChar -<<<<<
   +0x6c9 SectionSignatureLevel : UChar -<<<<<
2018-12-31 19:20
0
雪    币: 4006
活跃值: (731)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
10
另外 win10还会遇到一个问题,就是会提示ci错误的进程,有一个eprocess的标志位决定是否可以申请内存 还是什么的..具体忘了,好像叫什么codexxxx
2018-12-31 19:23
0
游客
登录 | 注册 方可回帖
返回
//