首页
社区
课程
招聘
[求助]现需要在一款exe程序上用汇编做二次开发,遇到问题
发表于: 2008-2-8 16:56 7766

[求助]现需要在一款exe程序上用汇编做二次开发,遇到问题

2008-2-8 16:56
7766
在软件初始化运行的时候,删除当前目录下的一些文件,但是软件本身并没调用deletefile 函数
那我们应该怎么反汇编来添加函数并实现呢?

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 161
活跃值: (231)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
写一个DLL,在DLL中实现删除文件功能,用PE编辑工具把这个DLL加入EXE主文件中。我一般修改文件就是这样做的,你还可以直接在EXE文件中找空档直接写汇编代码来实现,但这样太麻烦。
2008-2-8 17:39
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
我想考虑直接用汇编在程序空白代码部分实现,不知能否赐教一二
万分感谢
2008-2-8 18:53
0
雪    币: 485
活跃值: (12)
能力值: ( LV9,RANK:490 )
在线值:
发帖
回帖
粉丝
4
完全可以,我支持你
2008-2-8 20:29
0
雪    币: 325
活跃值: (97)
能力值: ( LV13,RANK:530 )
在线值:
发帖
回帖
粉丝
5
楼主弄完了 一定要跟小弟分享一下 ExeToAsm的教程哦 如果用IDA的话 ,希望LZ讲解一下如何整理IDA的错误识别 等等 以便重编译。
2008-2-9 03:58
0
雪    币: 239
活跃值: (10)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
6
做个LPK插进去玩
2008-2-9 15:08
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
弄完工了沒有?
2008-2-9 16:00
0
雪    币: 383
活跃值: (41)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
8
搜索kernel32基址-->定位到kernel32基址搜索LoadLibrary,GetProcAddress-->用搜索到的这两个函数获取DeleteFile()---调用DeleteFile()函数删除文件

我知道这样可以实现,但我没有做过
2008-2-10 17:43
0
雪    币: 433
活跃值: (176)
能力值: ( LV13,RANK:1250 )
在线值:
发帖
回帖
粉丝
9
获取kernel32.dll等系统库的基地址应该不难,有多种方法,我所知道的就有页面搜索法(罗云彬)、PEB法等等。
获得了这些库的句柄以后当然可以进一步查找GetProcAddress之类的函数等等,但不如直接嵌入具有GetProcAddress功能的代码来得快捷。
下面这个贴的5楼你可以参考,就是完成GetProcAddress功能的,稍微转换一下就能在调试器中直接写了
http://bbs.pediy.com/showthread.php?t=43874
2008-2-10 22:00
0
雪    币: 266
活跃值: (52)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
10
最简单的方法:用LordPE对这个exe文件引入DeleteFile函数,然后就可以调用了
2008-2-10 22:13
0
游客
登录 | 注册 方可回帖
返回
//