首页
社区
课程
招聘
[求助]汇编修改exe插入自己代码的问题
发表于: 2018-9-7 02:48 7256

[求助]汇编修改exe插入自己代码的问题

2018-9-7 02:48
7256
各位前辈好,我想在exe文件插入一段调用MessageBox的汇编代码,通过实验在32位XP系统下成功了,在64位Windows10系统执行却出错了,调试发现在Windows10运行时的基址和XP运行时的基址不一样。
//部分插入代码
push 0
push 00412345    //假设这个地址是自己增加的文本内容的地址,32位xp系统运行正常,Windows10这个地址变得很大。
push 00412349    //假设这个地址是自己增加的文本内容的地址,32位xp系统运行正常,Windows10这个地址变得很大。
push 0
call dword ptr ds:[0x4A1234]    // call dword ptr ds:[<&USER32.MessageBoxA>] 调用系统API

//以上代码在几台32位xp系统的机器上能正常运行,可到了Windows10就运行出错,系统API地址会变,地址变得很大。
如何获得输入表、数据表首地址,新手求指教,谢谢。

[课程]FART 脱壳王!加量不加价!FART作者讲授!

最后于 2018-9-7 03:08 被欧阳休编辑 ,原因:
收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 6542
活跃值: (3812)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
问的问题是 新手中的新手。
2018-9-7 04:05
0
雪    币: 2056
活跃值: (1471)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
手动插入代码 。必须 处理 重定位 问题。 最好用 代码自己获取  api地址,并 计算 文本 偏移量。
2018-9-7 07:52
0
雪    币: 119
活跃值: (298)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
用ShellCode思路获取所需的API地址 (注意字符处理)  
2018-9-7 07:59
0
雪    币: 707
活跃值: (1301)
能力值: ( LV9,RANK:190 )
在线值:
发帖
回帖
粉丝
5
重定位一下就行啦
2018-9-7 09:13
0
雪    币: 488
活跃值: (3149)
能力值: ( LV7,RANK:140 )
在线值:
发帖
回帖
粉丝
6
各系统的USER32等dll加载的位置都可能不一样。如果想做到全系统覆盖的话,似乎还挺复杂。
考虑一下_readfsdword(0x30)获取kernel32,遍历导出表获取GetProcAddress和LoadLibrary,剩下的就全有了
2018-9-7 10:47
0
雪    币:
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
请看这本书:0day安全:软件漏洞分析技术 第2版
2018-9-7 11:35
0
雪    币: 781
活跃值: (1116)
能力值: ( LV5,RANK:78 )
在线值:
发帖
回帖
粉丝
8
 call  @base
@base:
 pop eax
 add eax,xxx

以地址加偏移模式.
2018-9-7 11:51
0
雪    币: 12
活跃值: (388)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
shellcode了解一下
2018-9-7 12:13
0
雪    币: 3794
活跃值: (1862)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
多谢各位指点,谢谢~~~
最后于 2018-9-13 00:32 被欧阳休编辑 ,原因:
2018-9-13 00:32
0
雪    币: 8635
活跃值: (4825)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
jgs
11
跟随楼主一起学习了
2018-9-13 07:38
0
游客
登录 | 注册 方可回帖
返回
//