为什么在win7下手动修改exe加shelcode失败??l
需求:通过在一个EXE文件的代码节空白区手动添加一段shellcode,功能就是弹出一个MessageBox.MessageBox的VritaualAddress是:0x76b5EA99
在文件偏移为0x1ACC0的地方加入如下shellcode:
6a 00 6a 00 6a 00 6a 00e8 CC 31 B4 72 e9 0e 66 fe ff
翻译成汇编就是:
push 0
push 0
push 0
push 0
Call 0x72b431cc(MessageBox的地址)
jmp 0xfffe660e(程序原始入口点RVA)
代码节的起始RWA:0x400
代码节的起始RVA:0x1000
程序入口RVA:0x1ee0
程序基地址(ImageBase):0x4000000
可是为什么修改完后不能运行,用DTDugd调试打开可以正常运行。在XP系统下用这样的方法也是直接成功了。是不是WIN7加入了什么特别的安全机制?跪求大神解答。 可能是你的那个MessageBox的入口地址不对,我遇到过。我当时是编写了一个调用messageBox的例子,然后编译,使用第三方软件比如odllydbg软件调试找到的地址才成功
页:
[1]