xtynkwxf 发表于 2021-4-12 11:49

64位python有办法获取内存模块地址吗?

32位python可以通过这行代码获取模块地址:ntdll.NtWow64ReadVirtualMemory64(int(self.hProcess), addr, ret, BufferLength, 0)
64位python用不了这行代码,报错!kernel32.dll中有方法做到吗?

苏紫方璇 发表于 2021-4-12 12:33

64位读64的可以直接用ReadProcessMemory这个吧

xtynkwxf 发表于 2021-4-12 14:21

苏紫方璇 发表于 2021-4-12 12:33
64位读64的可以直接用ReadProcessMemory这个吧
这是可以读,但我不知道要怎么写才能读模块("VEGAPrint64.exe")这种读成地址

xtynkwxf 发表于 2021-4-12 14:27

苏紫方璇 发表于 2021-4-12 12:33
64位读64的可以直接用ReadProcessMemory这个吧

用ReadProcessMemory读内存地址的内容我知道,但把内存模块如"VEGAPrint64.exe"这种转换成地址不会弄

苏紫方璇 发表于 2021-4-12 14:40

python我不太懂,楼主可以参考下这个,有模块部分的
进程枚举技术 - M-Anonymous - 博客园
https://www.cnblogs.com/M-Anonymous/p/9710921.html

xtynkwxf 发表于 2021-4-12 15:23

苏紫方璇 发表于 2021-4-12 14:40
python我不太懂,楼主可以参考下这个,有模块部分的
进程枚举技术 - M-Anonymous - 博客园
https://www.c ...

进去看了一下,我基础比较差,没看懂,不过还是谢谢版主大大的指引,谢谢!

Ceylon 发表于 2021-4-12 17:40

本帖最后由 Ceylon 于 2021-4-12 17:42 编辑

xtynkwxf 发表于 2021-4-12 15:23
进去看了一下,我基础比较差,没看懂,不过还是谢谢版主大大的指引,谢谢!
这个博客是按照C的方式写的,对应到Python就是用ctypes库来转换。传参方式按照博客里面讲的参数类型和参数顺序来传参就行了。
至于Python的数据类型怎么和C的数据类型对应上,建议找ctypes库相关的文档来阅读。
参考官方文档:https://docs.python.org/zh-cn/3.8/library/ctypes.html

xtynkwxf 发表于 2021-4-12 21:33

Ceylon 发表于 2021-4-12 17:40
这个博客是按照C的方式写的,对应到Python就是用ctypes库来转换。传参方式按照博客里面讲的参数类型和参 ...

谢谢指引,研究研究!
页: [1]
查看完整版本: 64位python有办法获取内存模块地址吗?