3xsh0re 发表于 2023-11-30 13:59

阅读《0Day安全2》栈溢出代码植入部分在Win10环境下无法执行栈区指令

本帖最后由 3xsh0re 于 2023-12-3 14:15 编辑

本人是逆向新手一枚,目前在看《0Day软件安全这本书第二版》这本书,关于其中第二章栈溢出,代码植入部分,这本书很老了而且是32位的平台。想在x86-64平台下实现,但是发现,植入代码时,虽然能够跳转到shellcode的地方,但是不能正常执行,会直接爆出地址不可访问异常,搜了网上的办法,在Windows系统设置里关掉了编译出来的exe文件的DEP,但是好像还是不太行。下面是我栈溢出覆盖地址后即将跳转的位置:

下面这张图是我shellcode加载到的位置,

无法继续向下调试,会报错


实在不知道怎么办,也不知道到底能不能行的通,所以来问问大佬们

IBinary 发表于 2023-11-30 17:18

看看溢出到的那块地址内存属于PE中的那块内存. 内存属性有没有 可读可执行权限.为了方便改成可读可写可执行也可以.

Alt+E 看看这块内存的属性.有没有可执行权限.R = 读取 W = 写入E = 可执行.

bester 发表于 2023-11-30 18:27

不是写了嘛 违反dep

3xsh0re 发表于 2023-12-1 14:09

IBinary 发表于 2023-11-30 17:18
看看溢出到的那块地址内存属于PE中的那块内存. 内存属性有没有 可读可执行权限.为了方便改成可读可写可执 ...

感谢大佬,在x64dbg里改内存权限就可以了,之前不知道可以这样,太感谢了{:1_893:}
页: [1]
查看完整版本: 阅读《0Day安全2》栈溢出代码植入部分在Win10环境下无法执行栈区指令