LiveOverflow |binary exploitation|protostar stack5
illegal instruction原因
在gdb中执行shellcode成功但命令行一直提示非法指令,主要原因其实就是视频所讲的,环境变量不同,./stack5和/opt/protostar/bin/stack5会因为环境变量不同而内存中发送偏移。
我和视频中一样选择了nop来避免这个原因,但是发现还是illegal instruction,在视频底下评论找见了一样的失败结果,他建议讲视频的+30,更改为+0x30,视频加的是DEC的30,不是HEX30,导致虽然稍微偏移了地址但是不够转移到nop指令,具体可见下图。