Linux
非 root 程序不能執行哪些操作?
顯然,它不能讀取它沒有權限的文件。但我說的是其他“動作”,我知道它們綁定到編號低於 1024 的埠。還有什麼?
非特權程序不能做很多事情;在 Linux 上,
man 7 capabilities
包含一個完整的列表。您的兩個之外的範例包括:
- 控制審計;
- 設置 BPF;
- 將文件所有權更改為任意值;
- 打開原始套接字;
- 更改為任意使用者和組;
- 設置任意命名空間;
- 載入或解除安裝核心模組;
- 重新啟動。
請注意,在 Linux 上,所有這些不僅由 控制
root
,還由功能控制,因此這些權限的子集可以授予非root
程序。還有其他機制可以請求特權程序代表非特權使用者執行特權操作(例如重新啟動)。