Ssh

如果你通過 SSH 連接到另一台電腦,如何訪問其他 X 顯示器?

  • December 7, 2011

這是一個基於個人使用的查詢。我們本地網路中的一個巨魔下載了關鍵事件模擬器Crikey。他用它來模擬其他電腦上的事件,從而導致不需要的東西。例如,一個人正在玩流行的 FPS Urban Terror。攻擊者使用 Crikey 更改玩家的暱稱 ( /nick trollface)。據我們所知,攻擊者 ssh 進入我們的電腦,然後以某種方式切換 X 視窗,並模仿我們的事件。我想知道是否有人知道他是如何切換 X Windows 並做到這一點的。

這不應該是可能的;要麼您正在執行某些軟體的易受攻擊版本,要麼您配置錯誤。

在正常配置下,連接到 X 伺服器需要一種稱為“X cookie”的密碼。cookie 在 X 伺服器啟動時隨機生成並儲存在一個文件中。正常情況下,只有啟動 X 伺服器的使用者才能讀取該文件,其他使用者無法獲取該 cookie。有關如何在 cookie 的位置不是很明顯時訪問 X 顯示的詳細說明,例如通過 SSH 連接訪問遠端電腦的顯示時,請參閱在遠端 X 顯示上打開一個視窗(為什麼“無法打開顯示”)?另請參閱有沒有辦法在桌面上與某人交流?我可以在另一個使用者的桌面上以 root 身份啟動圖形程序嗎?關於訪問另一個使用者的 X 顯示器。

請注意,Crikey 在這裡沒有錯。無論如何,Crikey 都不是攻擊程序。本質上,Crikey 寫入文件,如果該文件沒有足夠嚴格的權限,這不是 Crikey 的錯。

可能的攻擊途徑包括:

  • X cookie 儲存在權限限制不足的文件中。檢查~/.Xauthority或的權限$XAUTHORITY;如果除所有者之外的任何人都可以讀取此文件,則說明配置錯誤。
  • X cookie 通過網路以明文形式傳輸。使用 SSH。
  • X cookie 以明文形式提供,因為它們儲存在 NFS 文件系統上,任何對網路具有物理訪問權限的人都可以掛載該文件系統。如果您不信任對網路上的電腦具有 root 訪問權限的所有使用者,請不要使用 NFS(至少不是這種方式)。
  • 目標使用者跑了xhost +。不要那樣做。

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