[英]How to run Sudo code without password in mac
我想在終端中運行“ sudo rm ing / tmp / instruments_sock”。 我正在通過使用robotil jar的代碼來執行此操作。 但是我無法輸入密碼。 有什么辦法可以運行此命令而無需在Mac中輸入密碼!! 我只想刪除此命令的密碼。
如果要執行沒有密碼的單個特權任務,最好的方法可能是使用setuid二進制文件。
簡而言之,您可以創建一個小型程序,它可以滿足您的需求。 然后,您可以通過將程序的所有者設置為root並啟用setuid位來賦予程序root特權。
一個非常重要的警告 :不要只在setuid二進制文件中調用system("rm /tmp/something")
! 那是一個經典的安全漏洞。 不干凈的環境變量(例如PATH)會劫持該命令。 上面的Wikipedia鏈接中有安全問題的簡短介紹。
最簡單,最安全的方法不是使用system(),而是使用該語言自己的文件處理庫。 如果您不確定自己在做什么,請避免從二進制文件中運行Shell命令。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.