能力值:
( LV2,RANK:10 )
|
-
-
101 楼
6
|
能力值:
( LV2,RANK:10 )
|
-
-
102 楼
学习了
|
能力值:
( LV3,RANK:20 )
|
-
-
103 楼
牛逼牛逼牛逼牛逼牛逼
|
能力值:
( LV8,RANK:125 )
|
-
-
104 楼
学习了
|
能力值:
( LV1,RANK:0 )
|
-
-
105 楼
匠心手搓优质好文
|
能力值:
( LV2,RANK:10 )
|
-
-
106 楼
666666666666
|
能力值:
( LV2,RANK:10 )
|
-
-
107 楼
666
|
能力值:
( LV1,RANK:0 )
|
-
-
108 楼
1
|
能力值:
( LV1,RANK:0 )
|
-
-
109 楼
666
|
能力值:
( LV1,RANK:0 )
|
-
-
110 楼
1
|
能力值:
( LV1,RANK:0 )
|
-
-
111 楼
经过多次测试 使用 PsPicoDispatchException 注册异常会导致PG . 挂壁留下了眼泪
|
能力值:
( LV3,RANK:37 )
|
-
-
112 楼
学习了
|
能力值:
( LV2,RANK:10 )
|
-
-
113 楼
匠心手搓优质好文
|
能力值:
( LV1,RANK:0 )
|
-
-
114 楼
6
|
能力值:
( LV1,RANK:0 )
|
-
-
115 楼
感谢分享
|
能力值:
( LV2,RANK:10 )
|
-
-
116 楼
异常都能抢,太牛了
|
能力值:
( LV2,RANK:10 )
|
-
-
117 楼
mark
|
能力值:
( LV1,RANK:0 )
|
-
-
118 楼
太强了.学习一下.
|
能力值:
( LV2,RANK:10 )
|
-
-
119 楼
666
|
能力值:
( LV2,RANK:10 )
|
-
-
120 楼
学习学习
|
能力值:
( LV1,RANK:0 )
|
-
-
121 楼
多谢分享
|
能力值:
( LV2,RANK:10 )
|
-
-
122 楼
虽然对大家来说这些应该已经是老黄历了,不过还是感谢总结。
关于这种复制一份代码做hook的方法,可以参考一下 gum relocator 的处理。不过这个只能保证复制出来的代码语义正确,做不到无痕。至于为什么做不到,扩展一下都可以单独成文了,此处就不多废话。
要读取从 prologue 保存的volreg,除了写死和动态disasm还有另一种做法,从 RUNTIME_FUNCTION 读 UNWIND_CODE(其实就是 RtlVirtualUnwind,需要目标平台支持比如 amd64/arm64)。
|
能力值:
( LV7,RANK:100 )
|
-
-
123 楼
~self
虽然对大家来说这些应该已经是老黄历了,不过还是感谢总结。
关于这种复制一份代码做hook的方法,可以参考一下 gum relocator 的处理。不过这个只能保证复制出来的代码语义正确,做不到无 ...
感谢建议,利用x64 .pdata中的异常信息来解析序言代码,这个思路确实值得一试,当时做PoC的时候,针对的是某些小范围的具体系统版本,所以堆栈解析部分直接硬编码了
|
能力值:
( LV1,RANK:0 )
|
-
-
124 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
125 楼
6666666666
|
|
|