本环境为黑盒测试,在不提供虚拟机帐号密码的情况下进行黑盒测试拿到域控里面的flag。
内网网段:192.168.93.0/24
外网网段:192.168.1.0/24
攻击机:
kali:192.168.1.10
靶场:
CentOS(内):192.168.93.100
CentOS(外):192.168.1.110
Ubuntu:192.168.93.120
域内主机:
Winserver2012:192.168.93.10
Winserver2008:192.168.93.20
Windows7:192.168.93.30
其中CentOS可以外网、内网通信,域内主机只能内网之间进行通信
kali跟CentOS能够ping通
![
](image-20210703212359897.png)
拓扑图如下:
nmap先探测一下出网机即CentOS的端口情况。可以看到开了22、80、3306端口,初步判断开了web,ssh,数据库应该为MySQL
nmap -T4 -sC -sV 192.168.1.110
这里首先访问下80端口,发现为joomla框架,joomla框架在3.4.6及以下版本是有一个远程rce漏洞的,这里先使用exp直接去打一下
这里看到exp打过去不能够利用那么应该是joomla的版本比较高
这里使用端口扫描软件扫一下后台的文件发现一个管理员的界面
是joomla的后台登录界面,这里尝试使用bp弱口令爆破了一下,无果,只好放弃
这里使用dirsearch进一步进行扫描,发现了一个configuration.php
看一下这个php的内容发现有一个user跟password,联想到开了3306这个端口,猜测这可能是管理员备份的数据库密码忘记删除了
这里使用navicat尝试连接一下靶机的数据库
可以看到连接成功了
然后就是翻数据找管理员的帐号了,找管理员帐号肯定是找带有user字段跟password字段的,这里我找了一段时间,最后发现umnbt_users
这个表跟管理员帐号最相似,但是这里出现了一个问题,我发现password
这个地方的密码不是明文
这里试着把密文拿去解密发现解密失败
在搜索的时候发现joomla官网虽然没有直接公布密码的加密方式,但是它为了防止用户忘记密码增加了一个添加超级管理员用户的方式,就是通过登录数据库执行sql语句达到新建超级管理员的效果
这里我们可以发现sql语句中的VALUES
中的第三项为密文,这里我们为了方便就是用他给我们的这一串密文,这里对应的密码为secret
,当然也可以用其他对应的密文如下所示
在navicat中执行sql语句,注意这里要分开执行两个INSERT INTO
否则回报错,这里相当于我们添加了一个admin2 secret
这个新的超级管理员用户
使用admin2 secret
登录joomla后台
登录成功,进入后台后的操作一般都是找可以上传文件的地方上传图片马或者找一个能够写入sql语句的地方
这里经过谷歌后发现,joomla的后台有一个模板的编辑处可以写入文件,这里找到Extensions->Template->Templates
这里选择Beez3
这个模板进入编辑
这里因为模板前面有<?php
前缀,所以这里我们需要将一句话木马稍微变形一下,然后保存即可
这里使用蚁剑连接成功