能力值:
( LV13,RANK:385 )
|
-
-
2 楼
收藏研究的时候再看.
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
此处应该有掌声  无私分享啊
|
能力值:
( LV5,RANK:60 )
|
-
-
4 楼
总结一下,通过修改MmPfnDatabase中MMPFN的PteAddress过MmMapIoSpace的地址判断
|
能力值:
( LV4,RANK:50 )
|
-
-
5 楼
感谢分享!
|
能力值:
( LV10,RANK:160 )
|
-
-
6 楼
mark
|
能力值:
( LV2,RANK:15 )
|
-
-
7 楼
mark
|
能力值:
(RANK:135 )
|
-
-
8 楼
mark,感谢分享!
|
能力值:
( LV5,RANK:60 )
|
-
-
9 楼
牛逼
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
666
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
MMPFN PteAddress为啥是一样的
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
mark
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
ZwCopyAll
MMPFN PteAddress为啥是一样的
应该是印度程序员人为设计的
|
能力值:
( LV2,RANK:15 )
|
-
-
14 楼
PteAddress 应该是在一个页面上
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
(1)0xffff89c4e2713898转换成二进制是1111111111111111 100010011 100010011 100010011 100010011 100010011000。100010011也就是PXE_SELFMAP_INDEX,转换成16进制是0x113。cr3的pte地址是由PXE_SELFMAP_INDEX计算出来的,所以每个进程的cr3的pte地址都相同。 (2)MmMapIoSpace的这种过滤可能是为了防止自映射页面对应的物理页面被用户修改后用来读写任意内存。064K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6&6N6i4k6S2N6r3W2S2i4K6u0r3M7r3q4Y4k6g2)9J5k6s2c8S2j5X3I4W2i4K6u0V1k6i4S2H3L8r3!0A6N6r3q4@1K9h3!0F1i4K6u0r3j5X3I4G2j5W2)9J5c8U0b7@1y4X3q4V1y4U0q4T1j5$3x3H3j5U0c8W2y4X3g2X3j5e0W2V1y4X3j5H3y4o6c8U0j5K6g2V1k6h3q4U0x3e0c8W2z5h3q4S2x3h3y4Q4x3V1k6U0N6X3g2Q4x3X3b7J5x3o6p5$3i4K6u0V1y4K6t1#2y4g2)9J5k6s2m8@1k6g2)9J5c8X3y4$3k6g2)9J5k6o6t1H3x3e0k6Q4x3X3b7%4x3U0f1#2i4K6u0V1M7s2c8W2i4K6u0r3L8h3q4A6L8W2)9J5k6h3x3`.
|
能力值:
( LV5,RANK:65 )
|
-
-
16 楼
感谢!真的很有用!
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
为什么是 CR3*0x30,可以解惑一下么
|
能力值:
( LV2,RANK:10 )
|
-
-
18 楼
|
能力值:
( LV3,RANK:20 )
|
-
-
19 楼
佬门能解答一下:PteAddress:0xffff89c4e2713898 转成虚拟地址 ffff89c4e2713000,发现没,他在Pte范围之内,这就是他的判定的原理,在这个范围之内,则判定失败。这句话什么意思吗 不是很明白谁和谁比较
|
能力值:
( LV2,RANK:10 )
|
-
-
20 楼
|
能力值:
( LV1,RANK:0 )
|
-
-
21 楼
ZwCopyAll
MMPFN PteAddress为啥是一样的
个人理解是一个物理页帧只有在被Unmap时需要知道它的表项的地址,然后寻址到位,给他删掉。PML4表基址本身就是虚拟映射寻址的过程,map或者unmap都没有意义,或者说就跟lz说的一样,本身这个CR3存的地址就是禁止去map的,用不到unmap,所以就这样搞了一个类似条件判断的标志数
最后于 2025-2-28 05:17
被FishAndCat编辑
,原因:
|
|
|