Ssh

在不執行 bash_profile 或 bashrc 的情況下登錄

  • October 28, 2021

因此,假設有人在其中輸入了一些內容以**.bashrc**阻止他(或她)通過登錄ssh(即 ssh 登錄由於文件中的錯誤而退出)。有沒有什麼方法可以讓這個人在不執行它的情況下登錄(或者.bashrc因為一個執行另一個),或者以其他方式刪除/重命名/使文件無效?

假設您沒有對機器的物理訪問權限,並且這是唯一能夠 ssh 進入的使用者帳戶。

供參考:.bash_profile包括.bashrc

[[ -f ~/.bashrc ]] && . ~/.bashrc

編輯:我嘗試過的事情:

ssh user@host "rm ~/.bashrc"

scp nothing user@host:/RAID/home/tom/.bashrc

ssh user@host  "/bin/bash --norc"

都給出錯誤:

/RAID/home/tom/.bashrc: line 16: /usr/local/bin/file: No such file or directory
/RAID/home/tom/.bashrc: line 16: exec: /usr/local/bin/file: cannot execute: No such file or directory

我認為你唯一的選擇是:

  • 以另一個使用者的身份 ssh 並 su 到您的帳戶;
  • 如果主機上啟用了相關服務,則使用 ftp 或 smbclient 之類的東西;
  • 在開放的網路服務中找到一個開放的漏洞並利用它:)。
  • 讓管理員解決問題。

ssh -t username@hostname /bin/sh為我工作。

引用自:https://serverfault.com/questions/94503