问题描述
我试图编写一个汇编程序(在64位Ubuntu 20.04计算机上使用NASM),该程序执行sh命令的syscall execve。
代替打开外壳,它只是结束。
对于解决此问题,我将不胜感激。
代码如下:
global _start
_start:
mov rax,59
xor rdi,rdi
mov rdi,str1
xor rsi,rsi
mov rsi,str2
mov rdx,0xa
syscall ;execute execve syscall
mov rax,60
xor rdi,rdi
syscall ;execute exit syscall
section .data
str1: db '/bin/sh' ;string of the first argument of execve
str2: db '/bin/sh',0xa ;string array of the secand argument of execve.
我这样编译并执行asm文件:
nasm -felf64 execve_sh.nasm -o xxx.o
ld xxx.o -o zzz
./zzz
非常感谢 塔里语
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)