0
可能重複:
How to programmatically gain root privileges?要求root訪問編程
有沒有什麼辦法比Linux編程要求用戶在C盤根訪問?
我使用原始套接字,因此它需要root訪問。
可能重複:
How to programmatically gain root privileges?要求root訪問編程
有沒有什麼辦法比Linux編程要求用戶在C盤根訪問?
我使用原始套接字,因此它需要root訪問。
這種慣用的方法是讓你的程序suid-root,並且有前兩行main
打開原始套接字並刪除根目錄。
這仍然比從安全角度來看不太理想,因爲:
在程序稍後會給攻擊者訪問原始套接字,它可以用於許多惡意的目的,可能是一個妥協獲取足夠的信息來提升特權。
任何suid-root二進制文件都可能受到動態鏈接程序或啓動代碼中的漏洞(在main
之前運行)的漏洞的影響。雖然這些已經變得越來越罕見,甚至去年一次在glibc的鏈接器中使用LD_AUDIT
的東西再次被發現。出於這個原因,許多有安全意識的系統(例如Openwall Linux)完全禁止suid-root二進制文件。
一個更安全,但更復雜的方法是讓你的程序運行具有提高的(但仍然很少)權限的守護進程,並有CLI界面只是一個簡單的包裝,與守護在UNIX通信通過一個可以機械地檢查漏洞的簡單協議來實現套接字。
對不起,我找不到它。 –
7個問題,沒有[接受的答案](http://meta.stackexchange.com/questions/16721/how-does-accept-rate-work)?不好。 – glglgl