0x00 靶机安装

访问下载靶机镜像,解压使用虚拟机打开,网络选择NAT模式

0x01 信息搜集

使用netdiscover探测存活主机

netdiscover

1.png

确认靶机地址192.168.92.137

用Nmap探测靶机开放的端口及服务

nmap -sV -O 192.168.92.137

2.png

系统为Linux,并且开放了80、139、445、8000端口,存在http和smb服务。

访问80端口:

3.png

扫描web路径:

4.png

逐一访问,并没有什么发现

访问8000端口,发现作者信息:Koken

5.png

扫描web路径,发现后台地址:

6.png

访问后台,登录需要邮箱以及密码

7.png

0x02 漏洞利用

暂时没有其他突破口,不过主机开启了smb服务,使用enum4linux进行探测

enum4linux 192.168.92.137

发现用户名及密码为空,并且存在共享路径sambashare

8.png

9.png

直接挂载访问//192.168.92.137/sambashare,发现两个文件

10.png

mailsent.txt:

11.png

获取到关键信息邮箱,最后一行的信息应该指的是后台密码

最终使用daisa@photographer.com/babygirl成功登录后台

12.png

在右下角的Import content按钮处发现上传功能点,简单尝试后发现使用的是前端校验,可以直接抓包改后缀绕过。

13.png

14.png

将一句话木马改为jpg后缀,上传抓包

将请求包中两处后缀改回php

15.png

16.png

放包,上传成功

17.png

在burp历史请求中可以看到文件的相对路径

18.png

蚁剑连接成功

19.png

0x03 提权

使用蚁剑虚拟终端查看权限为www-data低权限

20.png

提权需要使用可交互shell,更改源码为监听的ip及地址

21.png

同样的方法上传shell文件至靶机

配置监听

nc -l 1234

访问shell文件,获取到反弹shell
http://192.168.92.137/storage/originals/45/5d/s-pic.php

22.png

使用python建立可交互shell环境:

python3 -c 'import pty;pty.spawn("/bin/bash")'

23.png

使用suid提权

查找使用root权限运行的文件

find / -user root -perm -4000 -print 2>/dev/null

24.png

使用php7.2进行提权

25.png

查看权限

26.png