Redis未授权访问

Redis简介

Redis(Remote Dictionary Service远程字典服务)是开源非关系型数据库,数据都是以键值对(KV)的方式存储的

  • Redis的优点:
    数据类型丰富,应用场景广泛
    纯内存的数据结构,读写速度快
    功能特性丰富(持久化、事务、pipeline、多语言支持、集群分布式)

Redis值(V)的数据类型

  • String:字符和整形
    缓存、分布式session、分布式锁、分布式、全局ID、计数器、限流
  • Hash:哈希表
    存储一个对象、存储一张表的数据、购物车
  • List:有序数组
    消息列表、文章列表、评论列表、公告列表、活动列表
  • Set:无序集合
    抽奖、点赞、签到打卡、商品标签
  • ZSet:有序集合
    排行榜

Redis持久化机制

将内存中的Redis数据存储到磁盘的过程

  • RDB(Redis DataBase)默认
    配置文件redis.conf设置自动保存:
    save 3600 1#一个小时内至少一个key的修改就保存
    dbfilename dump.rdb #保存文件名dump.rdb
    dir ./ #存储路径为当前目录
    手动保存命令:
    客户端执行save(阻塞状态)或bgsave(短暂的阻塞)
  • AOF(Append Only File)

Redis动态修改配置

客户端内config set动态修改配置,重启后生效

  • config set dir /var/www/
    指定数据文件保存位置/var/www/
  • config set dbfilename redis.php
    指定存储的数据文件名redis.php
  • set key “<?php…>”
    存储键名为key,键值为php代码的数据
  • save
    保存数据到/var/www/redis.php

Redis服务器被挖矿案例

  • 云服务器Redis配置:
    protected-mode no
    # bind 127.0.0.1
    开放端口6379
  • 恶意代码的操作:
    拿到服务器root权限
    替换一些命令,删除一些文件
    扫描端口,干掉其他挖矿程序
    下载恶意脚本执行
    生成SSH文件,实现免密登录

Redis漏洞环境准备

  • 攻击机 IP:192.168.37.129
    安装Redis
  • Redis服务端主机 IP:192.168.37.132
    root用户安装Redis
    关闭保护模式 protected-mode no
    取消IP绑定#bind 127.0.0.1 -::1
    开放6379端口或关闭防火墙

Redis写入webshell(服务端有web环境)

攻击机连接服务端主机:redis-cli -h 192.168.37.132 -p 6379,修改Redis配置写入木马
在这里插入图片描述
蚁剑连接redis.php,进入服务端主机终端
在这里插入图片描述

定时任务+反弹连接

定时任务介绍

定时任务常用命令:

命令操作
crontab -u root -r删除某个用户的任务
crontab -u root time.cron把文件添加到某个用户的任务
crontab -u root -l列举某个用户的任务
crontab -u root -e编辑某个用户的任务

定时任务存储路径:

路径内容
/var/spool/cron存放用户的定时任务
/etc/crontab放的是对应周期的任务、dalily、hourly、monthly、weekly

Redis写入反弹连接定时任务

攻击机开启监听7777端口
在这里插入图片描述
攻击机连接Redis服务端rcli,写入定时任务bash反弹连接
在这里插入图片描述
Redis服务端查看目录下的定时任务,发现成功写入
在这里插入图片描述
攻击机连接到Redis服务端的shell
在这里插入图片描述

SSH key免密登录

免密登录流程:

  • 客户端生成密钥对(公钥、私钥)
  • 客户端把公钥发给服务端保存(认证过一次后不需要密码)
  • 客户端用私钥加密消息,发给服务端
  • 服务端用公钥解密,解密成功说明密钥匹配
  • 客户端免密登录成功

生成无密码的ssh密钥对(私钥加密,公钥解密)
在这里插入图片描述
将攻击机的公钥头和尾加两个换行符,写入服务端的.ssh文件夹下
在这里插入图片描述
攻击机成功登录服务端
在这里插入图片描述

Redis加固方案

1.限制访问IP
2.修改默认端口
3.使用密码访问
4.不要用root运行Redis

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值