使用原始套接字的程式需 root 權限,但程式運行中無法提權。編譯後以 root 身分執行 chmod u+s 可執行檔 設定 SUID 位元,程式即可在普通用戶執行時自動獲得 root 有效 UID,無需 sudo 或切換 root。
gcc ...)。chmod u+s 可執行檔案名稱 設定 SUID 位元。
此後普通用戶直接執行該程式即具備 root 權限(同 ping 機制)。注意:程式碼中應在建立原始套接字後呼叫 setuid(getuid()) 降權,遵循最小權限原則。