Security

如何在 *nix 系統上解除安裝“ps”(程序狀態)實用程序?

  • October 20, 2022

我聽說ps(程序狀態)可以儲存使用者的命令歷史記錄,就像 shell 歷史記錄一樣。

資料來源:對 StackOverflow 的評論

請注意,如果目標是在命令行參數中隱藏密碼,它們仍然可以通過 ps 看到 – Benitok 2019 年 4 月 27 日 3:50

這似乎是一個安全風險。

問題:

  • 是否可以清除ps歷史記錄,如何清除?

或者,如果這不可能,

  • 如何解除安裝、刪除或禁用該ps實用程序?

ps不儲存任何東西,但它確實允許您查看系統上所有正在執行的程序,這些程序可以被儲存。刪除該ps實用程序並不能解決問題,因為數據仍然可以從核心到使用者空間。

在 Linux 上,此資訊是通過虛擬 /proc 文件系統提供的,該文件系統有一個名為的選項hidepid,可讓您阻止使用者看到不屬於他們的程序。使用 hidepid=2 掛載將允許使用者仍然使用ps,但他們將無法看到除自己之外的任何程序。

有關更多詳細資訊,請參見此處:

https://linux-audit.com/linux-system-hardening-adding-hidepid-to-proc/

NetBSD 有一個名為 的選項security.curtain,它具有類似的效果。在 freebsd 上,可調參數稱為security.bsd.see_other_uids.

至於安全隱患。Unix 上的開發人員被教導不要在程序命令行參數中編碼敏感資訊,因為它們可以被其他人看到。然而,隱藏所有這些資訊可能很煩人,尤其是在資源有限且多個使用者無法檢查誰和什麼正在使用所有 cpu/記憶體的系統上。如果您沿著這條路線走,您可能希望為每個使用者創建“臨時”目錄,因為這也可以公開資訊。

(好聽的使用者名)

引用自:https://unix.stackexchange.com/questions/721684