所有人!
如何通过修改浏览器进程的内存来更改网页中显示的HTML字符串?
我的确很喜欢这个,但它没有用:
0x01960064。WriteProcessMemory到这个地址的“宝贝”。但在页面中,"google“的字符串并没有更改为”宝贝“。然后我去了0x01960064,这里已经是“宝贝”了。我又搜索了一遍“谷歌”,它在另一个地址,不再是0x01960064了。地址变了。它为什么这样工作?
发布于 2015-11-16 14:41:57
字符串可能是对象,因此可能是分配的堆。
堆可能由某些垃圾收集器管理,因此即使您找到了正确的地址,也无法保证在注入新数据时存在相同的对象。
如果您不知道这一点,垃圾收集器通常会在清理之后对堆进行碎片整理。
要解决此问题,需要确保在浏览器进程中暂停所有线程。
https://stackoverflow.com/questions/33737855
复制相似问题