【问题标题】:How to set permission in sys_create如何在 sys_create 中设置权限
【发布时间】:2015-04-02 03:33:40
【问题描述】:

在linux中我想使用sys_create创建一个简单的abc.txt文件,但是当我设置权限时,输出文件获得了错误的权限。

这是我的代码:

Section   .text
global _start

_start:
mov eax, 8
jmp short GoToCall
shellcode:
pop ebx
mov ecx, 544
int 0x80

mov ebx,0
mov eax,1
int 0x80


GoToCall:
call shellcode
db 'abc.txt',0

当我执行上面的代码时,abc.txt 获得了这个权限:

----r---T

我不想使用标志等,因为我想将此汇编代码用作 shellcode。

【问题讨论】:

    标签: linux assembly x86 system-calls


    【解决方案1】:

    544 是十进制的。我假设您想要八进制,所以要么将其转换为十进制,要么使用适合您的汇编程序的格式。不幸的是,您忘记提及您使用的是哪一个,但例如在nasm 中您可以写544o 来获得-r-xr--r--(您也忘记提及您想要设置的权限)。

    【讨论】:

      猜你喜欢
      • 2015-08-26
      • 2016-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-02
      • 2020-12-05
      • 2011-08-30
      相关资源
      最近更新 更多