1.創建文件1.txt,屬于root用戶,root組,權限為700
2.創建程序文件
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <fcntl.h>
#define BUFFSIZE 10
int main()
{
int fd;
char buf[BUFFSIZE];
fd = open("1.txt", O_RDWR);
if(fd < 0)
{
perror("1.txt");
return 1;
}
if(read(fd, buf, 10) < 0)
{
perror("1.txt");
return 1;
}
//打印進程uid,有效uid
printf("%d %d %s\n", getuid(), geteuid(), buf);
exit(1);
}
編譯成a.out二進制文件
3.二進制文件a.out權限修改為4770,用戶屬于root,組為當前用戶所在組,執行./a.out可以執行成功,因為進程有效用戶已經為root
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。