能力值:
( LV3,RANK:20 )
在线值:

|
-
-
151 楼
mb_maoshkto
片面了一点,这个库读倒是没什么问题,写有巨大的问题,据我测试,不是分页导致无法写入,而是虚拟机中它大部分的代码段都是没有映射物理地址的虚拟地址,这样你是没办法写入的,你可以随便打开一个记事本,什么都别 ...
可以hook的,但是要找对位置,作者有dma项目。写有例子,在同作者其他项目,可以自己研究 然后就是win系统有系统api可以强制要求内存不做分页
|
能力值:
( LV8,RANK:125 )
在线值:

|
-
-
152 楼
看看
|
能力值:
( LV2,RANK:10 )
在线值:

|
-
-
153 楼
大佬 有什么办法可以直接windows本机读雷电模拟器的内存啊而不是用so
|
能力值:
( LV2,RANK:10 )
在线值:

|
-
-
154 楼
good!
|
能力值:
( LV2,RANK:10 )
在线值:

|
-
-
155 楼
学习了
|
|
-
-
156 楼
666
|
能力值:
( LV2,RANK:10 )
|
-
-
157 楼
看看什么方法
|
能力值:
( LV2,RANK:10 )
在线值:
|
-
-
158 楼
66666
|
|
-
-
159 楼
感谢分享!
|
|
-
-
160 楼
看看什么方法
|
|
-
-
161 楼
mudebug
可以hook的,但是要找对位置,作者有dma项目。写有例子,在同作者其他项目,可以自己研究
然后就是win系统有系统api可以强制要求内存不做分页
1 | 已经试过了,如图,环境是win10,内存分页已经关闭,读取的虚拟地址是explorer.exe里面的.text段,只要没访问过这片内存,pte上是不会显示这个地址的分页的,找了很久这个问题也没解决,奇怪的点是如果你在虚拟机内,使用CE或者X64DBG,又或者你直接使用ReadProcessMemory这个函数,去读取一次这个虚拟地址,箭头上的那个失败地址[1E4BD125388]一模一样的地址上,就会挂上最新的分页
|

|
能力值:
( LV2,RANK:10 )
|
-
-
162 楼
看看什么方法
|
能力值:
( LV2,RANK:10 )
在线值:
|
-
-
163 楼
酷酷酷
|
能力值:
( LV2,RANK:10 )
|
-
-
164 楼
才
|
能力值:
( LV2,RANK:10 )
|
-
-
165 楼
看看什么方法
|
能力值:
( LV2,RANK:10 )
在线值:
|
-
-
166 楼
第一次看这种题材,看看什么东西,先谢谢师傅分享
|
|
-
-
167 楼
你的分享对大家帮助很大,非常感谢
|
能力值:
( LV2,RANK:10 )
在线值:
|
-
-
168 楼
学习一下内容
|
能力值:
( LV2,RANK:10 )
|
-
-
169 楼
路过看看
|
|
-
-
170 楼
看看什么方法
|
能力值:
( LV2,RANK:10 )
|
-
-
171 楼
感谢你的贡献,论坛因你而更加精彩!
|
能力值:
( LV2,RANK:10 )
|
-
-
172 楼
看看 学习一下
|
|
-
-
173 楼
pcileech办法的做法是插入shellcode到内核中启动一个工作线程 工作线程的上下文是在之前挂钩分配的一个非分页内存(tdKMDDATA) 通过这个非分页内存(tdKMDDATA)和外的程序进行直接读写通讯 实现这些功能
#define KMD_CMD_VOID 0xffff #define KMD_CMD_COMPLETED 0 #define KMD_CMD_READ 1 #define KMD_CMD_WRITE 2 #define KMD_CMD_TERMINATE 3 #define KMD_CMD_MEM_INFO 4 #define KMD_CMD_EXEC 5 #define KMD_CMD_READ_VA 6 #define KMD_CMD_WRITE_VA 7 #define KMD_CMD_EXEC_EXTENDED 8 这样就非常巧妙的达到了一些常用功能具体的实现可以参考tdKMDDATA 这个结构体
|
能力值:
( LV2,RANK:10 )
在线值:
|
-
-
174 楼
嗯,看看东西再评论
|
能力值:
( LV2,RANK:10 )
在线值:
|
-
-
175 楼
感谢楼主的分享
|
|
|