Mac-Osx
在 Mac OS X 上啟用不帶 sudo 的 dtrace?
如何使使用者能夠在 Mac OS X 上使用 dtrace。我正在嘗試在 Linux 上執行與 strace 等效的操作,但我不喜歡以提升的權限執行應用程序。
更新
好的,我能說的最好的。防止惡意應用程序通過調試破壞系統的唯一方法是。
- 在單獨的控制台中附加到程序
- 使用 sudo 兩次
以便:
sudo dtruss sudo -u myusername potentially_harmful_app
我用這個簡短的程序驗證了這一點:
#include <iostream> #include <unistd.h> int main() { std::cout << "effective euid " << geteuid() << "\n"; }
有關更多資訊,請參閱此討論:
請看我上面的更新。這是一個糟糕的安全漏洞,如果我見過的話。dtruss 的正確實現應該放棄它呼叫的任何程序的特權。在一個系統上擁有多個使用者,其中一個必然會搞砸這一切,並允許編寫糟糕的程序破壞事物。
chmod 4755 dtrace 作為根
任何時候你執行程序都會以root權限執行