如何使用汇编语言访问WINDOWS中另一个程序的内存数据?

流水之风 2002-12-31 08:38:29
如果WINDOWS当前运行一个WINDOWS程序A,要使用汇编语言访问该程序A中的变量B,并且修改变量B的值,如何编写该汇编程序?请给出程序源代码,最好能适当加入注释。
...全文
165 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
紫郢剑侠 2003-02-10
  • 打赏
  • 举报
回复
up
流水之风 2003-02-06
  • 打赏
  • 举报
回复
vBin(彬) :
您好,请问您的网站网址是什么?
vBin 2003-02-05
  • 打赏
  • 举报
回复
我的网站有一篇原创文章
简单的写啦,程序A如何往程序B写内容。
利用的就是WriteProcessMemory

文章名:让注册软件自己说出注册码
idAnts 2003-02-05
  • 打赏
  • 举报
回复
不要什么ring0,writeprocessmemory和readprocessmemory就足够了!也不要什么hook之类的东西!
cupidvenus 2003-02-05
  • 打赏
  • 举报
回复
需要Ring0级,可参考CIH的代码
cuiyuting 2003-02-05
  • 打赏
  • 举报
回复
ring0的那个方法只在win95/98/me下面有效
nt/2000/xp下面很难得到
wowocock 2003-02-04
  • 打赏
  • 举报
回复
直接进RING0去HOOK,无所不能。
cuiyuting 2003-02-04
  • 打赏
  • 举报
回复
hook进去的要求对方必须使用user32.dll,否则绝对不可能。
liuhaochuan 2003-02-04
  • 打赏
  • 举报
回复
HOOK进去最简单了,因为你的DLL是被注入了目标进程的内存空间中,所以可以直接访问目标变量,不需要任何函数,一根指针就搞顶了。
EXP:目标进程A,变量B位于0x41234567

DWORD *p;
p = (DWORD*)0x41234567;
*p就是你想要的东西了,想怎么改都可以。
LeLeGhost 2003-02-04
  • 打赏
  • 举报
回复
用invoke SendMessage,hWndReceiver,WM_COPYDATA,hWndSender,ADDR CDS
hWndSender发送数据者
hWndReceiver接收者,可用invoke FindWindow,NULL,ADDR lpWindowName得到。
CDS是:COPYDATASTRUCT
即,
typedef struct tagCOPYDATASTRUCT{
ULONG_PTR dwData;
DWORD cbData;
PVOID lpData;
}COPYDATASTRUCT;

其中dwData是备用项可是任何值。cbData发送的数据大小,lpData是发送数据的指针。


E-mail:LeLeGhost@yahoo.com.cn
wowocock 2003-01-31
  • 打赏
  • 举报
回复
先获得所要修改进程句柄,然后利用writeprocessmemory和readprocessmemory进行修改。
liuhaochuan 2003-01-31
  • 打赏
  • 举报
回复
可以HOOK进入对方进程空间执行自己的代码
webhua 2003-01-15
  • 打赏
  • 举报
回复
可已利用象金山游侠一样的方法
wylpro 2003-01-07
  • 打赏
  • 举报
回复
最好是用动态加载的VXD。调试器都是这样的。也可以学学FPE2000/整人专家的方法的方法。
sum_1 2003-01-04
  • 打赏
  • 举报
回复
writeprocessmemory和readprocessmemory能访问另一个进程的私有空间吗????
yansea 2003-01-02
  • 打赏
  • 举报
回复
用writeprocessmemory和readprocessmemory,没那么麻烦的。
看看资料吧,这两个函数很easy的。
我到是用delphi写过一个修改其他程序内存的例子,不过很不完善,用asm吗,还没学好呢。
sum_1 2003-01-02
  • 打赏
  • 举报
回复
把你在A程序中要和B程序共享的数据声明为共享数据段(也就是把它映射到2G以上的线性地址空间中去,这段区域是所有进程共享的)
你用什么语言,是ASM吗?
ijk1981 2003-01-02
  • 打赏
  • 举报
回复
如果进了ring0的话就能为所欲为了。
platinum309 2003-01-01
  • 打赏
  • 举报
回复
不过到是有办法修改自身程序的代码段的代码
hgc2002 2003-01-01
  • 打赏
  • 举报
回复
win32
保护模式
当然不可以了,不然还谈什么安全呀
加载更多回复(1)

21,453

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧