如何修改eax的字符串?
本帖最后由 wlsk888 于 2022-3-17 15:15 编辑如上图,某软件运行到此处,eax为一个md5,我想让软件每次运行到这里就替换成另外一个md5
我以前的方法是在软件内存空闲处写上字符串,然后修改指向我新的字符串。。
但是现在我希望能实现每次运行到这里弹出输入框或者读取某个文件里的字符串来进行修改,
汇编代码我并不熟悉,哪位大佬能提供完成我要的功能的汇编语句?
简单点说,我需要一段汇编,功能过程如下:
1:运行到013058dc处跳转某一地址,比如01400000处
2:1400000处写入汇编!
弹出一个输入框或打开一个文本文件,输入或读入我要修改的字符串
然后把输入或读入的字符串地址给eax,并push
最后retn返回013058dc处继续
input的api我没有找到。。。
或者大佬们有其他方法,写个内存中断然后修改的小程序当然可以,但我懒得写,毕竟多个外部程序了。。。
新手小白,感谢大佬指教!
软件readfile调用地址在下图
那你可以找个空白的地址xxx写上你需要的字符串,然后pash eax上面一起3行代码直接修改成push xxx就行。 Hmily 发表于 2022-3-17 14:56
那你可以找个空白的地址xxx写上你需要的字符串,然后pash eax上面一起3行代码直接修改成push xxx就行。
这个我知道,我想的是修改的字符串不一定长期可用啊。。。 wlsk888 发表于 2022-3-17 14:57
这个我知道,我想的是修改的字符串不一定长期可用啊。。。
hook api然后触发执行?执行后自己恢复修改。 Hmily 发表于 2022-3-17 15:02
hook api然后触发执行?执行后自己恢复修改。
这个hook api指的是软件内部添加汇编还是自己写个中断修改程序?我一点不想写个外部的。。。 wlsk888 发表于 2022-3-17 15:05
这个hook api指的是软件内部添加汇编还是自己写个中断修改程序?我一点不想写个外部的。。。
不写外部自己把call api改成call 你想要的地址,这个api就是你想要的读取文件之类的,你在这个call里完成对eax的修改,修改代码执行后可以选择恢复代码,反之直接搞写汇编代码判断很麻烦,最好还是自己搞个程序去弄。 Hmily 发表于 2022-3-17 15:07
不写外部自己把call api改成call 你想要的地址,这个api就是你想要的读取文件之类的,你在这个call里完成 ...
哎,暂时先固定吧,今天实在懒得写程序。。。谢谢大佬指教 我觉得吧,辛辛苦苦去汇编构造一个输入框,还不如简单点直接注入一个dll? 在自己的dll里面,你想咋写都行 可以可以不错
页:
[1]