Redis未授权访问漏洞利用及防护措施(非常详细)

靶机(centos6.6):192.168.109.150       攻击机(kali-linux 2019.3):192.168.109.148

漏洞环境配置部署见:https://blog.csdn.net/qq_41210745/article/details/103305262

1.nmap存活主机扫描

 

2.发现疑似目标主机,扫描端口服务:找到目标端口6379

3.kali安装redis、并启动redis客户端连接目标主机

解压

编译

安装

启动redis客户端,无密码连接目标主机

4.redis一些基本操作

查看服务器、客户端、CPU、内存等信息

查看所有键:

删除整个redis数据库(慎重使用):

获取默认的redis目录、和rdb文件名:可在修改前先获取,离开时再恢复。

        

设置变量 x 值为 hello :

5.进行靶机攻击(三种方法)

方法一:利用redis写webshell

利用条件:

  • 在攻击机上能用redis-cli无密码成功连接
  • 目标机开启WEB服务,具有web目录下的写权限,知道路径(web路径利用phpinfo(),或报错爆路径)

设置完路径、文件名及内容后,使用浏览器访问(猜测:可能是redis版本较高原因)

注:这一步浏览器访问成功的小伙伴,希望能请教一下,谢谢!

在靶机上验证查看:写入成功!

方法二:利用crontab反弹shell

利用条件:

  • 以root权限运行时,通过写crontab来执行命令,反弹shell

开启任意监听端口:nc -nvlp 9999

redis-cli连接,执行以下命令

反弹shell成功

方法三:写ssh-keygen公钥然后使用私钥登陆

利用条件:

  • Redis服务使用root账号启动
  • 服务器开放了SSH服务,而且允许使用密钥登录,即可远程写入一个公钥,直接登录远程服务器。

生成密钥对

查看生成的密钥文件,查看公钥内容

连接redis,在靶机上保存公钥,执行命令如下:

利用公钥登录ssh

至此,登录成功!

方法四:get shell 的Python脚本(可参考以下两个链接)

https://github.com/n0b0dyCN/redis-rogue-server

https://github.com/Ridter/redis-rce

6.漏洞防护

  • 限制redis访问:修改redis.conf文件

把# bind 127.0.0.1前面的 注释#号去掉,然后把127.0.0.1改成允许访问你的redis服务器的ip地址,表示只允许该ip进行访问。这种情况下,我们在启动redis服务器的时候不能再用:redis-server

改为:redis-server path/redis.conf 即在启动的时候指定需要加载的配置文件。

  • 增加redis访问密码

在redis.conf配置文件中找到requirepass 配置项,取消#注释符,在requirepass 后面添加设置的密码。设置密码以后发现可以登陆,但是无法执行命令了。

1.启动redis客户端,并连接服务器:redis-cli -h IP地址 -p 端口号

   输出服务器中的所有key:keys *

   报错:(error) ERR operation not permitted

   使用授权命令进行授权,就不报错了:auth youpassword

2.在连接服务器的时候就可以指定登录密码,避免单独输入上面授权命令:redis-cli -h  IP地址 -p 端口号  -a  密码

3.在配置文件redis.conf中配置验证密码以外,也可以在已经启动的redis服务器通过命令行设置密码,但这种方式是临时的,当服务器重启了后,密码必须重设。命令行设置密码方式:config set requirepass 你的密码

4.不知道当前redis服务器是否有设置验证密码,或者忘记密码,可以通过命令行输入命令查看密码:config get requirepass

5.如果redis服务端没有配置密码,会得到nil,而如果配置了密码,但是redis客户端连接redis服务端时,没有用密码登录验证,会提示:operation not permitted,这时候可以用命令:auth yourpassword 进行验证密码,再执行 config set requirepass,就会显示yourpassword

  • 修改默认端口:修改redis.conf文件

修改默认端口 port 6379    (注意:尽量不要和其他服务端口号冲突,改成一些少用或不常见的端口号即可)

发布了103 篇原创文章 · 获赞 26 · 访问量 6164

猜你喜欢

转载自blog.csdn.net/qq_41210745/article/details/103309137