|
|
|
|
|
[求助]被映射的驱动如何获取自身的基址和大小?
WindBlow小迪 EXTERN_C IMAGE_DOS_HEADER __ImageBase; 不确定R0可以不试了一下 一引用这个头文件就很多报错 R0应该不行 |
|
[原创]通过修改物理内存实现跨进程内存读写
由于EAC的加密 所以如果想要读取被EAC的加密的游戏的话 需要另外获取进程的真实CR3(这个我已经实现了) 但是还存在一个问题,就是用MmCopy读取被EAC保护的内存时,会十分卡顿,于是我就对ReadPhysicalAddress函数做了一些修改,尽量不去使用MmCopy auto readphysaddressV2(PVOID address, PVOID buffer, SIZE_T size, SIZE_T* read) -> NTSTATUS { if (!address) return STATUS_UNSUCCESSFUL; PHYSICAL_ADDRESS physAddr; physAddr.QuadPart = (LONGLONG)address; PVOID virAddr = MmGetVirtualForPhysical(physAddr); if (!virAddr) { return STATUS_UNSUCCESSFUL; } RtlCopyMemory(buffer, virAddr, size); *read = size; return STATUS_SUCCESS; } 这样改了之后 我读取其他进程没问题,但是读被EAC保护的游戏的话,就没法获取正确的值,有大佬知道是为什么吗? |
|
[原创] 不调用系统api读写物理内存的方法
x64好像不能用__invlpg |
|
[原创]x64 windows从MmPfnData中枚举进程以及真实CR3
enum_process_dirbase当在被映射的驱动中调用这个方法就无法获取dirbase,很难受,各项参数函数地址都是正确的,可能是MmGetPhysicalMemoryRanges()的返回出了问题,不知道能不能解决 |
|
|
|
[求助]R0如何传出字符串到R3
解决方案一: strcpy |
|
[求助]内核Hook函数 在KeStackAttachProcess时无法读写指针参数
sidyhe 切进程就会切页表, R0地址所有进程共享, R3地址仅限当前进程 解决方法 1. 像你这样在内核态做次拷贝 2. 使用MDL把此内存重新映射为内核地址, 再切懂了 感谢大牛 看起来第二种更吃力且麻烦 还是用次拷贝吧 |
|
[求助]内核Hook函数 在KeStackAttachProcess时无法读写指针参数
是的 在R3调用这个函数 |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值