簡體   English   中英

我可以在沒有sudo的情況下運行包含setuid()的C程序嗎?

[英]Can I run a C program containing setuid() without sudo?

我試圖從多個用戶執行一個C程序,並嘗試以程序中的其他用戶身份登錄以訪問文件。 但我收到了錯誤

setuid:不允許操作

我可以做一些我不需要每次都使用sudo的東西嗎? 比如,在沒有每次調用sudo的情況下完全訪問程序以使用setuid

根據系統及其中的權限,您可以將程序的所有者或組更改為具有setuid權限的程序,然后通過chmod在可執行文件上設置setuidsetgid模式:

chgrp wheel my-awesome-program
chmod g+s my-awesome-program

要么

chown superduperuser my-awesome-program
chmod u+s my-awesome-program

請注意,通過這樣做,您可以創建一個潛在的安全漏洞。 如果有人可以覆蓋您的程序,他們可以使用它來獲取權限。 謹慎行事。

你只需要使用chmod在程序的可執行文件上使用setuid

sudo chmod u+s executable

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM