作为一个学习项目,我想从here转换32位Execve脚本,因此它适用于64位。但是当我尝试执行它时,我遇到了分段错误。我通过GDB介绍了它并找到了问题说明。我目前的代码如下:
.section __DATA,__data
.section __TEXT,__text
.globl _main
_main:
xor %rax, %rax
push %rax
push $0x68732f6e
push $0x69622f2f
mov %rbx, %rsp
===>push %rax ;this is where the error occurs
mov %rdx, %rsp
push %rbx
mov %rcx, %rsp
mov %al, 11
int $0x80